{"version":3,"file":"shared-lib.7ELSQka6.mjs","names":["useState","__esmMin","init_npm_react_18_3_1","_e","p","c","init_jsx_runtime","init_framer_BL70qLPA","ControlType","addPropertyControls","Demo","muted","setMuted","name","init_Demo"],"sources":["https:/framerusercontent.com/modules/2YUJ6zNvnSc3iJtisHK0/psXuvx9eDuTVWzhw9t1t/Demo.js"],"sourcesContent":["// demo v6\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState}from\"react\";// ponytail: fixed height set from the live measurement; change it in the layer's size if a demo grows\n/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Demo({name=\"pay\"}){const[muted,setMuted]=useState(true);if(name===\"work-map-only\")return /*#__PURE__*/_jsx(\"iframe\",{title:\"Interactive Instruxi Graph workflow\",srcDoc:'<!doctype html><html lang=\"en\"><head><base href=\"https://instruxi-proof.vercel.app/embed/\"><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><meta name=\"robots\" content=\"noindex\"><link href=\"https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;900&family=Inter:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap\" rel=\"stylesheet\"><link rel=\"stylesheet\" href=\"../site.css?v=3726\"><link rel=\"stylesheet\" href=\"../verify.css?v=3726\"><link rel=\"stylesheet\" href=\"../scenes.css?v=3726\"><link rel=\"stylesheet\" href=\"../products.css?v=3726\"><style>html,body{background:#16181D;margin:0}#field,.visit,.visit-log{display:none!important}.panel{border:0!important}</style><style>html,body{background:transparent!important}main,.panel,.gfilm,.in{padding:0!important;margin:0!important;width:100%!important;max-width:none!important;min-height:0!important;background:transparent!important}.gf-bg,.in > :not(.gf-map){display:none!important}.gf-map{margin:0!important}.gwrap{margin-top:0!important;background:#1b1d25!important;border-radius:14px!important} </style></head><body data-plan=\"\"><main><section class=\"panel gfilm\" id=\"graph\" data-tone=\"violet\"><div class=\"gf-bg\"><picture><source srcset=\"media/graph/film.webp?v=r7c\" type=\"image/webp\"><img class=\"gf-media\" src=\"media/graph/film.png?v=r7c\" alt=\"\" aria-hidden=\"true\"></picture></div><div class=\"in\">\\n<p class=\"gf-eb\">AI agent governance \\xb7 under every Instruxi product</p>\\n<h2 class=\"gf-h\">Instruxi <span>Graph.</span></h2>\\n<p class=\"gf-sub\">Your people, AI and software do the work. Instruxi Graph proves every step, to anyone who asks.</p>\\n<div class=\"gf-stat\"><b>1 million+</b><span><i class=\"gf-dot\"></i>receipts issued in production</span></div>\\n<div class=\"gf-cards\"><div><em>01</em><b>Multiplayer AI</b><p>Your people and their AI agents, from ChatGPT, Claude, Gemini or Copilot, share one workflow. Every task has one owner, so no work is done twice.</p></div><div><em>02</em><b>Policies locked at the start</b><p>Each task is judged against the policy in force when it started. Changing the policy halfway through cannot lower the bar.</p></div><div><em>03</em><b>Separation of duties, enforced</b><p>No person or agent can approve their own task. Instruxi Graph refuses it, and rejected work stays in the audit trail.</p></div><div><em>04</em><b>A verifiable audit trail</b><p>Every action is signed and time-stamped by an independent clock. Auditors check it without an account.</p></div></div>\\n<p class=\"gf-go\"><a class=\"pill pill-mint\" href=\"test\" data-seal=\"Opened: live test\">Test it yourself</a><a class=\"pill pill-ghost\" href=\"rules\" data-seal=\"Opened: regulations\">Regulations worldwide</a><a class=\"pill pill-ghost\" href=\"graph.html\" data-seal=\"Opened: Graph scoreboard\">See the scoreboard</a><a class=\"pill pill-ghost\" href=\"#gmap\">Try to break it</a><a class=\"pill pill-ghost\" href=\"flow\" data-seal=\"Opened: live flow\">Watch it live</a></p>\\n<div id=\"gmap\" class=\"gf-map\"><div class=\"gwrap\"><svg class=\"gsvg\" viewBox=\"-20 20 1190 300\" role=\"img\" aria-label=\"A live work map: a brief splits into research and figures, joins into a draft, is checked against rules, sent back once, then approved and sealed\"><path class=\"ge e-brief-res\" d=\"M130 170 C190 170 190 80 180 80\"/><path class=\"ge e-brief-data\" d=\"M130 170 C190 170 190 260 180 260\"/><path class=\"ge e-res-draft\" d=\"M320 80 C380 80 400 170 390 170\"/><path class=\"ge e-data-draft\" d=\"M320 260 C380 260 400 170 390 170\"/><path class=\"ge e-draft-chk\" d=\"M530 170 C590 170 610 170 600 170\"/><path class=\"ge e-chk-ok\" d=\"M740 170 C800 170 820 170 810 170\"/><path class=\"ge e-ok-seal\" d=\"M950 170 C1010 170 1020 170 1010 170\"/><path class=\"gback\" d=\"M670 205 C670 300 460 300 460 205\"/><g class=\"gn n-brief\" transform=\"translate(-10 136)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Brief</text><text x=\"14\" y=\"50\" class=\"gw\">Olivia</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><g class=\"gn n-res\" transform=\"translate(180 46)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Research</text><text x=\"14\" y=\"50\" class=\"gw\">Ben \\xb7 Gemini</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><g class=\"gn n-data\" transform=\"translate(180 226)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Pull figures</text><text x=\"14\" y=\"50\" class=\"gw\">Agent</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><g class=\"gn n-draft\" transform=\"translate(390 136)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Draft</text><text x=\"14\" y=\"50\" class=\"gw\">Hannah \\xb7 Copilot</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><g class=\"gn n-chk\" transform=\"translate(600 136)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Policy check</text><text x=\"14\" y=\"50\" class=\"gw\">Instruxi</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><g class=\"gn n-ok\" transform=\"translate(810 136)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Approval</text><text x=\"14\" y=\"50\" class=\"gw\">Olivia</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><g class=\"gn n-seal\" transform=\"translate(1010 136)\"><rect width=\"140\" height=\"68\" rx=\"12\"/><text x=\"14\" y=\"28\" class=\"gt\">Sealed</text><text x=\"14\" y=\"50\" class=\"gw\">Record</text><circle cx=\"124\" cy=\"18\" r=\"5\" class=\"gd\"/></g><text class=\"gnote\" x=\"565\" y=\"300\" text-anchor=\"middle\">Weak work goes back</text></svg>\\n<p class=\"gcap\" id=\"gcap\" aria-live=\"polite\">Olivia sets the brief.</p></div>\\n<div class=\"brk\" role=\"group\" aria-label=\"Try to break it\"><span>Try to break it</span><button type=\"button\" data-b=\"a\" aria-pressed=\"false\">Send two agents to one task</button><button type=\"button\" data-b=\"b\" aria-pressed=\"false\">Approve your own work</button><button type=\"button\" data-b=\"c\" aria-pressed=\"false\">Change the policy halfway</button><a href=\"r/5e5b4abe4b5745008271c6c257218b2b\" data-seal=\"Opened: a real receipt\">Tamper with a receipt</a></div><p class=\"gdev\">Building your own agents? The same workflow, policy checks and audit trail are open through our API. <a href=\"https://docs.instruxi.dev/#api\" target=\"_blank\" rel=\"noopener\">See the API reference</a></p></div><script src=\"graphbreak.js?v=4\" defer></script>\\n</div></section></main><script src=\"../site.js?v=8645ab3d\"></script><script>try{(()=>{const s=document.querySelector(\\'.gsvg\\');if(!s)return;const C=document.getElementById(\\'gcap\\');\\nconst P=[[\\'brief\\',\\'Olivia sets the brief.\\'],[\\'res data\\',\\'Ben and an agent each claim a step. Nobody doubles up.\\'],[\\'draft\\',\\'The draft waits until both inputs are done.\\'],[\\'chk\\',\\'Checked against your policy.\\'],[\\'back\\',\\'A figure is missing. The draft goes back to Hannah.\\'],[\\'draft2\\',\\'Fixed and resubmitted.\\'],[\\'chk2\\',\\'Passes the check.\\'],[\\'ok\\',\\'Olivia approves.\\'],[\\'seal\\',\\'Sealed. Every step is in the audit trail.\\']];\\nlet i=0,t;const calm=matchMedia(\\'(prefers-reduced-motion:reduce)\\').matches;\\nconst W=s.parentElement,X={brief:60,res:250,data:250,draft:460,draft2:460,back:560,chk:670,chk2:670,ok:880,seal:1080};\\nfunction step(){if(s.dataset.brk){t=setTimeout(step,800);return}const [k,c]=P[i];s.dataset.s=i;C.textContent=c;if(W.scrollWidth>W.clientWidth+4){const x=X[k.split(\\' \\')[0]]||0;W.scrollTo({left:(x+20)/1190*s.clientWidth-W.clientWidth/2,behavior:\\'smooth\\'})}i=(i+1)%P.length;t=setTimeout(step,i===0?4200:2100)}\\nconst io=new IntersectionObserver(es=>es.forEach(e=>{clearTimeout(t);if(e.isIntersecting&&!calm)step()}));io.observe(s);if(calm){s.dataset.s=8;C.textContent=P[8][1]}})();}catch(e){}</script><script>try{(()=>{const calm=matchMedia(\\'(prefers-reduced-motion:reduce)\\').matches;\\nconst sh=document.querySelector(\\'.sheet\\');if(sh)new IntersectionObserver((es,o)=>es.forEach(e=>{if(e.isIntersecting){sh.classList.add(\\'signing\\');setTimeout(()=>sh.classList.add(\\'done\\'),calm?0:5600);o.disconnect()}}),{threshold:.4}).observe(sh);\\nconst H=document.getElementById(\\'h48\\'),L=document.querySelectorAll(\\'#h48l li\\');if(!H)return;\\nconst B=document.getElementById(\\'built\\');function go(){L.forEach(l=>l.classList.remove(\\'on\\'));B.classList.remove(\\'c36\\',\\'c48\\');if(calm){H.textContent=48;L.forEach(l=>l.classList.add(\\'on\\'));B.classList.add(\\'c36\\',\\'c48\\');return}const t0=performance.now(),D=4200;(function f(n){const p=Math.min(1,(n-t0)/D),h=Math.round(48*(1-Math.pow(1-p,3)));H.textContent=h;L.forEach(l=>{if(+l.dataset.h<=h)l.classList.add(\\'on\\')});if(h>=36)B.classList.add(\\'c36\\');if(p<1)requestAnimationFrame(f);else B.classList.add(\\'c48\\')})(t0)}\\nnew IntersectionObserver((es,o)=>es.forEach(e=>{if(e.isIntersecting){go();o.disconnect()}}),{threshold:.5}).observe(H)})();}catch(e){}</script></body></html>',style:{width:\"100%\",height:\"100%\",border:0,display:\"block\",background:\"transparent\"}});if(name===\"built-48h\")return /*#__PURE__*/_jsx(\"iframe\",{title:\"Built in 48 hours\",srcDoc:'<!doctype html><html lang=\"en\"><head><base href=\"https://instruxi-proof.vercel.app/embed/\"><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><meta name=\"robots\" content=\"noindex\"><link href=\"https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;900&family=Inter:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap\" rel=\"stylesheet\"><link rel=\"stylesheet\" href=\"../site.css?v=43269\"><link rel=\"stylesheet\" href=\"../verify.css?v=43269\"><link rel=\"stylesheet\" href=\"../scenes.css?v=43269\"><link rel=\"stylesheet\" href=\"../products.css?v=43269\"><style>html,body{background:#16181D;margin:0}#field,.visit,.visit-log{display:none!important}.panel{border:0!important}</style></head><body data-plan=\"\"><main><section class=\"panel dots h48\" id=\"built\" data-tone=\"pink\"><span class=\"px tr\" aria-hidden=\"true\"></span><div class=\"in\">\\n<div><div class=\"big48\"><span id=\"h48\">48</span><small>hours</small></div><ol class=\"h48l\" id=\"h48l\"><li data-h=\"0\"><b>Hour 0</b>Brief agreed</li><li data-h=\"6\"><b>Hour 6</b>Rules written</li><li data-h=\"20\"><b>Hour 20</b>Screens 1 to 6</li><li data-h=\"36\"><b>Hour 36</b>Screens 7 to 12</li><li data-h=\"48\"><b>Hour 48</b>Live, first certificate issued</li></ol><h2 style=\"margin-top:24px\">Built in 48 hours. Trusted from day one.</h2>\\n<p class=\"lede\" style=\"margin-top:16px\">A revenue assurance platform for a sales consultancy. 12 screens, every finding checked against their rules, and a certificate their buyers verify themselves. The identity, rules and proof were already built. The 48 hours went on the product.</p>\\n<div class=\"go\" style=\"margin-top:24px\"><a class=\"pill pill-ghost\" href=\"https://instruxi.io/assured\" target=\"_top\" data-seal=\"Opened: Assured\">See Instruxi Assured <svg viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" aria-hidden=\"true\"><path d=\"M4 12L12 4M6 4h6v6\"/></svg></a></div></div>\\n<div class=\"cert\" aria-label=\"Example certificate\"><span class=\"t\">Example certificate \\xb7 No. RA-0412</span><h3>Revenue pipeline, Q3</h3><p style=\"font-size:14.5px;color:#4A5157\">Prepared for the board of a UK software company</p>\\n<dl><dt>Evidence</dt><dd>214 items, all sealed</dd><dt>Checked by</dt><dd>2 named reviewers</dd><dt>Refused</dt><dd>3 changes after sign-off</dd><dt>Issued</dt><dd>Sealed and time-stamped</dd></dl>\\n<p style=\"font:500 12px/1.4 var(--mono);color:#6A7177;max-width:22em\">Check this certificate yourself. Change one line and it fails.</p><span class=\"stamp\" aria-hidden=\"true\">Verified<small>RA-0412</small></span></div>\\n</div></section></main><script src=\"../site.js?v=8645ab3d\"></script><script>try{(()=>{const s=document.querySelector(\\'.gsvg\\');if(!s)return;const C=document.getElementById(\\'gcap\\');\\nconst P=[[\\'brief\\',\\'Olivia sets the brief.\\'],[\\'res data\\',\\'Ben and an agent each claim a step. Nobody doubles up.\\'],[\\'draft\\',\\'The draft waits until both inputs are done.\\'],[\\'chk\\',\\'Checked against your policy.\\'],[\\'back\\',\\'A figure is missing. The draft goes back to Hannah.\\'],[\\'draft2\\',\\'Fixed and resubmitted.\\'],[\\'chk2\\',\\'Passes the check.\\'],[\\'ok\\',\\'Olivia approves.\\'],[\\'seal\\',\\'Sealed. Every step is in the audit trail.\\']];\\nlet i=0,t;const calm=matchMedia(\\'(prefers-reduced-motion:reduce)\\').matches;\\nconst W=s.parentElement,X={brief:60,res:250,data:250,draft:460,draft2:460,back:560,chk:670,chk2:670,ok:880,seal:1080};\\nfunction step(){if(s.dataset.brk){t=setTimeout(step,800);return}const [k,c]=P[i];s.dataset.s=i;C.textContent=c;if(W.scrollWidth>W.clientWidth+4){const x=X[k.split(\\' \\')[0]]||0;W.scrollTo({left:(x+20)/1190*s.clientWidth-W.clientWidth/2,behavior:\\'smooth\\'})}i=(i+1)%P.length;t=setTimeout(step,i===0?4200:2100)}\\nconst io=new IntersectionObserver(es=>es.forEach(e=>{clearTimeout(t);if(e.isIntersecting&&!calm)step()}));io.observe(s);if(calm){s.dataset.s=8;C.textContent=P[8][1]}})();}catch(e){}</script><script>try{(()=>{const calm=matchMedia(\\'(prefers-reduced-motion:reduce)\\').matches;\\nconst sh=document.querySelector(\\'.sheet\\');if(sh)new IntersectionObserver((es,o)=>es.forEach(e=>{if(e.isIntersecting){sh.classList.add(\\'signing\\');setTimeout(()=>sh.classList.add(\\'done\\'),calm?0:5600);o.disconnect()}}),{threshold:.4}).observe(sh);\\nconst H=document.getElementById(\\'h48\\'),L=document.querySelectorAll(\\'#h48l li\\');if(!H)return;\\nconst B=document.getElementById(\\'built\\');function go(){L.forEach(l=>l.classList.remove(\\'on\\'));B.classList.remove(\\'c36\\',\\'c48\\');if(calm){H.textContent=48;L.forEach(l=>l.classList.add(\\'on\\'));B.classList.add(\\'c36\\',\\'c48\\');return}const t0=performance.now(),D=4200;(function f(n){const p=Math.min(1,(n-t0)/D),h=Math.round(48*(1-Math.pow(1-p,3)));H.textContent=h;L.forEach(l=>{if(+l.dataset.h<=h)l.classList.add(\\'on\\')});if(h>=36)B.classList.add(\\'c36\\');if(p<1)requestAnimationFrame(f);else B.classList.add(\\'c48\\')})(t0)}\\nnew IntersectionObserver((es,o)=>es.forEach(e=>{if(e.isIntersecting){go();o.disconnect()}}),{threshold:.5}).observe(H)})();}catch(e){}</script></body></html>',style:{width:\"100%\",height:\"100%\",border:0,display:\"block\"}});if(name===\"sign-off\")return /*#__PURE__*/_jsx(\"iframe\",{title:\"Sign-off\",srcDoc:'<!doctype html><html lang=\"en\"><head><base href=\"https://instruxi-proof.vercel.app/embed/\"><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><meta name=\"robots\" content=\"noindex\"><link href=\"https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;900&family=Inter:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap\" rel=\"stylesheet\"><link rel=\"stylesheet\" href=\"../site.css?v=33926\"><link rel=\"stylesheet\" href=\"../verify.css?v=33926\"><link rel=\"stylesheet\" href=\"../scenes.css?v=33926\"><link rel=\"stylesheet\" href=\"../products.css?v=33926\"><style>html,body{background:#16181D;margin:0}#field,.visit,.visit-log{display:none!important}.panel{border:0!important}</style></head><body data-plan=\"\"><main><section class=\"panel\" id=\"yes\" data-tone=\"blue\"><div class=\"in sheet-grid\">\\n<div><h2>Who has to say yes?</h2><p class=\"lede\" style=\"margin-top:16px\">Projects don\\'t stall on the demo. They stall on sign-off. Instruxi gives each of these people the proof they ask for.</p><div class=\"answer\" id=\"answer\" aria-live=\"polite\"></div></div>\\n<div class=\"sheet\" role=\"group\" aria-label=\"Sign-off sheet\"><div class=\"t\"><span>Sign-off sheet</span><span class=\"sh-st\">AI project</span><span class=\"sh-ok\">4 of 4 signed</span></div>\\n<button type=\"button\" class=\"sig-row\" data-r=\"0\" aria-pressed=\"true\"><span class=\"role\">Auditor</span><span class=\"need\">Evidence nobody changed after the fact.</span><span class=\"mark sg\"><svg viewBox=\"0 0 100 36\" aria-hidden=\"true\"><path d=\"M4 30 C10 6 18 6 16 26 S24 4 30 22 C34 32 38 14 44 20 S52 30 58 12 C62 4 66 30 72 24 S82 10 92 22\"/></svg><small>James Whitfield</small></span></button>\\n<button type=\"button\" class=\"sig-row\" data-r=\"1\" aria-pressed=\"false\"><span class=\"role\">Regulator</span><span class=\"need\">A named person approved it. It can be stopped.</span><span class=\"mark sg\"><svg viewBox=\"0 0 100 36\" aria-hidden=\"true\"><path d=\"M4 26 C8 4 20 8 14 24 C10 34 24 10 30 20 S40 30 46 14 C50 6 54 28 62 22 S74 8 80 24 C84 30 90 18 96 16\"/></svg><small>Rachel Coleman</small></span></button>\\n<button type=\"button\" class=\"sig-row\" data-r=\"2\" aria-pressed=\"false\"><span class=\"role\">Insurer</span><span class=\"need\">Proof of how the system behaves, over time.</span><span class=\"mark sg\"><svg viewBox=\"0 0 100 36\" aria-hidden=\"true\"><path d=\"M4 28 C12 2 16 30 22 18 S30 6 34 24 C38 34 44 8 52 18 S60 30 66 14 C70 6 78 26 86 18 S94 14 98 22\"/></svg><small>Alex Hartley</small></span></button>\\n<button type=\"button\" class=\"sig-row\" data-r=\"3\" aria-pressed=\"false\"><span class=\"role\">Your client</span><span class=\"need\">Proof the work was done and checked by a named person.</span><span class=\"mark sg\"><svg viewBox=\"0 0 100 36\" aria-hidden=\"true\"><path d=\"M4 22 C8 10 14 30 20 16 S28 6 32 26 C36 32 42 12 48 22 S56 28 62 10 C66 4 72 30 80 20 S90 14 96 24\"/></svg><small>Emily Ward</small></span></button></div>\\n</div></section></main><script src=\"../site.js?v=8645ab3d\"></script><script>try{(()=>{const s=document.querySelector(\\'.gsvg\\');if(!s)return;const C=document.getElementById(\\'gcap\\');\\nconst P=[[\\'brief\\',\\'Olivia sets the brief.\\'],[\\'res data\\',\\'Ben and an agent each claim a step. Nobody doubles up.\\'],[\\'draft\\',\\'The draft waits until both inputs are done.\\'],[\\'chk\\',\\'Checked against your policy.\\'],[\\'back\\',\\'A figure is missing. The draft goes back to Hannah.\\'],[\\'draft2\\',\\'Fixed and resubmitted.\\'],[\\'chk2\\',\\'Passes the check.\\'],[\\'ok\\',\\'Olivia approves.\\'],[\\'seal\\',\\'Sealed. Every step is in the audit trail.\\']];\\nlet i=0,t;const calm=matchMedia(\\'(prefers-reduced-motion:reduce)\\').matches;\\nconst W=s.parentElement,X={brief:60,res:250,data:250,draft:460,draft2:460,back:560,chk:670,chk2:670,ok:880,seal:1080};\\nfunction step(){if(s.dataset.brk){t=setTimeout(step,800);return}const [k,c]=P[i];s.dataset.s=i;C.textContent=c;if(W.scrollWidth>W.clientWidth+4){const x=X[k.split(\\' \\')[0]]||0;W.scrollTo({left:(x+20)/1190*s.clientWidth-W.clientWidth/2,behavior:\\'smooth\\'})}i=(i+1)%P.length;t=setTimeout(step,i===0?4200:2100)}\\nconst io=new IntersectionObserver(es=>es.forEach(e=>{clearTimeout(t);if(e.isIntersecting&&!calm)step()}));io.observe(s);if(calm){s.dataset.s=8;C.textContent=P[8][1]}})();}catch(e){}</script><script>try{(()=>{const calm=matchMedia(\\'(prefers-reduced-motion:reduce)\\').matches;\\nconst sh=document.querySelector(\\'.sheet\\');if(sh)new IntersectionObserver((es,o)=>es.forEach(e=>{if(e.isIntersecting){sh.classList.add(\\'signing\\');setTimeout(()=>sh.classList.add(\\'done\\'),calm?0:5600);o.disconnect()}}),{threshold:.4}).observe(sh);\\nconst H=document.getElementById(\\'h48\\'),L=document.querySelectorAll(\\'#h48l li\\');if(!H)return;\\nconst B=document.getElementById(\\'built\\');function go(){L.forEach(l=>l.classList.remove(\\'on\\'));B.classList.remove(\\'c36\\',\\'c48\\');if(calm){H.textContent=48;L.forEach(l=>l.classList.add(\\'on\\'));B.classList.add(\\'c36\\',\\'c48\\');return}const t0=performance.now(),D=4200;(function f(n){const p=Math.min(1,(n-t0)/D),h=Math.round(48*(1-Math.pow(1-p,3)));H.textContent=h;L.forEach(l=>{if(+l.dataset.h<=h)l.classList.add(\\'on\\')});if(h>=36)B.classList.add(\\'c36\\');if(p<1)requestAnimationFrame(f);else B.classList.add(\\'c48\\')})(t0)}\\nnew IntersectionObserver((es,o)=>es.forEach(e=>{if(e.isIntersecting){go();o.disconnect()}}),{threshold:.5}).observe(H)})();}catch(e){}</script><script>document.addEventListener(\"click\",function(event){var link=event.target.closest(\"a,button\");if(link&&/see instruxi assured/i.test(link.textContent||\"\")){event.preventDefault();event.stopImmediatePropagation();window.top.location.href=\"https://instruxi.io/assured\";}},true);</script></body></html>',style:{width:\"100%\",height:\"100%\",border:0,display:\"block\"}});if(name===\"credentials\")return /*#__PURE__*/_jsx(\"iframe\",{title:\"Interactive credentials demonstration\",srcDoc:'<!doctype html><html lang=\"en\"><head><base href=\"https://instruxi-proof.vercel.app/embed/\"><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><meta name=\"robots\" content=\"noindex\"><link href=\"https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700;900&family=Inter:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap\" rel=\"stylesheet\"><link rel=\"stylesheet\" href=\"../site.css?v=1487\"><link rel=\"stylesheet\" href=\"../verify.css?v=1487\"><link rel=\"stylesheet\" href=\"../scenes.css?v=1487\"><link rel=\"stylesheet\" href=\"../products.css?v=1487\"><style>html,body{background:#16181D;margin:0}#field,.visit,.visit-log{display:none!important}.panel{border:0!important}</style><style>@media(max-width:600px){main.phero{padding:8px!important;box-sizing:border-box!important}.pdwrap{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.pd-credentials{height:auto!important;min-height:0!important;padding:16px 8px!important;overflow:visible!important}.pd-credentials .cr-stage{width:100%!important;gap:20px!important}.pd-credentials .cr-reader{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.pd-credentials .cr-phone{max-width:100%!important;border-radius:40px!important;padding:8px!important;height:auto!important}.pd-credentials .cr-screen{height:auto!important;border-radius:32px!important;padding-bottom:20px!important}.pd-credentials .xd{max-width:100%!important}.pd-credentials .xd-dock{max-width:100%!important}}</style></head><body data-plan=\"credentials\"><main class=\"phero\" style=\"padding:24px\"><div class=\"pdwrap\"><p class=\"try\">Choose what to share, or revoke the licence.</p><div class=\"pd pd-credentials\" data-demo=\"credentials\">\\n  <div class=\"cr-stage\">\\n    <div class=\"cr-phone\" aria-label=\"Phone wallet\">\\n      <div class=\"cr-screen\">\\n        <div class=\"cr-status\"><span>9:41</span><i class=\"cr-island\"></i><span class=\"cr-sig\"><b></b><b></b><b></b><b></b> 5G</span></div>\\n        <div class=\"cr-wtitle\">Wallet</div>\\n        <div class=\"cr-card\">\\n          <div class=\"cr-card-top\"><span class=\"cr-chip\">CREDENTIAL</span><span class=\"cr-badge\">Valid</span></div>\\n          <div class=\"cr-avatar\" aria-hidden=\"true\"><svg viewBox=\"0 0 40 40\"><circle cx=\"20\" cy=\"15\" r=\"7\" fill=\"#c9d3e6\"/><path d=\"M6 38c2-9 8-13 14-13s12 4 14 13\" fill=\"#c9d3e6\"/></svg></div>\\n          <div class=\"cr-name\">Emma Hughes</div>\\n          <div class=\"cr-role\">Registered Nurse</div>\\n          <div class=\"cr-meta\"><span>Nursing register</span><span class=\"cr-exp\">to 2027</span></div>\\n          <div class=\"cr-withdrawn\">Withdrawn everywhere</div>\\n        </div>\\n        <div class=\"cr-sharelbl\">Share with reader</div>\\n        <div class=\"cr-toggles\">\\n          <button class=\"cr-tg\" data-k=\"lic\" aria-pressed=\"true\"><span>Licence status</span><i></i></button>\\n          <button class=\"cr-tg\" data-k=\"dob\" aria-pressed=\"false\"><span>Date of birth</span><i></i></button>\\n          <button class=\"cr-tg\" data-k=\"addr\" aria-pressed=\"false\"><span>Home address</span><i></i></button>\\n        </div>\\n        <button class=\"cr-revoke\">Revoke licence</button>\\n        <div class=\"cr-home\"></div>\\n      </div>\\n    </div>\\n    <div class=\"cr-reader\" aria-live=\"polite\">\\n      <div class=\"cr-rhead\"><span class=\"cr-dot\"></span><div><b>St Margaret\\'s</b><small>Ward 4 door check</small></div><span class=\"cr-time\">09:41</span></div>\\n      <div class=\"cr-result\"><span class=\"cr-rtitle\">Hold phone to reader</span><span class=\"cr-rsub\">Waiting for a credential</span></div>\\n      <div class=\"cr-rows\">\\n        <div class=\"cr-row\" data-r=\"lic\"><span>Licence</span><em class=\"cr-val\"></em></div>\\n        <div class=\"cr-row\" data-r=\"dob\"><span>Date of birth</span><em class=\"cr-val\"></em></div>\\n        <div class=\"cr-row\" data-r=\"addr\"><span>Home address</span><em class=\"cr-val\"></em></div>\\n        <div class=\"cr-row\" data-r=\"reg\"><span>Registration no.</span><em class=\"cr-val\"></em></div>\\n      </div>\\n      <div class=\"cr-notify\"><span class=\"cr-ini\">CM</span><div><b>Claire Morgan</b><small>Ward lead, notified</small></div></div>\\n      <div class=\"cr-seal\"><b>SEALED</b><small class=\"cr-sealtxt\">Check recorded</small></div>\\n      <div class=\"cr-hint\">Try it: flip a toggle or revoke</div>\\n    </div>\\n  </div>\\n</div>\\n</div></main><script src=\"../site.js?v=8645ab3d\"></script><script src=\"../products/credentials.js?v=e\"></script></body></html>',style:{width:\"100%\",height:\"100%\",border:0,display:\"block\"}});if(name===\"film\")return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\"},children:[/*#__PURE__*/_jsx(\"video\",{src:\"https://framerusercontent.com/assets/Pw8PoOnV8y83k5xsB25IFC7fsus.mp4\",poster:\"https://instruxi-proof.vercel.app/media/hero-nasdaq-4.jpg\",autoPlay:true,muted:muted,loop:true,playsInline:true,style:{width:\"100%\",height:\"100%\",objectFit:\"cover\",borderRadius:16,display:\"block\"}}),/*#__PURE__*/_jsx(\"button\",{onClick:()=>setMuted(!muted),style:{position:\"absolute\",left:14,bottom:14,padding:\"10px 18px\",borderRadius:999,border:0,boxShadow:\"inset 0 0 0 1.5px #2B5C8F\",background:\"#0B2A4A\",color:\"#fff\",font:\"500 15px Figtree, sans-serif\",cursor:\"pointer\"},children:muted?\"Sound on\":\"Sound off\"})]});if(name.startsWith(\"page:\"))return /*#__PURE__*/_jsx(\"iframe\",{src:\"https://instruxi-proof.vercel.app/\"+name.slice(5)+\"?framer=1\",style:{width:\"100%\",height:\"100%\",border:0,display:\"block\"}});if(name===\"bg\")return /*#__PURE__*/_jsx(\"iframe\",{src:\"https://instruxi-proof.vercel.app/embed/bg.html\",tabIndex:-1,\"aria-hidden\":\"true\",style:{width:\"100%\",height:\"100%\",border:0,display:\"block\",pointerEvents:\"none\"}});return /*#__PURE__*/_jsx(\"iframe\",{src:\"https://instruxi-proof.vercel.app/embed/\"+name+\".html\",style:{width:\"100%\",height:\"100%\",border:0,display:\"block\"}});}addPropertyControls(Demo,{name:{type:ControlType.Enum,options:[\"bg\",\"film\",\"assured\",\"gvnr\",\"pay\",\"credentials\",\"private-ai\",\"build\",\"industries\",\"work-map\",\"work-map-only\",\"built-48h\",\"sign-off\",\"book-a-call\",\"check-a-receipt\",\"receipt\",\"trust-check\",\"trust-deploy\",\"page:test\",\"page:rules\",\"page:map\",\"page:flow\"]}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Demo\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Demo.map"],"mappings":"A,iLAKG,SAAwBU,EAAK,CAAC,OAAK,OAAO,CAAC,GAAK,CAACC,EAAMC,GAAUZ,EAAS,EAAI,EAA4ryB,OAAvryBa,IAAO,gBAAoC,gBAAK,SAAS,CAAC,MAAM,sCAAsC,OAAO;;;;;;;;;;;;;;;;;;;gKAA8jR,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,QAAQ,WAAW,aAAa,CAAC,CAAC,EAAKA,IAAO,YAAgC,gBAAK,SAAS,CAAC,MAAM,oBAAoB,OAAO;;;;;;;;;;;;;;;;gKAA07J,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAKA,IAAO,WAA+B,gBAAK,SAAS,CAAC,MAAM,WAAW,OAAO;;;;;;;;;;;;;;;;mcAA0iL,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAKA,IAAO,cAAkC,gBAAK,SAAS,CAAC,MAAM,wCAAwC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kIAA43I,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAKA,IAAO,OAA2B,gBAAM,MAAM,CAAC,MAAM,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,MAAM,EAAE,SAAS,CAAc,gBAAK,QAAQ,CAAC,IAAI,uEAAuE,OAAO,4DAA4D,SAAS,GAAW,QAAM,KAAK,GAAK,YAAY,GAAK,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,UAAU,QAAQ,aAAa,GAAG,QAAQ,OAAO,CAAC,CAAC,EAAe,gBAAK,SAAS,CAAC,YAAYD,EAAS,CAACD,CAAK,EAAE,MAAM,CAAC,SAAS,WAAW,KAAK,GAAG,OAAO,GAAG,QAAQ,YAAY,aAAa,IAAI,OAAO,EAAE,UAAU,4BAA4B,WAAW,UAAU,MAAM,OAAO,KAAK,+BAA+B,OAAO,SAAS,EAAE,SAASA,EAAM,WAAW,WAAW,CAAC,CAAC,CAAC,CAAC,EAAKE,EAAK,WAAW,OAAO,EAAsB,gBAAK,SAAS,CAAC,IAAI,qCAAqCA,EAAK,MAAM,CAAC,EAAE,YAAY,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAKA,IAAO,KAAyB,gBAAK,SAAS,CAAC,IAAI,kDAAkD,SAAS,GAAG,cAAc,OAAO,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,QAAQ,cAAc,MAAM,CAAC,CAAC,EAAsB,gBAAK,SAAS,CAAC,IAAI,2CAA2CA,EAAK,QAAQ,MAAM,CAAC,MAAM,OAAO,OAAO,OAAO,OAAO,EAAE,QAAQ,OAAO,CAAC,CAAC,CAAE,C,0CAACJ,EAAoBC,EAAK,CAAC,KAAK,CAAC,KAAKF,EAAY,KAAK,QAAQ,CAAC,KAAK,OAAO,UAAU,OAAO,MAAM,cAAc,aAAa,QAAQ,aAAa,WAAW,gBAAgB,YAAY,WAAW,cAAc,kBAAkB,UAAU,cAAc,eAAe,YAAY,aAAa,WAAW,WAAW,CAAC,CAAC,CAAC,C"}