<!DOCTYPE html><!--Esmojo1u17lCZcrBpzgow--><html lang="en" dir="ltr" class="scroll-smooth"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/0484562807a97172-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/4c9affa5bc8f420e-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/6e1768769e6f59a2-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/8888a3826f4a3af4-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/ab2e3a11646b0499-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/b957ea75a84b6ea7-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/d3ebbfd689654d3a-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/eafabf029ad39a43-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" as="image" href="/images/svgs/permit-logo.svg"/><link rel="preload" as="image" imageSrcSet="/_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=3840&amp;q=75 3840w" imageSizes="100vw"/><link rel="preload" as="image" href="/logos/customers/cisco.svg"/><link rel="preload" as="image" href="/logos/customers/intel.svg"/><link rel="preload" as="image" href="/logos/customers/bp.svg"/><link rel="preload" as="image" href="/logos/customers/honeycomb.svg"/><link rel="preload" as="image" href="/logos/customers/paloalto.svg"/><link rel="preload" as="image" href="/logos/customers/rhapsody.svg"/><link rel="preload" as="image" href="/logos/customers/stigg.svg"/><link rel="preload" as="image" href="/logos/customers/foxit.svg"/><link rel="stylesheet" href="/_next/static/css/66899c74941628e7.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/c06f014b51bd17e1.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-a2fbf1791379ece9.js"/><script src="/_next/static/chunks/4bd1b696-e5d7c65570c947b7.js" async=""></script><script src="/_next/static/chunks/3794-17242b006f83021b.js" async=""></script><script src="/_next/static/chunks/main-app-2f0893b742b202b9.js" async=""></script><script src="/_next/static/chunks/8437-9ad1fbb2e149c9c4.js" async=""></script><script src="/_next/static/chunks/8500-2ca12cb6ef6dc06e.js" async=""></script><script src="/_next/static/chunks/1619-d6355f845ce09f88.js" async=""></script><script src="/_next/static/chunks/8409-505eb86ad23835b9.js" async=""></script><script src="/_next/static/chunks/2590-f13d7a320cf0a64a.js" async=""></script><script src="/_next/static/chunks/6095-35fc3d9cb50d5f2d.js" async=""></script><script src="/_next/static/chunks/6451-da00dbfb32862c7c.js" async=""></script><script src="/_next/static/chunks/app/page-dc37d2a4833f189e.js" async=""></script><script src="/_next/static/chunks/app/layout-1d1e78d3f1165fba.js" async=""></script><script src="/_next/static/chunks/app/error-eb3fc51c79f89d12.js" async=""></script><script src="https://static.claydar.com/init.v1.js?id=cwAmVzEGQC" async=""></script><link rel="preload" href="https://www.googletagmanager.com/gtm.js?id=GTM-THM5WG9" as="script"/><link rel="preload" as="image" href="/logos/customers/salt.svg"/><link rel="preload" as="image" href="/logos/customers/risksmart.svg"/><link rel="preload" as="image" href="/logos/customers/wingwork.svg"/><link rel="preload" as="image" href="/logos/customers/granulate.svg"/><link rel="preload" as="image" href="/logos/customers/oec.svg"/><link rel="preload" as="image" href="/logos/customers/nebula.svg"/><link rel="preload" as="image" imageSrcSet="/_next/image?url=%2Fimages%2Fminiature.png&amp;w=640&amp;q=75 1x, /_next/image?url=%2Fimages%2Fminiature.png&amp;w=1080&amp;q=75 2x"/><meta name="next-size-adjust" content=""/><title>Permit.io | Runtime Access Control for the AI Era</title><meta name="description" content="Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs."/><link rel="canonical" href="https://www.permit.io"/><meta property="og:title" content="Permit.io | Runtime Access Control for the AI Era"/><meta property="og:description" content="Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs."/><meta property="og:image:alt" content="Permit.io: Runtime Access Control for the AI Era"/><meta property="og:image:type" content="image/png"/><meta property="og:image" content="https://www.permit.io/opengraph-image?c7c5d9b2de25f712"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Permit.io | Runtime Access Control for the AI Era"/><meta name="twitter:description" content="Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs."/><meta name="twitter:image:alt" content="Permit.io: Runtime Access Control for the AI Era"/><meta name="twitter:image:type" content="image/png"/><meta name="twitter:image" content="https://www.permit.io/opengraph-image?c7c5d9b2de25f712"/><meta name="twitter:image:width" content="1200"/><meta name="twitter:image:height" content="630"/><link rel="icon" href="/favicon.ico?2753d112d5bcd555" type="image/x-icon" sizes="32x33"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f524cf __variable_cf84ab __variable_43d984 __variable_90b1ba antialiased"><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("class","theme","dark",null,["light","dark"],null,true,true)</script><div role="region" aria-label="Announcement" class="relative z-[60] border-b border-white/10 bg-[#08060f] text-white"><style>:root{--announce-h:41px;--announce-offset:41px}</style><div class="relative mx-auto flex max-w-7xl items-center justify-center gap-3 px-12 py-2.5 text-sm"><a class="group flex min-w-0 items-center gap-3 rounded-md focus-visible:outline-offset-4" href="/nexus-pdp#benchmarks"><span class="shrink-0 rounded-full bg-akita-coat px-2 py-0.5 text-xs font-bold uppercase tracking-wide text-akita-ink">New</span><span class="hidden truncate font-medium md:inline">Permit Nexus PDP benchmarks: 5.6 ms P99 on RBAC checks, measured server-side</span><span class="truncate font-medium md:hidden">Nexus PDP: 5.6 ms P99 RBAC checks</span><span class="hidden shrink-0 items-center gap-1 font-semibold text-[#ffb27a] group-hover:text-white sm:inline-flex">See the benchmarks<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-4 w-4 transition-transform group-hover:translate-x-0.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span></a><button type="button" aria-label="Dismiss announcement" class="absolute right-3 top-1/2 flex h-7 w-7 -translate-y-1/2 items-center justify-center rounded-md text-white/70 hover:bg-white/10 hover:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-x h-4 w-4" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg></button></div></div><header style="top:var(--announce-offset, 0px)" class="fixed left-0 right-0 z-50 transition-[background-color,border-color,box-shadow,backdrop-filter] duration-300 bg-transparent"><div class="flex items-center justify-between px-6 py-4 lg:px-10"><a class="flex items-center gap-2" href="/"><img src="/images/svgs/permit-logo.svg" alt="Permit.io" width="34" height="48" class="h-11 w-auto"/><span class="font-[var(--font-rajdhani)] text-2xl font-bold tracking-wide transition-colors duration-300 text-slate-900 dark:text-white">Permit.io</span></a><nav aria-label="Main" class="hidden items-center gap-1 xl:flex"><div class="relative"><button type="button" aria-expanded="false" class="flex items-center gap-1 px-3 py-2 text-sm font-medium transition-colors text-slate-600 hover:text-slate-900 dark:text-slate-300 dark:hover:text-white">Products<svg aria-hidden="true" class="h-3.5 w-3.5 transition-transform " fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"></path></svg></button></div><div class="relative"><button type="button" aria-expanded="false" class="flex items-center gap-1 px-3 py-2 text-sm font-medium transition-colors text-slate-600 hover:text-slate-900 dark:text-slate-300 dark:hover:text-white">Solutions<svg aria-hidden="true" class="h-3.5 w-3.5 transition-transform " fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"></path></svg></button></div><div class="relative"><button type="button" aria-expanded="false" class="flex items-center gap-1 px-3 py-2 text-sm font-medium transition-colors text-slate-600 hover:text-slate-900 dark:text-slate-300 dark:hover:text-white">Developers<svg aria-hidden="true" class="h-3.5 w-3.5 transition-transform " fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"></path></svg></button></div><div class="relative"><button type="button" aria-expanded="false" class="flex items-center gap-1 px-3 py-2 text-sm font-medium transition-colors text-slate-600 hover:text-slate-900 dark:text-slate-300 dark:hover:text-white">Resources<svg aria-hidden="true" class="h-3.5 w-3.5 transition-transform " fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"></path></svg></button></div><a class="px-3 py-2 text-sm font-medium transition-colors text-slate-600 hover:text-slate-900 dark:text-slate-300 dark:hover:text-white" href="/trust">Trust</a><a class="px-3 py-2 text-sm font-medium transition-colors text-slate-600 hover:text-slate-900 dark:text-slate-300 dark:hover:text-white" href="/pricing">Pricing</a></nav><div class="hidden items-center gap-2 xl:flex"><a href="https://github.com/permitio/opal" target="_blank" rel="noopener noreferrer" aria-label="OPAL on GitHub" class="flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-xs font-medium transition-colors border-slate-200 bg-slate-50 text-slate-700 hover:border-slate-300 hover:bg-slate-100 dark:border-white/10 dark:bg-white/5 dark:text-slate-300 dark:hover:border-white/20 dark:hover:bg-white/10"><svg class="h-4 w-4" viewBox="0 0 24 25" fill="currentColor"><path d="M12.001 2.01352C6.47598 2.01352 2.00098 6.48852 2.00098 12.0135C2.00098 16.4385 4.86348 20.176 8.83848 21.501C9.33848 21.5885 9.52598 21.2885 9.52598 21.026C9.52598 20.7885 9.51348 20.001 9.51348 19.1635C7.00098 19.626 6.35098 18.551 6.15098 17.9885C6.03848 17.701 5.55098 16.8135 5.12598 16.576C4.77598 16.3885 4.27598 15.926 5.11348 15.9135C5.90098 15.901 6.46348 16.6385 6.65098 16.9385C7.55098 18.451 8.98848 18.026 9.56348 17.7635C9.65098 17.1135 9.91348 16.676 10.201 16.426C7.97598 16.176 5.65098 15.3135 5.65098 11.4885C5.65098 10.401 6.03848 9.50102 6.67598 8.80102C6.57598 8.55102 6.22598 7.52602 6.77598 6.15102C6.77598 6.15102 7.61348 5.88852 9.52598 7.17602C10.326 6.95102 11.176 6.83852 12.026 6.83852C12.876 6.83852 13.726 6.95102 14.526 7.17602C16.4385 5.87602 17.276 6.15102 17.276 6.15102C17.826 7.52602 17.476 8.55102 17.376 8.80102C18.0135 9.50102 18.401 10.3885 18.401 11.4885C18.401 15.326 16.0635 16.176 13.8385 16.426C14.201 16.7385 14.5135 17.3385 14.5135 18.276C14.5135 19.6135 14.501 20.6885 14.501 21.026C14.501 21.2885 14.6885 21.601 15.1885 21.501C19.259 20.1268 21.9999 16.3098 22.001 12.0135C22.001 6.48852 17.526 2.01352 12.001 2.01352Z"></path></svg><svg class="h-3.5 w-3.5 text-amber-500" viewBox="0 0 24 24" fill="currentColor"><path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"></path></svg><span class="inline-block h-3 w-6 animate-pulse rounded bg-slate-200 dark:bg-white/10"></span></a><div class="flex h-9 w-9 items-center justify-center rounded-lg"><div class="h-4 w-4 animate-pulse rounded-full bg-slate-400/50"></div></div><a href="https://app.permit.io/" class="get_started whitespace-nowrap rounded-xl px-3 py-2.5 text-sm font-semibold transition-colors text-slate-700 hover:text-slate-950 dark:text-slate-200 dark:hover:text-white">Get Started</a><a class="whitespace-nowrap rounded-xl bg-akita-coat px-4 py-2.5 text-sm font-semibold text-akita-ink shadow-sm transition-colors hover:bg-akita-light focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-purple-400 focus-visible:ring-offset-2 focus-visible:ring-offset-transparent" href="/demo">Book a demo</a></div><div class="flex items-center gap-1 xl:hidden"><div class="flex h-9 w-9 items-center justify-center rounded-lg"><div class="h-4 w-4 animate-pulse rounded-full bg-slate-400/50"></div></div><button aria-label="Open navigation menu" aria-expanded="false" class="flex h-10 w-10 items-center justify-center rounded-lg transition-colors text-slate-600 hover:bg-slate-200/80 dark:text-white dark:hover:bg-white/10"><svg aria-hidden="true" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M4 6h16M4 12h16M4 18h16"></path></svg></button></div></div></header><main id="main_wrapper" class="relative z-10 w-full overflow-clip"><!--$?--><template id="B:0"></template><div class="flex h-100dvh w-full items-center justify-center bg-deep-bg"><div class="flex flex-col items-center gap-8"><div class="relative"><div class="absolute -inset-16 rounded-full bg-neon-purple/15 blur-[60px]" style="animation:loading-glow 2.5s ease-in-out infinite"></div><img alt="Loading..." width="416" height="260" decoding="async" data-nimg="1" class="relative drop-shadow-[0_0_32px_rgba(135,92,255,0.4)]" style="color:transparent;animation:loading-float 3s ease-in-out infinite" srcSet="/_next/image?url=%2Fimages%2Fminiature.png&amp;w=640&amp;q=75 1x, /_next/image?url=%2Fimages%2Fminiature.png&amp;w=1080&amp;q=75 2x" src="/_next/image?url=%2Fimages%2Fminiature.png&amp;w=1080&amp;q=75"/></div><div class="flex flex-col items-center gap-3"><div class="h-1 w-32 overflow-hidden rounded-full bg-surface-2"><div class="h-full w-1/2 rounded-full bg-gradient-to-r from-neon-purple via-neon-cyan to-neon-purple" style="animation:loading-bar 1.5s ease-in-out infinite"></div></div><span class="font-rajdhani text-xs font-bold uppercase tracking-[0.25em] text-slate-500 dark:text-slate-400">Loading</span></div></div></div><!--/$--></main><footer class="border-t border-white/8 bg-[#050816] px-6 pb-10 pt-16 md:px-10"><div class="mx-auto w-full max-w-7xl"><div class="grid grid-cols-2 gap-8 sm:gap-10 md:grid-cols-4 lg:grid-cols-[1.4fr_repeat(6,1fr)]"><div class="col-span-2 md:col-span-1"><p class="font-rajdhani text-2xl font-bold tracking-wide text-white">Permit.io</p><p class="mt-1 text-sm text-slate-400">Runtime Access Control for the AI Era</p><div class="mt-5 flex flex-wrap gap-4 text-sm text-slate-300"><a href="https://github.com/permitio" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">GitHub</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">Slack</a><a href="https://x.com/permit_io" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">X</a><a href="https://www.youtube.com/@permitio" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">YouTube</a><a href="https://www.linkedin.com/company/permitio/" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">LinkedIn</a></div></div><div><p class="font-rajdhani text-sm uppercase tracking-[0.16em] text-slate-300">Products</p><ul class="mt-4 space-y-2.5 text-sm text-slate-400"><li><a class="transition-colors hover:text-white" href="/app-and-api-permissions">App and API Permissions</a></li><li><a class="transition-colors hover:text-white" href="/nexus-pdp">Nexus PDP</a></li><li><a class="transition-colors hover:text-white" href="/mcp-gateway">MCP Gateway</a></li><li><a class="transition-colors hover:text-white" href="/coding-agents-gateway">Coding Agents Gateway</a></li><li><a class="transition-colors hover:text-white" href="/ai-access-control">AI Access Control</a></li><li><a class="transition-colors hover:text-white" href="/elements">Elements</a></li><li><a class="transition-colors hover:text-white" href="/pricing">Pricing</a></li></ul></div><div><p class="font-rajdhani text-sm uppercase tracking-[0.16em] text-slate-300">Solutions</p><ul class="mt-4 space-y-2.5 text-sm text-slate-400"><li><a class="transition-colors hover:text-white" href="/solutions/finance">Finance</a></li><li><a class="transition-colors hover:text-white" href="/solutions/insurance">Insurance</a></li><li><a class="transition-colors hover:text-white" href="/healthcare">Healthcare</a></li><li><a class="transition-colors hover:text-white" href="/solutions/government">Government</a></li><li><a class="transition-colors hover:text-white" href="/solutions/cybersecurity">Cybersecurity</a></li><li><a class="transition-colors hover:text-white" href="/rbac">RBAC</a></li><li><a class="transition-colors hover:text-white" href="/abac">ABAC</a></li><li><a class="transition-colors hover:text-white" href="/rebac">ReBAC</a></li><li><a class="transition-colors hover:text-white" href="/pbac">PBAC</a></li><li><a class="transition-colors hover:text-white" href="/ai-compliance">Access Control Compliance</a></li></ul></div><div><p class="font-rajdhani text-sm uppercase tracking-[0.16em] text-slate-300">Teams</p><ul class="mt-4 space-y-2.5 text-sm text-slate-400"><li><a class="transition-colors hover:text-white" href="/solutions/developers">Developers</a></li><li><a class="transition-colors hover:text-white" href="/solutions/security-teams">Security</a></li><li><a class="transition-colors hover:text-white" href="/solutions/compliance-teams">Compliance</a></li><li><a class="transition-colors hover:text-white" href="/solutions/identity-teams">Identity</a></li><li><a class="transition-colors hover:text-white" href="/solutions/product-teams">Product</a></li></ul></div><div><p class="font-rajdhani text-sm uppercase tracking-[0.16em] text-slate-300">Developers</p><ul class="mt-4 space-y-2.5 text-sm text-slate-400"><li><a href="https://docs.permit.io" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">Docs</a></li><li><a href="https://docs.permit.io/overview/how-does-it-work" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">Policy Engine</a></li><li><a href="https://docs.permit.io/how-to/use-audit-logs/types-and-filtering" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">Audit Logs</a></li><li><a class="transition-colors hover:text-white" href="/cli">CLI</a></li><li><a class="transition-colors hover:text-white" href="/open-source">Open Source</a></li><li><a href="https://permit-io.instatus.com/" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">Service Status</a></li></ul></div><div><p class="font-rajdhani text-sm uppercase tracking-[0.16em] text-slate-300">Resources</p><ul class="mt-4 space-y-2.5 text-sm text-slate-400"><li><a class="transition-colors hover:text-white" href="/blog">Blog</a></li><li><a class="transition-colors hover:text-white" href="/ai-compliance-explorer">AI Access Control Center</a></li><li><a class="transition-colors hover:text-white" href="/customers">Customers</a></li><li><a class="transition-colors hover:text-white" href="/videos">Videos</a></li><li><a class="transition-colors hover:text-white" href="/pricing#faqs">FAQ&#x27;s</a></li></ul></div><div><p class="font-rajdhani text-sm uppercase tracking-[0.16em] text-slate-300">Company</p><ul class="mt-4 space-y-2.5 text-sm text-slate-400"><li><a class="transition-colors hover:text-white" href="/about">About</a></li><li><a class="transition-colors hover:text-white" href="/trust">Trust Center</a></li><li><a class="transition-colors hover:text-white" href="/demo">Contact sales</a></li><li><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="transition-colors hover:text-white">Community Slack</a></li><li><a href="mailto:help@permit.io" class="transition-colors hover:text-white">Email</a></li><li><a class="transition-colors hover:text-white" href="/legal/privacy-policy">Privacy Policy</a></li><li><a class="transition-colors hover:text-white" href="/legal/terms-and-conditions">Terms &amp; Conditions</a></li></ul></div></div><div class="mt-12 flex flex-wrap items-center justify-between gap-4 border-t border-white/8 pt-6 text-xs text-slate-400"><div class="flex flex-wrap gap-2"><span class="rounded-full border border-white/10 bg-white/5 px-3 py-1">SOC 2 Type II attested</span><span class="rounded-full border border-white/10 bg-white/5 px-3 py-1">HIPAA BAA available</span><span class="rounded-full border border-white/10 bg-white/5 px-3 py-1">GDPR</span><span class="rounded-full border border-white/10 bg-white/5 px-3 py-1">CCPA</span><span class="rounded-full border border-white/10 bg-white/5 px-3 py-1">CNCF Silver Member</span></div><p>© <!-- -->2026<!-- --> Permit Inc.</p></div></div></footer><script>requestAnimationFrame(function(){$RT=performance.now()});</script><script src="/_next/static/chunks/webpack-a2fbf1791379ece9.js" id="_R_" async=""></script><div hidden id="S:0"><script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Organization","name":"Permit.io","url":"https://www.permit.io","description":"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.","sameAs":["https://github.com/permitio","https://x.com/permit_io","https://www.linkedin.com/company/permitio/"]},{"@type":"SoftwareApplication","name":"Permit.io","applicationCategory":"DeveloperApplication","operatingSystem":"Cloud","description":"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.","url":"https://www.permit.io","slogan":"Runtime Access Control for the AI Era"}]}</script><canvas class="pointer-events-none fixed inset-0 z-30" style="transition:opacity 0.3s ease-out;mask-image:linear-gradient(180deg, transparent 0%, black 3%, black 97%, transparent 100%);-webkit-mask-image:linear-gradient(180deg, transparent 0%, black 3%, black 97%, transparent 100%)"></canvas><div class="sticky top-0 z-0"><section data-hero="dark" data-brand-surface="dark" class="relative h-[100dvh] min-h-[600px] overflow-hidden"><div class="absolute inset-0"><img alt="Permit.io — Runtime Access Control for the AI Era" decoding="async" data-nimg="fill" class="object-cover object-center" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fhero%2Fnature.jpg&amp;w=3840&amp;q=75"/><video src="/video/time-march.mp4" muted="" playsInline="" preload="metadata" class="absolute inset-0 z-[1] h-full w-full object-cover transition-opacity duration-1000 ease-in-out opacity-0"></video><video src="/video/city-loop.mp4" muted="" loop="" playsInline="" preload="metadata" class="absolute inset-0 z-[2] h-full w-full object-cover transition-opacity duration-1000 ease-in-out opacity-0"></video><div class="pointer-events-none absolute inset-0 z-[4] bg-gradient-to-b from-black/50 via-transparent to-black/40"></div><div class="pointer-events-none absolute inset-0 z-10 flex items-start pt-24 md:pt-32 lg:pt-[174px]"><div class="flex w-full flex-col items-start justify-between gap-8 px-6 md:flex-row md:items-start lg:px-10"><div class="pointer-events-auto max-w-[22rem] lg:max-w-xl"><h1 class="home-hero-headline text-4xl font-bold leading-[1.02] tracking-tight md:text-5xl lg:text-6xl">Runtime Access<br/>Control<br/><span class="shimmer-text-light">for the AI Era.</span></h1></div><div class="pointer-events-auto hidden max-w-xs text-right md:block lg:max-w-sm"><p class="mb-2 text-base font-medium leading-relaxed text-white [text-shadow:0_1px_12px_rgba(0,0,0,1),0_1px_3px_rgba(0,0,0,0.8)] md:text-lg">Fine-grained authorization as a service —<br/>for applications, APIs, and AI agents.</p><p class="mb-6 text-sm leading-relaxed text-slate-100 [text-shadow:0_1px_8px_rgba(0,0,0,0.9)]">Policy as code, a no-code editor, and local PDPs. Used by teams shipping permissions in enterprise, fintech, healthcare, and government.</p><div class="flex flex-col items-end justify-end gap-3 sm:flex-row"><a href="https://app.permit.io/" class="btn-hover-lift flex items-center justify-center gap-2 rounded-xl bg-gradient-to-r from-neon-purple to-purple-600 px-6 py-3 text-center font-semibold text-white shadow-neon-md transition-shadow hover:shadow-neon-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60 focus-visible:ring-offset-2 focus-visible:ring-offset-black/50">Start building<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift flex items-center justify-center gap-2 rounded-xl border border-white/40 bg-white/15 px-6 py-3 text-center font-semibold text-white backdrop-blur-sm transition-all hover:border-white/60 hover:bg-white/25 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60 focus-visible:ring-offset-2 focus-visible:ring-offset-black/50"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-5 w-5"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></div></div><div class="pointer-events-auto absolute bottom-20 left-0 right-0 z-10 flex items-center justify-center gap-3 px-6 md:hidden"><a href="https://app.permit.io/" class="btn-hover-lift flex items-center justify-center gap-2 rounded-xl bg-gradient-to-r from-neon-purple to-purple-600 px-5 py-3 text-center text-sm font-semibold text-white shadow-neon-md transition-shadow hover:shadow-neon-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60">Start building<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift flex items-center justify-center gap-2 rounded-xl border border-white/40 bg-white/15 px-5 py-3 text-center text-sm font-semibold text-white backdrop-blur-sm transition-all hover:border-white/60 hover:bg-white/25 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/60"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-5 w-5"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with us</a></div><div class="pointer-events-none absolute bottom-0 left-0 right-0 z-[3] h-16 bg-gradient-to-t from-deep-bg to-transparent"></div></div></section></div><div class="relative z-10 bg-deep-bg"><div class="section-divider"></div><section class="fade-in-section px-6 pt-28 pb-16 md:pt-32 md:pb-20"><div class="mx-auto max-w-6xl text-center"><h2 class="mb-10 text-2xl font-bold text-slate-900 dark:text-white md:text-3xl">Shipped by developers at the world&#x27;s leading<!-- --> <span class="text-neon-orange">products</span></h2><div class="flex flex-wrap items-center justify-center gap-3 md:gap-4"><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/cisco.svg" alt="Cisco logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/intel.svg" alt="Intel logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/bp.svg" alt="BP logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/honeycomb.svg" alt="Honeycomb logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/paloalto.svg" alt="Palo Alto logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/rhapsody.svg" alt="Rhapsody Health logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/stigg.svg" alt="Stigg logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/foxit.svg" alt="Foxit logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/salt.svg" alt="SALT Security logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/risksmart.svg" alt="RiskSmart logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/wingwork.svg" alt="WingWork logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/granulate.svg" alt="Granulate logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/oec.svg" alt="OEC logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div><div><span class="customer-logo flex h-12 w-[140px] items-center justify-center rounded-full border border-slate-300 bg-slate-50/80 px-5 transition-all hover:border-slate-400 hover:bg-slate-100 dark:border-white/15 dark:bg-white/[0.05] dark:hover:border-white/25 dark:hover:bg-white/[0.08]"><img src="/logos/customers/nebula.svg" alt="Nebula logo" height="22" class="h-[22px] w-auto max-w-[100px]"/></span></div></div><div class="mx-auto mt-14 max-w-5xl border-t border-slate-200 pt-10 text-left dark:border-white/10"><div class=""><ul class="grid gap-x-8 gap-y-5 sm:grid-cols-2 lg:grid-cols-4"><li class="border-t border-slate-300 pt-3 dark:border-white/15"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-check h-4 w-4 shrink-0 text-purple-700 dark:text-purple-300" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="m9 12 2 2 4-4"></path></svg>SOC 2 Type II attested</span><span class="mt-1 block text-sm text-slate-600 dark:text-slate-400">Security, Availability, Confidentiality</span></li><li class="border-t border-slate-300 pt-3 dark:border-white/15"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-server-cog h-4 w-4 shrink-0 text-purple-700 dark:text-purple-300" aria-hidden="true"><path d="m10.852 14.772-.383.923"></path><path d="M13.148 14.772a3 3 0 1 0-2.296-5.544l-.383-.923"></path><path d="m13.148 9.228.383-.923"></path><path d="m13.53 15.696-.382-.924a3 3 0 1 1-2.296-5.544"></path><path d="m14.772 10.852.923-.383"></path><path d="m14.772 13.148.923.383"></path><path d="M4.5 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-.5"></path><path d="M4.5 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2h-.5"></path><path d="M6 18h.01"></path><path d="M6 6h.01"></path><path d="m9.228 10.852-.923-.383"></path><path d="m9.228 13.148-.923.383"></path></svg>Cloud, hybrid, or on-prem</span><span class="mt-1 block text-sm text-slate-600 dark:text-slate-400">Decisions run in your network</span></li><li class="border-t border-slate-300 pt-3 dark:border-white/15"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-search h-4 w-4 shrink-0 text-purple-700 dark:text-purple-300" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><circle cx="11.5" cy="14.5" r="2.5"></circle><path d="M13.3 16.3 15 18"></path></svg>Every decision logged</span><span class="mt-1 block text-sm text-slate-600 dark:text-slate-400">Explained, and forwardable to your SIEM</span></li><li class="border-t border-slate-300 pt-3 dark:border-white/15"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-boxes h-4 w-4 shrink-0 text-purple-700 dark:text-purple-300" aria-hidden="true"><path d="M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z"></path><path d="m7 16.5-4.74-2.85"></path><path d="m7 16.5 5-3"></path><path d="M7 16.5v5.17"></path><path d="M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z"></path><path d="m17 16.5-5-3"></path><path d="m17 16.5 4.74-2.85"></path><path d="M17 16.5v5.17"></path><path d="M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z"></path><path d="M12 8 7.26 5.15"></path><path d="m12 8 4.74-2.85"></path><path d="M12 13.5V8"></path></svg>Built on open standards</span><span class="mt-1 block text-sm text-slate-600 dark:text-slate-400">OPA, Cedar, and OPAL</span></li></ul><a class="mt-5 inline-flex items-center gap-1 text-sm font-semibold text-purple-700 underline-offset-4 hover:underline dark:text-purple-300" href="/trust">Review our security program in the Trust Center<span aria-hidden="true">→</span></a></div></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="grid items-center gap-12 md:grid-cols-2"><div><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Stop rebuilding permissions in application code</h2><p class="mb-6 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Most products start with a roles table and a pile of if statements. Then tenants show up. Then attributes. Then relationship graphs. Then agents acting on behalf of users.</p><p class="mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Fine-grained authorization is infrastructure — RBAC, ABAC, and ReBAC with an audit trail — not a feature you rewrite every quarter.</p><div class="space-y-4"><div class="flex items-start gap-3"><div class="mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange"></div><div><span class="font-semibold text-slate-900 dark:text-white">Role explosion<!-- -->:</span> <span class="text-sm text-slate-600 dark:text-slate-400">Static roles cannot express tenancy, ownership, or context without multiplying forever.</span></div></div><div class="flex items-start gap-3"><div class="mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange"></div><div><span class="font-semibold text-slate-900 dark:text-white">Checks in code<!-- -->:</span> <span class="text-sm text-slate-600 dark:text-slate-400">if/else authorization cannot be reviewed by security, reused by agents, or proven in an audit.</span></div></div><div class="flex items-start gap-3"><div class="mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange"></div><div><span class="font-semibold text-slate-900 dark:text-white">Missing models<!-- -->:</span> <span class="text-sm text-slate-600 dark:text-slate-400">ABAC and ReBAC get bolted on too late, after the roles table has already calcified.</span></div></div><div class="flex items-start gap-3"><div class="mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange"></div><div><span class="font-semibold text-slate-900 dark:text-white">New subjects<!-- -->:</span> <span class="text-sm text-slate-600 dark:text-slate-400">Services and AI agents need the same policy as users — not a second permission system.</span></div></div></div><div class="flex flex-wrap gap-3 justify-start mt-8"><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div><div class="liquid-glass-bezel overflow-hidden rounded-2xl"><div class="relative aspect-[4/3]"><img alt="Authorization sprawl — ad-hoc roles, services, and agents without a single policy plane" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Flegacy-iam-chaos-new.png&amp;w=3840&amp;q=75"/></div></div></div></div></section><div class="section-divider"></div><section id="how-it-works" class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="mx-auto mb-10 max-w-3xl text-center"><h2 class="mb-5 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Authentication says who. Permit decides what.</h2><p class="text-lg leading-relaxed text-slate-600 dark:text-slate-400">Keep your identity provider for sign-in. Permit is the authorization layer behind it: a policy decision point that answers one question for every human, service, and agent, and logs why.</p></div><figure class="border-t-2 border-slate-900 pt-5 [&amp;_*]:![text-shadow:none] dark:border-white "><p class="text-base font-semibold text-slate-900 dark:text-white">How a permission decision is made</p><div class="mt-5"><ol class="grid gap-3 md:grid-cols-5 md:gap-0"><li class="relative flex md:flex-col"><span aria-hidden="true" class="absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]"></span><div class="flex gap-4 md:flex-col md:items-center md:px-2 md:text-center"><span class="relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-fingerprint-pattern h-[18px] w-[18px]" aria-hidden="true"><path d="M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4"></path><path d="M14 13.12c0 2.38 0 6.38-1 8.88"></path><path d="M17.29 21.02c.12-.6.43-2.3.5-3.02"></path><path d="M2 12a10 10 0 0 1 18-6"></path><path d="M2 16h.01"></path><path d="M21.8 16c.2-2 .131-5.354 0-6"></path><path d="M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2"></path><path d="M8.65 22c.21-.66.45-1.32.57-2"></path><path d="M9 6.8a6 6 0 0 1 9 5.2v2"></path></svg></span><span class="pb-4 md:pb-0 md:pt-4"><span class="block text-sm font-semibold text-slate-900 dark:text-white">Identity</span><span class="mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400">A human, service, or AI agent, authenticated by your identity provider.</span></span></div></li><li class="relative flex md:flex-col"><span aria-hidden="true" class="absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]"></span><div class="flex gap-4 md:flex-col md:items-center md:px-2 md:text-center"><span class="relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-send h-[18px] w-[18px]" aria-hidden="true"><path d="M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"></path><path d="m21.854 2.147-10.94 10.939"></path></svg></span><span class="pb-4 md:pb-0 md:pt-4"><span class="block text-sm font-semibold text-slate-900 dark:text-white">Request</span><span class="mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400">Can this identity perform this action on this resource, right now?</span></span></div></li><li class="relative flex md:flex-col"><span aria-hidden="true" class="absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]"></span><div class="flex gap-4 md:flex-col md:items-center md:px-2 md:text-center"><span class="relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-purple-600 bg-purple-700 text-white shadow-[0_0_0_6px_rgba(126,34,206,0.12)] dark:border-purple-400 dark:bg-purple-600 dark:shadow-[0_0_0_6px_rgba(135,92,255,0.18)]"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scale h-[18px] w-[18px]" aria-hidden="true"><path d="M12 3v18"></path><path d="m19 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1"></path><path d="m5 8 3 8a5 5 0 0 1-6 0zV7"></path><path d="M7 21h10"></path></svg></span><span class="pb-4 md:pb-0 md:pt-4"><span class="block text-sm font-semibold text-slate-900 dark:text-white">Policy decision point</span><span class="mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400">Evaluates RBAC, ABAC, and ReBAC policy with OPA or Cedar, in your network.</span></span></div></li><li class="relative flex md:flex-col"><span aria-hidden="true" class="absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]"></span><div class="flex gap-4 md:flex-col md:items-center md:px-2 md:text-center"><span class="relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-check h-[18px] w-[18px]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="m9 12 2 2 4-4"></path></svg></span><span class="pb-4 md:pb-0 md:pt-4"><span class="block text-sm font-semibold text-slate-900 dark:text-white">Decision</span><span class="mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400">Allow or deny, returned to your code with the reason attached.</span></span></div></li><li class="relative flex md:flex-col"><div class="flex gap-4 md:flex-col md:items-center md:px-2 md:text-center"><span class="relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-search h-[18px] w-[18px]" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><circle cx="11.5" cy="14.5" r="2.5"></circle><path d="M13.3 16.3 15 18"></path></svg></span><span class="pb-4 md:pb-0 md:pt-4"><span class="block text-sm font-semibold text-slate-900 dark:text-white">Audit</span><span class="mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400">Every decision logged, explained, and forwardable to your SIEM.</span></span></div></li></ol><div class="mt-8"><div class="overflow-hidden rounded-xl border border-slate-200 bg-slate-50 font-ibm text-[13px] leading-relaxed dark:border-white/10 dark:bg-black/40"><div class="flex items-center justify-between border-b border-slate-200 px-4 py-2 dark:border-white/10"><span class="text-[11px] uppercase tracking-[0.14em] text-slate-500 dark:text-slate-400">Example decision</span><span class="rounded-md px-2 py-0.5 text-[11px] font-semibold uppercase tracking-[0.1em] bg-emerald-100 text-emerald-800 dark:bg-emerald-500/15 dark:text-emerald-300">allow</span></div><dl class="grid grid-cols-[max-content_1fr] gap-x-5 gap-y-1 overflow-x-auto px-4 py-3"><div class="contents"><dt class="text-slate-500 dark:text-slate-400">subject</dt><dd class="text-slate-900 dark:text-slate-100">agent:invoice-assistant  for  user:dana@example.com</dd></div><div class="contents"><dt class="text-slate-500 dark:text-slate-400">action</dt><dd class="text-slate-900 dark:text-slate-100">approve</dd></div><div class="contents"><dt class="text-slate-500 dark:text-slate-400">resource</dt><dd class="text-slate-900 dark:text-slate-100">invoice:8841  (tenant: example-co)</dd></div><div class="contents"><dt class="text-slate-500 dark:text-slate-400">reason</dt><dd class="text-slate-900 dark:text-slate-100">dana is finance-approver on example-co; amount 4,200 is under her 10,000 limit</dd></div><div class="contents"><dt class="text-slate-500 dark:text-slate-400">decided by</dt><dd class="text-slate-900 dark:text-slate-100">PDP in your VPC</dd></div></dl></div></div></div><figcaption class="mt-6 max-w-[68ch] border-t border-slate-300 pt-4 text-sm leading-relaxed text-slate-600 dark:border-white/15 dark:text-slate-400">The same five steps apply whether the caller is a person clicking a button or an agent calling a tool. Only the identity changes.</figcaption></figure><div class="flex flex-wrap gap-3 justify-center mt-10"><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="max-w-3xl"><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">RBAC, ABAC, and ReBAC.<!-- --> <span class="text-neon-purple dark:text-purple-400/80">One check API.</span></h2><p class="mb-10 max-w-[70ch] text-lg leading-relaxed text-slate-600 dark:text-slate-400">Fine-grained authorization is a set of models, not a roles table. Start with RBAC, add attributes when context matters, model relationships when the graph matters. Humans, services, and agents hit the same policy engine.</p></div><div class="grid items-start gap-8 lg:grid-cols-[minmax(0,0.9fr)_minmax(0,1.1fr)]"><div><div role="tablist" aria-label="Authorization models" class="flex flex-col gap-2"><button type="button" role="tab" id="_R_4altmdb_-rbac" aria-selected="true" aria-controls="_R_4altmdb_-panel" class="rounded-2xl border px-5 py-4 text-left transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/70 border-neon-purple/40 bg-neon-purple/10 shadow-[0_8px_32px_-12px_rgba(135,92,255,0.45)]"><p class="font-rajdhani text-xs font-bold uppercase tracking-[0.18em] text-neon-purple">RBAC</p><p class="mt-1 text-lg font-semibold tracking-tight text-slate-900 dark:text-white">Role-based access</p><p class="mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400">Roles mapped to actions on resource types. Start here, then layer tenancy, conditions, and relationships without changing your check API.</p></button><button type="button" role="tab" id="_R_4altmdb_-abac" aria-selected="false" aria-controls="_R_4altmdb_-panel" class="rounded-2xl border px-5 py-4 text-left transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/70 border-slate-200 bg-white/50 hover:border-slate-300 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-white/20"><p class="font-rajdhani text-xs font-bold uppercase tracking-[0.18em] text-neon-purple">ABAC</p><p class="mt-1 text-lg font-semibold tracking-tight text-slate-900 dark:text-white">Attribute-based access</p></button><button type="button" role="tab" id="_R_4altmdb_-rebac" aria-selected="false" aria-controls="_R_4altmdb_-panel" class="rounded-2xl border px-5 py-4 text-left transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/70 border-slate-200 bg-white/50 hover:border-slate-300 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-white/20"><p class="font-rajdhani text-xs font-bold uppercase tracking-[0.18em] text-neon-purple">ReBAC</p><p class="mt-1 text-lg font-semibold tracking-tight text-slate-900 dark:text-white">Relationship-based access</p></button></div><blockquote class="mt-6"><p class="font-rajdhani text-xs font-bold uppercase tracking-[0.18em] text-neon-purple dark:text-neon-orange">Example policy</p><p class="mt-2 text-base italic leading-relaxed text-slate-700 dark:text-slate-300">“<!-- -->Banker can Approve Loan<!-- -->”</p></blockquote><div class="mt-6 flex flex-wrap gap-3"><a class="inline-flex items-center gap-2 rounded-xl border border-neon-purple/30 bg-neon-purple/5 px-5 py-2.5 text-sm font-semibold text-slate-700 transition-all hover:border-neon-purple/50 hover:bg-neon-purple/10 dark:text-slate-200" href="/rbac">Start with RBAC<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><a href="https://app.permit.io/" class="inline-flex items-center gap-2 rounded-xl border border-slate-300 bg-slate-100/80 px-5 py-2.5 text-sm font-semibold text-slate-700 transition-all hover:border-slate-400 hover:bg-slate-200/80 dark:border-white/15 dark:bg-white/[0.05] dark:text-slate-300 dark:hover:border-white/25">Open the policy editor</a></div></div><div id="_R_4altmdb_-panel" role="tabpanel" aria-labelledby="_R_4altmdb_-rbac" class="liquid-glass-bezel overflow-hidden rounded-2xl border border-slate-200 dark:border-white/10"><div class="flex items-center justify-between gap-3 border-b border-slate-200 bg-slate-50/80 px-4 py-3 dark:border-white/10 dark:bg-white/[0.04]"><p class="font-[var(--font-ibm)] text-[11px] uppercase tracking-[0.16em] text-slate-500 dark:text-slate-400">RBAC<!-- --> · <!-- -->Policy UI</p><div class="flex rounded-lg border border-slate-200 p-0.5 dark:border-white/10"><button type="button" class="rounded-md px-3 py-1.5 text-xs font-semibold transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/70 text-slate-600 hover:text-slate-900 dark:text-slate-400 dark:hover:text-white">Policy as code</button><button type="button" class="rounded-md px-3 py-1.5 text-xs font-semibold transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/70 bg-neon-purple text-white">Policy UI</button></div></div><div class="relative aspect-[16/10] bg-slate-100 dark:bg-[#0b1020]"><img alt="Permit policy editor showing a Banker role with View, Approve, and Decline on Loan" loading="lazy" decoding="async" data-nimg="fill" class="object-contain object-top p-4" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=640&amp;q=75 640w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=750&amp;q=75 750w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=828&amp;q=75 828w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2F_next%2Fstatic%2Fmedia%2F1-1.c9f161c3.svg&amp;w=3840&amp;q=75"/></div></div></div><p class="mt-10 max-w-[70ch] text-base leading-relaxed text-slate-600 dark:text-slate-400">When an agent calls a tool, it is still a subject, an action, and a resource.<!-- --> <a class="font-semibold text-neon-purple underline-offset-4 hover:underline" href="/mcp-gateway">MCP Gateway</a> <!-- -->applies the same RBAC, ABAC, and ReBAC policies at the edge — it does not invent a second permission system.</p></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="grid items-center gap-12 md:grid-cols-2"><div class="order-2 liquid-glass-bezel overflow-hidden rounded-2xl md:order-1"><div class="relative aspect-[4/3]"><img alt="A unified policy fabric replacing scattered authorization checks across the stack" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Fcontrol-plane-pillars.png&amp;w=3840&amp;q=75"/></div></div><div class="order-1 md:order-2"><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Authorization as infrastructure</h2><div class="space-y-4 text-lg leading-relaxed text-slate-600 dark:text-slate-400"><div class="flex items-start gap-3"><div class="mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple"></div><p><span class="font-semibold text-slate-900 dark:text-white">Policy UI + policy as code:</span> <!-- -->the whole team can edit permissions; Git still owns the source of truth.</p></div><div class="flex items-start gap-3"><div class="mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple"></div><p><span class="font-semibold text-slate-900 dark:text-white">Local PDP:</span> <!-- -->OPA or Cedar in your VPC, updated by OPAL, decisions next to the workload.</p></div><div class="flex items-start gap-3"><div class="mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple"></div><p><span class="font-semibold text-slate-900 dark:text-white">Any model:</span> <!-- -->RBAC, ABAC, and ReBAC in one engine — not three products to stitch together.</p></div><div class="flex items-start gap-3"><div class="mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple"></div><p><span class="font-semibold text-slate-900 dark:text-white">Any subject:</span> <!-- -->users, services, and agents evaluated with the same check API.</p></div></div><div class="mt-8 rounded-xl border border-slate-200 bg-slate-50 px-5 py-4 dark:border-white/8 dark:bg-white/[0.03]"><p class="text-sm text-slate-600 dark:text-slate-400">Permit.io is the control, data, and enforcement plane — not a dashboard in front of someone else&#x27;s PDP. Author policy in the editor or Git, keep users, roles, and relationships in the graph, and enforce every check locally. Same stack for the software you already ship and the agents you add to it.</p></div><div class="mt-8 flex flex-wrap gap-3"><a href="https://docs.permit.io" target="_blank" rel="noopener noreferrer" class="inline-flex items-center gap-2 rounded-xl border border-neon-purple/30 bg-neon-purple/5 px-6 py-3 text-sm font-semibold text-slate-700 backdrop-blur transition-all hover:border-neon-purple/50 hover:bg-neon-purple/10 dark:text-slate-200">Read the architecture<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><div class="flex flex-wrap gap-3 justify-start "><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></div></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="text-center"><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">The same policies follow agents<!-- --> <span class="text-neon-purple dark:text-purple-400/80">to every tool they call.</span></h2><p class="mx-auto mb-14 max-w-3xl text-lg leading-relaxed text-slate-600 dark:text-slate-400">Put the MCP Gateway URL in front of an upstream server and enforce the same RBAC, ABAC, and ReBAC graph you already use in APIs and data. One policy plane — session, service, row.</p></div><figure class="border-t-2 border-slate-900 pt-5 [&amp;_*]:![text-shadow:none] dark:border-white "><p class="text-base font-semibold text-slate-900 dark:text-white">One agent action, four enforcement points</p><div class="mt-5"><div class="flex flex-col gap-4 md:flex-row md:items-stretch"><div class="flex items-center gap-3 rounded-xl border border-slate-200 bg-slate-50 px-4 py-3 dark:border-white/10 dark:bg-white/[0.02] md:w-40 md:flex-col md:justify-center md:text-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot h-6 w-6 text-slate-700 dark:text-slate-200" aria-hidden="true"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg><span><span class="block text-sm font-semibold text-slate-900 dark:text-white">AI agent</span><span class="block text-xs text-slate-500 dark:text-slate-400">acting for a person</span></span></div><ol class="grid flex-1 gap-3 sm:grid-cols-2 lg:grid-cols-4"><li class="flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-workflow h-4 w-4 text-slate-500 dark:text-slate-400" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg>MCP gateway</span><span class="mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400">May this agent call this tool, with these arguments?</span><span class="mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200"><span aria-hidden="true" class="h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400"></span>policy check</span></li><li class="flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-network h-4 w-4 text-slate-500 dark:text-slate-400" aria-hidden="true"><rect x="16" y="16" width="6" height="6" rx="1"></rect><rect x="2" y="16" width="6" height="6" rx="1"></rect><rect x="9" y="2" width="6" height="6" rx="1"></rect><path d="M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"></path><path d="M12 12V8"></path></svg>API gateway</span><span class="mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400">May this delegated token reach this endpoint?</span><span class="mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200"><span aria-hidden="true" class="h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400"></span>policy check</span></li><li class="flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-server h-4 w-4 text-slate-500 dark:text-slate-400" aria-hidden="true"><rect width="20" height="8" x="2" y="2" rx="2" ry="2"></rect><rect width="20" height="8" x="2" y="14" rx="2" ry="2"></rect><line x1="6" x2="6.01" y1="6" y2="6"></line><line x1="6" x2="6.01" y1="18" y2="18"></line></svg>Application</span><span class="mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400">May this user approve this record in this tenant?</span><span class="mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200"><span aria-hidden="true" class="h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400"></span>policy check</span></li><li class="flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]"><span class="flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database h-4 w-4 text-slate-500 dark:text-slate-400" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg>Database</span><span class="mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400">May this query read this column?</span><span class="mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200"><span aria-hidden="true" class="h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400"></span>policy check</span></li></ol></div></div><figcaption class="mt-6 max-w-[68ch] border-t border-slate-300 pt-4 text-sm leading-relaxed text-slate-600 dark:border-white/15 dark:text-slate-400">Each layer asks its own question of the same policy and the same identity. A prompt injection that slips past one check still meets the next.</figcaption></figure><div class="mt-14 grid gap-6 sm:grid-cols-2 lg:grid-cols-3"><div class="card-glow group flex flex-col rounded-2xl border border-slate-200 bg-white/60 p-8 backdrop-blur transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><div class="mb-6 inline-flex self-start rounded-xl bg-neon-purple/10 p-3 text-neon-purple"><svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418"></path></svg></div><h3 class="mb-3 text-xl font-bold leading-[1.15] tracking-tight text-slate-900 dark:text-white">Gateway</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">Identify the agent, bind human delegation, and authorize each tool call against policy — not a standing API key.</p></div><div class="card-glow group flex flex-col rounded-2xl border border-slate-200 bg-white/60 p-8 backdrop-blur transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><div class="mb-6 inline-flex self-start rounded-xl bg-neon-purple/10 p-3 text-neon-purple"><svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M5.25 14.25h13.5m-13.5 0a3 3 0 01-3-3m3 3a3 3 0 100 6h13.5a3 3 0 100-6m-16.5-3a3 3 0 013-3h13.5a3 3 0 013 3m-19.5 0a4.5 4.5 0 01.9-2.7L5.737 5.1a3.375 3.375 0 012.7-1.35h7.126c1.062 0 2.062.5 2.7 1.35l2.587 3.45a4.5 4.5 0 01.9 2.7m0 0a3 3 0 01-3 3m0 3h.008v.008h-.008v-.008zm0-6h.008v.008h-.008v-.008zm-3 6h.008v.008h-.008v-.008zm0-6h.008v.008H15v-.008z"></path></svg></div><h3 class="mb-3 text-xl font-bold leading-[1.15] tracking-tight text-slate-900 dark:text-white">Application</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">Enforce the same fine-grained policy in APIs and services with a low-latency PDP next to the workload.</p></div><div class="card-glow group flex flex-col rounded-2xl border border-slate-200 bg-white/60 p-8 backdrop-blur transition-all hover:border-neon-purple/30 sm:col-span-2 lg:col-span-1 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><div class="mb-6 inline-flex self-start rounded-xl bg-neon-purple/10 p-3 text-neon-purple"><svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.5" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125"></path></svg></div><h3 class="mb-3 text-xl font-bold leading-[1.15] tracking-tight text-slate-900 dark:text-white">Data</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">Push the decision down to queries, rows, and columns so an allowed tool call still cannot over-read.</p></div></div><div class="mt-12 rounded-xl border border-purple-200 bg-purple-50 p-6 text-center dark:border-purple-500/10 dark:bg-purple-500/5"><p class="text-base text-slate-600 dark:text-slate-400">The gateway applies the same <span class="font-semibold text-slate-900 dark:text-white">fine-grained authorization</span> as your APIs — RBAC, ABAC, and ReBAC on each tool call, not a second permission system.</p><div class="flex flex-wrap gap-3 justify-center mt-6"><a href="https://app.permit.io/" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base bg-gradient-to-r from-neon-purple to-purple-600 text-white shadow-neon-md hover:shadow-neon-lg">Start building <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="grid items-center gap-12 md:grid-cols-2"><div><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Delegate access. Bind it to intent. Enforce it at runtime.</h2><p class="mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Agents are first-class subjects in the same policy model. You delegate a human&#x27;s permissions, scope them with attributes and relationships, and re-check every action — including when prompt injection tries to change the job.</p><div class="space-y-4"><div class="group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-purple-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-purple-400/25 dark:hover:bg-white/[0.05]"><div class="mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-purple-500 dark:text-purple-400">Human delegation</div><p class="mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400">Bring your own IdP. Grant an agent a subset of a user&#x27;s permissions — never a standing god key.</p></div><div class="group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-cyan-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-cyan-400/25 dark:hover:bg-white/[0.05]"><div class="mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-cyan-600 dark:text-cyan-400">Scoped permissions</div><p class="mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400">Map trust to real FGA: read-only exploration, a single tenant, a relationship on a record, a write that needs approval.</p></div><div class="group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-orange-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-orange-400/25 dark:hover:bg-white/[0.05]"><div class="mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-orange-500 dark:text-orange-400">Intent check</div><p class="mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400">Interrogate the agent at the gateway. If the requested action drifts from the delegated intent, deny it.</p></div><div class="group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-pink-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-pink-400/25 dark:hover:bg-white/[0.05]"><div class="mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-pink-500 dark:text-pink-400">Runtime policy</div><p class="mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400">Evaluate identity, attributes, relationships, and context at decision time — the same PDP path as any other request.</p></div></div></div><button type="button" class="group relative w-full liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-orange-900/10 transition-shadow hover:shadow-purple-500/20" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-_R_17altmdb_" data-state="closed"><div class="relative aspect-[4/3]"><img alt="Check the Akita inspecting an agent identity bound to delegated human permissions" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Fdelegated-access-identity.png&amp;w=3840&amp;q=75"/><div class="absolute inset-0 flex items-center justify-center bg-black/20 transition-colors group-hover:bg-black/40"><span class="flex h-16 w-16 items-center justify-center rounded-full border border-white/30 bg-white/10 backdrop-blur-md transition-transform group-hover:scale-110"><svg viewBox="0 0 24 24" fill="currentColor" class="ml-1 h-7 w-7 text-white" aria-hidden="true"><path d="M8 5v14l11-7z"></path></svg></span></div></div></button></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="grid items-center gap-12 md:grid-cols-2"><div class="order-2 liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-cyan-900/10 md:order-1"><div class="relative aspect-[4/3]"><img alt="Permit PDP running next to microservices, APIs, and databases" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Fadopt-ai-pdp.png&amp;w=3840&amp;q=75"/></div></div><div class="order-1 md:order-2"><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Keep your IdP. Add authorization.</h2><p class="mb-6 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Authentication stays where it is. Permit.io is the missing layer: fine-grained authorization as a service — SDKs, CLI, Terraform, GitOps, and a PDP beside your code.</p><div class="mb-8 space-y-4"><div class="flex items-start gap-3"><svg class="mt-1 h-4 w-4 shrink-0 text-neon-cyan" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg><p class="text-base text-slate-600 dark:text-slate-400"><span class="font-semibold text-slate-900 dark:text-white">Distributed:</span> Decisions happen in-VPC at the edge.</p></div><div class="flex items-start gap-3"><svg class="mt-1 h-4 w-4 shrink-0 text-neon-cyan" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg><p class="text-base text-slate-600 dark:text-slate-400"><span class="font-semibold text-slate-900 dark:text-white">Fast:</span> Low-latency decisions from a PDP running next to your services.</p></div><div class="flex items-start gap-3"><svg class="mt-1 h-4 w-4 shrink-0 text-neon-cyan" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg><p class="text-base text-slate-600 dark:text-slate-400"><span class="font-semibold text-slate-900 dark:text-white">Flexible:</span> RBAC, ABAC, and ReBAC out of the box.</p></div><div class="flex items-start gap-3"><svg class="mt-1 h-4 w-4 shrink-0 text-neon-cyan" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg><p class="text-base text-slate-600 dark:text-slate-400"><span class="font-semibold text-slate-900 dark:text-white">Open:</span> Built on OPA, Cedar, and OPAL.</p></div></div><div class="rounded-xl border border-slate-200 bg-slate-50 px-5 py-4 dark:border-white/8 dark:bg-white/[0.03]"><p class="text-sm text-slate-600 dark:text-slate-400">Works with your identity provider, gateways, APIs, cloud, and policy engines. Managed or self-hosted. Hybrid by design — including when the caller is an agent.</p></div><div class="mt-8 flex flex-wrap gap-3"><a href="https://docs.permit.io" target="_blank" rel="noopener noreferrer" class="inline-flex items-center gap-2 rounded-xl border border-neon-purple/30 bg-neon-purple/5 px-6 py-3 text-sm font-semibold text-slate-700 backdrop-blur transition-all hover:border-neon-purple/50 hover:bg-neon-purple/10 dark:text-slate-200">Read the docs</a><div class="flex flex-wrap gap-3 justify-start "><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></div></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><h2 class="mb-16 text-center text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Developers first. The rest of the company can finally help.</h2><div class="grid gap-6 md:grid-cols-2"><div class="card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><h3 class="mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple">Developers</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">SDKs, APIs, Terraform, GitOps, and a local PDP. Policy as code you can review in a pull request — including when the subject is an agent.</p></div><div class="card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><h3 class="mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple">Architects</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">One authorization plane across apps, APIs, data, and MCP. RBAC, ABAC, and ReBAC without stitching point products.</p></div><div class="card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><h3 class="mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple">Security &amp; IAM</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">Least privilege, human delegation, decision traces, and a path to AI features that does not bypass the policy you already wrote.</p></div><div class="card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]"><h3 class="mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple">Product &amp; ops</h3><p class="flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400">A no-code policy editor, embedded Elements, and approval flows so support and customers can manage access without a deploy.</p></div></div><div class="mt-20 grid items-center gap-12 md:grid-cols-2"><div><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-4xl">Watch the decisions, not just the logs</h2><div class="space-y-5"><div class="flex items-start gap-3"><svg class="mt-0.5 h-5 w-5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M2.036 12.322a1.012 1.012 0 010-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178z"></path><path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path></svg><div><h4 class="font-semibold text-slate-900 dark:text-white">Monitor</h4><p class="text-base text-slate-600 dark:text-slate-400">Agents that watch authorization decisions and audit logs.</p></div></div><div class="flex items-start gap-3"><svg class="mt-0.5 h-5 w-5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z"></path></svg><div><h4 class="font-semibold text-slate-900 dark:text-white">Detect</h4><p class="text-base text-slate-600 dark:text-slate-400">Spot anomalies static roles miss — including agent drift.</p></div></div><div class="flex items-start gap-3"><svg class="mt-0.5 h-5 w-5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M9 12.75L11.25 15 15 9.75m-3-7.036A11.959 11.959 0 013.598 6 11.99 11.99 0 003 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285z"></path></svg><div><h4 class="font-semibold text-slate-900 dark:text-white">Recommend</h4><p class="text-base text-slate-600 dark:text-slate-400">Propose tighter policies back into the same GitOps flow.</p></div></div></div></div><div class="liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-purple-900/10"><div class="relative aspect-[4/3]"><img alt="Guardian Check monitoring authorization dashboards and decision traces" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Fteams-guardian.png&amp;w=3840&amp;q=75"/></div></div></div><div class="mt-12 text-center"><div class="flex flex-wrap gap-3 justify-center "><a href="https://app.permit.io/" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base bg-gradient-to-r from-neon-purple to-purple-600 text-white shadow-neon-md hover:shadow-neon-lg">Start building <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="grid items-center gap-12 md:grid-cols-2"><div><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Control, data, and enforcement in one stack</h2><p class="mb-6 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Authorization is more than a yes/no. Permit.io is the control, data, and enforcement plane: you author policy in the editor or Git, users, roles, and relationships live in the graph, and a local PDP enforces every check — from the API call to the row, including the agent tool call in between.</p><p class="mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400">One platform for application permissions and agent permissions. Same models. Same check. Same logs.</p><div class="flex flex-wrap gap-2"><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>RBAC, ABAC, and ReBAC</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Policy as code</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Embedded approval &amp; access UIs</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Audit logs &amp; decision traces</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Hybrid PDP deployment</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 shrink-0 text-neon-purple" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Apps, APIs, agents, and data</div></div></div><div class="liquid-glass-bezel overflow-hidden rounded-2xl"><div class="relative aspect-[4/3]"><img alt="Authorization enforced from application request through APIs to data, including agent tool calls" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Fplatform-chain.png&amp;w=3840&amp;q=75"/></div></div></div><div class="mt-14 liquid-glass-bezel overflow-hidden rounded-2xl"><div class="relative aspect-[16/9] overflow-hidden rounded-xl"><img alt="Permit control plane: policy editor, GitOps, audit logs, and embedded authorization elements" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Funified-control-stack.png&amp;w=3840&amp;q=75"/><div class="absolute inset-0 bg-white/50 dark:bg-transparent dark:bg-gradient-to-t dark:from-deep-bg dark:via-deep-bg/80 dark:to-deep-bg/40"></div><div class="absolute inset-0 flex flex-col items-center justify-end px-8 pb-8 text-center"><div><p class="font-rajdhani text-sm font-bold uppercase tracking-widest text-neon-purple md:text-base">Around the decision</p><p class="mt-3 text-2xl font-bold text-slate-900 dark:text-white md:text-4xl">Elements, GitOps, and audit in one flow</p><p class="mx-auto mt-3 max-w-2xl text-base leading-relaxed text-slate-600 dark:text-slate-200 md:text-lg">Embed user management, approval flows, and audit logs in your product. Manage policy in Git. Propagate every decision to the logger you already use.</p></div></div></div></div><div class="flex flex-wrap gap-3 justify-center mt-10"><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></section><div class="section-divider"></div><section class="fade-in-section relative px-6 py-16 md:py-20"><div class="mx-auto max-w-6xl"><div class="grid items-center gap-12 md:grid-cols-2"><div class="order-2 liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-purple-900/10 md:order-1"><div class="relative aspect-[4/3]"><img alt="Check the Akita as a superhero with compliance certification badges floating around" loading="lazy" decoding="async" data-nimg="fill" class="object-cover" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Ftrust-superhero.png&amp;w=3840&amp;q=75"/></div></div><div class="order-1 md:order-2"><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Trusted where access control is mission-critical</h2><p class="mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400">From regulated workloads to high-scale product platforms, Permit.io is the authorization layer developers put in front of apps, APIs, and agents — without giving up speed, control, or where the PDP runs. Built for production scale, with every decision made next to your services.</p><div class="mb-8 border-y border-neon-purple/20 py-5"><p class="mb-3 text-xs font-semibold uppercase tracking-[0.12em] text-neon-purple">Nexus PDP, measured</p><dl class="grid grid-cols-3 gap-4"><div class="flex flex-col"><dt class="order-2 mt-1 text-sm leading-snug text-slate-600 dark:text-slate-400">P99, RBAC check</dt><dd class="order-1 text-2xl font-bold tabular-nums tracking-tight text-neon-orange md:text-3xl">5.6 ms</dd></div><div class="flex flex-col"><dt class="order-2 mt-1 text-sm leading-snug text-slate-600 dark:text-slate-400">P99, 3-hop ReBAC</dt><dd class="order-1 text-2xl font-bold tabular-nums tracking-tight text-neon-orange md:text-3xl">11.3 ms</dd></div><div class="flex flex-col"><dt class="order-2 mt-1 text-sm leading-snug text-slate-600 dark:text-slate-400">RBAC checks per 2 CPU pod</dt><dd class="order-1 text-2xl font-bold tabular-nums tracking-tight text-neon-orange md:text-3xl">658/s</dd></div></dl><p class="mt-4 text-sm text-slate-600 dark:text-slate-400">Server-side latency on one 2 CPU pod, on a beta build.<!-- --> <a class="font-semibold text-neon-purple underline-offset-4 hover:underline" href="/nexus-pdp#benchmarks">See the benchmarks</a></p></div><div class="flex flex-wrap gap-2"><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>SOC 2 Type II</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>HIPAA / GDPR / CCPA</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Low-latency PDP</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Hybrid deployment</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>GitOps-ready</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Fine-grained policy</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>Human-to-agent delegation</div><div class="flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400"><svg class="h-3.5 w-3.5 text-neon-purple" viewBox="0 0 24 24" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"></path></svg>High availability</div></div><div class="flex flex-wrap gap-3 justify-start mt-8"><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div></div></div></div></section><div class="section-divider"></div><section class="fade-in-section relative overflow-hidden px-6 py-16 md:py-20"><div class="pointer-events-none absolute inset-0"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover opacity-30" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="100vw" srcSet="/_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=640&amp;q=75 640w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=750&amp;q=75 750w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=828&amp;q=75 828w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=1080&amp;q=75 1080w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=1200&amp;q=75 1200w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=1920&amp;q=75 1920w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=2048&amp;q=75 2048w, /_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=3840&amp;q=75 3840w" src="/_next/image?url=%2Fimages%2Fsections%2Fcta-portal-sunrise.png&amp;w=3840&amp;q=75"/><div class="absolute inset-0 bg-gradient-to-b from-deep-bg via-deep-bg/40 to-deep-bg"></div><div class="absolute inset-0 bg-gradient-to-r from-deep-bg/60 via-transparent to-deep-bg/60"></div></div><div class="relative z-10 mx-auto max-w-3xl text-center"><h2 class="mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl">Never build permissions again</h2><p class="mb-4 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Fine-grained authorization for your application, your APIs, and your agents.<!-- --> <!-- -->RBAC, ABAC, and ReBAC — as a service.</p><p class="mb-10 text-lg leading-relaxed text-slate-600 dark:text-slate-400">Ship faster —<!-- --> <span class="font-semibold text-neon-purple">without hiding access control in code.</span></p><div class="flex flex-wrap gap-3 justify-center "><a href="https://app.permit.io/" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base bg-gradient-to-r from-neon-purple to-purple-600 text-white shadow-neon-md hover:shadow-neon-lg">Start building <svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M17 8l4 4m0 0l-4 4m4-4H3"></path></svg></a><a class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-neon-purple/35 bg-neon-purple/5 text-slate-800 hover:border-neon-purple/60 hover:bg-neon-purple/10 dark:text-slate-100" href="/demo">Book a demo</a><a href="https://io.permit.io/slack" target="_blank" rel="noopener noreferrer" class="btn-hover-lift inline-flex items-center justify-center gap-2 rounded-xl px-6 py-3 text-sm font-semibold transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-neon-purple/60 md:text-base border border-slate-900 bg-slate-900 text-white hover:bg-slate-800 dark:border-white/20 dark:bg-white/[0.08] dark:hover:border-white/35 dark:hover:bg-white/[0.14]"><svg viewBox="1.5 1.5 15 15" aria-hidden="true" focusable="false" class="shrink-0 h-[1.1em] w-[1.1em]"><path fill="currentColor" d="M4.89505 10.8858C4.89505 11.6982 4.23149 12.3617 3.4192 12.3617C2.60691 12.3617 1.94336 11.6982 1.94336 10.8858C1.94336 10.0736 2.60691 9.40999 3.4192 9.40999H4.89505V10.8858Z"></path><path fill="currentColor" d="M5.6387 10.8858C5.6387 10.0736 6.30225 9.40999 7.11454 9.40999C7.92686 9.40999 8.59038 10.0736 8.59038 10.8858V14.5812C8.59038 15.3935 7.92686 16.057 7.11454 16.057C6.30225 16.057 5.6387 15.3935 5.6387 14.5812V10.8858Z"></path><path fill="currentColor" d="M7.11454 4.89603C6.30225 4.89603 5.6387 4.23247 5.6387 3.42018C5.6387 2.60789 6.30225 1.94434 7.11454 1.94434C7.92686 1.94434 8.59038 2.60789 8.59038 3.42018V4.89603H7.11454Z"></path><path fill="currentColor" d="M7.11454 5.63968C7.92686 5.63968 8.59038 6.30323 8.59038 7.11552C8.59038 7.92784 7.92686 8.59136 7.11454 8.59136H3.4192C2.60691 8.59136 1.94336 7.92784 1.94336 7.11552C1.94336 6.30323 2.60691 5.63968 3.4192 5.63968H7.11454Z"></path><path fill="currentColor" d="M13.1044 7.11552C13.1044 6.30323 13.7679 5.63968 14.5802 5.63968C15.3925 5.63968 16.056 6.30323 16.056 7.11552C16.056 7.92784 15.3925 8.59136 14.5802 8.59136H13.1044V7.11552Z"></path><path fill="currentColor" d="M12.3607 7.11552C12.3607 7.92784 11.6972 8.59136 10.8849 8.59136C10.0726 8.59136 9.40901 7.92784 9.40901 7.11552V3.42018C9.40901 2.60789 10.0726 1.94434 10.8849 1.94434C11.6972 1.94434 12.3607 2.60789 12.3607 3.42018V7.11552Z"></path><path fill="currentColor" d="M10.8849 13.1054C11.6972 13.1054 12.3607 13.7689 12.3607 14.5812C12.3607 15.3935 11.6972 16.057 10.8849 16.057C10.0726 16.057 9.40901 15.3935 9.40901 14.5812V13.1054H10.8849Z"></path><path fill="currentColor" d="M10.8849 12.3617C10.0726 12.3617 9.40901 11.6982 9.40901 10.8858C9.40901 10.0736 10.0726 9.40999 10.8849 9.40999H14.5802C15.3925 9.40999 16.056 10.0736 16.056 10.8858C16.056 11.6982 15.3925 12.3617 14.5802 12.3617H10.8849Z"></path></svg>Talk with our engineers</a></div><a href="https://docs.permit.io" target="_blank" rel="noopener noreferrer" class="mt-6 inline-block text-sm font-semibold text-slate-600 underline-offset-4 hover:text-slate-900 hover:underline dark:text-slate-400 dark:hover:text-white">Or explore the docs</a></div></section></div><!--$--><!--/$--></div><script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};
$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n3:I[64421,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"default\"]\n4:I[5518,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"default\"]\n5:I[14939,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"default\"]\n6:I[6032,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"default\"]\n21:I[27123,[],\"\"]\n:HL[\"/_next/static/media/0484562807a97172-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/4c9affa5bc8f420e-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/6e1768769e6f59a2-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/8888a3826f4a3af4-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/ab2e3a11646b0499-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/b957ea75a84b6ea7-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/d3ebbfd689654d3a-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/eafabf029ad39a43-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/66899c74941628e7.css\",\"style\"]\n:HL[\"/_next/static/css/c06f014b51bd17e1.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Esmojo1u17lCZcrBpzgow\",\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/66899c74941628e7.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/c06f014b51bd17e1.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],\"$L2\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@graph\\\":[{\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"Permit.io\\\",\\\"url\\\":\\\"https://www.permit.io\\\",\\\"description\\\":\\\"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.\\\",\\\"sameAs\\\":[\\\"https://github.com/permitio\\\",\\\"https://x.com/permit_io\\\",\\\"https://www.linkedin.com/company/permitio/\\\"]},{\\\"@type\\\":\\\"SoftwareApplication\\\",\\\"name\\\":\\\"Permit.io\\\",\\\"applicationCategory\\\":\\\"DeveloperApplication\\\",\\\"operatingSystem\\\":\\\"Cloud\\\",\\\"description\\\":\\\"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.\\\",\\\"url\\\":\\\"https://www.permit.io\\\",\\\"slogan\\\":\\\"Runtime Access Control for the AI Era\\\"}]}\"}}],[\"$\",\"$L3\",null,{}],[\"$\",\"$L4\",null,{}],[\"$\",\"div\",null,{\"className\":\"sticky top-0 z-0\",\"children\":[\"$\",\"$L5\",null,{}]}],[\"$\",\"div\",null,{\"className\":\"relative z-10 bg-deep-bg\",\"children\":[[\"$\",\"div\",null,{\"className\":\"section-divider\"}],[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"section-divider\"}],[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Stop rebuilding permissions in application code\"}],[\"$\",\"p\",null,{\"className\":\"mb-6 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Most products start with a roles table and a pile of if statements. Then tenants show up. Then attributes. Then relationship graphs. Then agents acting on behalf of users.\"}],[\"$\",\"p\",null,{\"className\":\"mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Fine-grained authorization is infrastructure — RBAC, ABAC, and ReBAC with an audit trail — not a feature you rewrite every quarter.\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4\",\"children\":[[\"$\",\"div\",\"Role explosion\",{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange\"}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":[\"Role explosion\",\":\"]}],\" \",[\"$\",\"span\",null,{\"className\":\"text-sm text-slate-600 dark:text-slate-400\",\"children\":\"Static roles cannot express tenancy, ownership, or context without multiplying forever.\"}]]}]]}],[\"$\",\"div\",\"Checks in code\",{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange\"}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":[\"Checks in code\",\":\"]}],\" \",[\"$\",\"span\",null,{\"className\":\"text-sm text-slate-600 dark:text-slate-400\",\"children\":\"if/else authorization cannot be reviewed by security, reused by agents, or proven in an audit.\"}]]}]]}],[\"$\",\"div\",\"Missing models\",{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange\"}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":[\"Missing models\",\":\"]}],\" \",[\"$\",\"span\",null,{\"className\":\"text-sm text-slate-600 dark:text-slate-400\",\"children\":\"ABAC and ReBAC get bolted on too late, after the roles table has already calcified.\"}]]}]]}],\"$L7\"]}],\"$L8\"]}],\"$L9\"]}]}]}],\"$La\",\"$Lb\",\"$Lc\",\"$Ld\",\"$Le\",\"$Lf\",\"$L10\",\"$L11\",\"$L12\",\"$L13\",\"$L14\",\"$L15\",\"$L16\",\"$L17\",\"$L18\",\"$L19\",\"$L1a\",\"$L1b\",\"$L1c\",\"$L1d\"]}]],null,\"$L1e\"]}],{},null,false,false]},[\"$L1f\",[],[]],false,false],\"$L20\",false]],\"m\":\"$undefined\",\"G\":[\"$21\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"22:I[56451,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"default\"]\n23:I[38437,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"Image\"]\n2c:I[84321,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"default\"]\n39:I[21636,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"VideoLightboxButton\"]\n46:I[98500,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"8409\",\"static/chunks/8409-505eb86ad23835b9.js\",\"2590\",\"static/chunks/2590-f13d7a320cf0a64a.js\",\"6095\",\"static/chunks/6095-35fc3d9cb50d5f2d.js\",\"6451\",\"static/chunks/6451-da00dbfb32862c7c.js\",\"8974\",\"static/chunks/app/page-dc37d2a4833f189e.js\"],\"\"]\n4e:I[90484,[],\"OutletBoundary\"]\n4f:\"$Sreact.suspense\"\n51:I[90484,[],\"ViewportBoundary\"]\n53:I[90484,[],\"MetadataBoundary\"]\n55:I[90285,[\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"7177\",\"static/chunks/app/layout-1d1e78d3f1165fba.js\"],\"GoogleTagManager\"]\n56:I[53435,[\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"7177\",\"static/chunks/app/layout-1d1e78d3f1165fba.js\"],\"ThemeProvider\"]\n57:I[24799,[\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"7177\",\"static/chunks/app/layout-1d1e78d3f1165fba.js\"],\"default\"]\n58:I[57121,[],\"\"]\n59:I[87460,[\"8437\",\"static/chunks/8437-9ad1fbb2e149c9c4.js\",\"8039\",\"static/chunks/app/error-eb3fc51c79f89d12.js\"],\"default\"]\n5a:I[74581,[],\"\"]\n5b:I[56536,[\"8500\",\"static/chunks/8500-2ca12cb6ef6dc06e.js\",\"1619\",\"static/chunks/1619-d6355f845ce09f88.js\",\"7177\",\"static/chunks/app/layout-1d1e78d3f1165fba.js\"],\"default\"]\n7:[\"$\",\"div\",\"New subjects\",{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-neon-orange\"}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":[\"New subjects\",\":\"]}],\" \",[\"$\",\"span\",null,{\"className\":\"text-sm text-slate-600 dark:text-slate-400\",\"children\":\"Services and AI agents need the same policy as users — not a second permission system.\"}]]}]]}]\n8:[\"$\",\"$L22\",null,{\"section\":\"problem\",\"ctas\":[\"demo\",\"talk\"],\"align\":\"start\",\"className\":\"mt-8\"}]\n9:[\"$\",\"div\",null,{\"className\":\"liquid-glass-bezel overflow-hidden rounded-2xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/sections/legacy-iam-chaos-new.png\",\"alt\":\"Authorization sprawl — ad-hoc roles, services, and agents without a single policy plane\",\"fill\":true,\"className\":\"object-cover\"}]}]}]\na:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"section\",null,{\"id\":\"how-it-works\",\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mx-auto mb-10 max-w-3xl text-center\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-5 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Authentication says who. Permit decides what.\"}],[\"$\",\"p\",null,{\"className\":\"text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Keep your identity provider for sign-in. Permit is the authorization layer behind it: a policy decision point that answers one question for every human, service, and agent, and logs why.\"}]]}],[\"$\",\"figure\",null,{\"className\":\"border-t-2 border-slate-900 pt-5 [\u0026_*]:![text-shadow:none] dark:border-white \",\"children\":[[\"$\",\"p\",null,{\"className\":\"text-base font-semibold text-slate-900 dark:text-white\",\"children\":\"How a permission decision is made\"}],[\"$\",\"div\",null,{\"className\":\"mt-5\",\"children\":[[\"$\",\"ol\",null,{\"className\":\"grid gap-3 md:grid-cols-5 md:gap-0\",\"children\":[[\"$\",\"li\",\"Identity\",{\"className\":\"relative flex md:flex-col\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]\"}],[\"$\",\"div\",null,{\"className\":\"flex gap-4 md:flex-col md:items-center md:px-2 md:text-center\",\"children\":[[\"$\",\"span\",null,{\"className\":\"relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200\",\"children\":[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-fingerprint-pattern h-[18px] w-[18px]\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"1nerag\",{\"d\":\"M12 10a2 2 0 0 0-2 2c0 1.02-.1 2.51-.26 4\"}],[\"$\",\"path\",\"o46ks0\",{\"d\":\"M14 13.12c0 2.38 0 6.38-1 8.88\"}],[\"$\",\"path\",\"ptglia\",{\"d\":\"M17.29 21.02c.12-.6.43-2.3.5-3.02\"}],[\"$\",\"path\",\"ydlgp0\",{\"d\":\"M2 12a10 10 0 0 1 18-6\"}],[\"$\",\"path\",\"1gqxmh\",{\"d\":\"M2 16h.01\"}],[\"$\",\"path\",\"drycrb\",{\"d\":\"M21.8 16c.2-2 .131-5.354 0-6\"}],[\"$\",\"path\",\"1tidbn\",{\"d\":\"M5 19.5C5.5 18 6 15 6 12a6 6 0 0 1 .34-2\"}],[\"$\",\"path\",\"13wd9y\",{\"d\":\"M8.65 22c.21-.66.45-1.32.57-2\"}],[\"$\",\"path\",\"1fr1j5\",{\"d\":\"M9 6.8a6 6 0 0 1 9 5.2v2\"}],\"$undefined\"]}]}],[\"$\",\"span\",null,{\"className\":\"pb-4 md:pb-0 md:pt-4\",\"children\":[[\"$\",\"span\",null,{\"className\":\"block text-sm font-semibold text-slate-900 dark:text-white\",\"children\":\"Identity\"}],[\"$\",\"span\",null,{\"className\":\"mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"A human, service, or AI agent, authenticated by your identity provider.\"}]]}]]}]]}],[\"$\",\"li\",\"Request\",{\"className\":\"relative flex md:flex-col\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]\"}],[\"$\",\"div\",null,{\"className\":\"flex gap-4 md:flex-col md:items-center md:px-2 md:text-center\",\"children\":[[\"$\",\"span\",null,{\"className\":\"relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200\",\"children\":[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-send h-[18px] w-[18px]\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"1ffxy3\",{\"d\":\"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z\"}],\"$L24\",\"$undefined\"]}]}],\"$L25\"]}]]}],\"$L26\",\"$L27\",\"$L28\"]}],\"$L29\"]}],\"$L2a\"]}],\"$L2b\"]}]}]\n"])</script><script>self.__next_f.push([1,"c:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\nd:[\"$\",\"$L2c\",null,{}]\ne:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"f:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"order-2 liquid-glass-bezel overflow-hidden rounded-2xl md:order-1\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/sections/control-plane-pillars.png\",\"alt\":\"A unified policy fabric replacing scattered authorization checks across the stack\",\"fill\":true,\"className\":\"object-cover\"}]}]}],[\"$\",\"div\",null,{\"className\":\"order-1 md:order-2\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Authorization as infrastructure\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple\"}],[\"$\",\"p\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Policy UI + policy as code:\"}],\" \",\"the whole team can edit permissions; Git still owns the source of truth.\"]}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple\"}],[\"$\",\"p\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Local PDP:\"}],\" \",\"OPA or Cedar in your VPC, updated by OPAL, decisions next to the workload.\"]}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple\"}],[\"$\",\"p\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Any model:\"}],\" \",\"RBAC, ABAC, and ReBAC in one engine — not three products to stitch together.\"]}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mt-2 h-2 w-2 shrink-0 rounded-full bg-neon-purple\"}],[\"$\",\"p\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Any subject:\"}],\" \",\"users, services, and agents evaluated with the same check API.\"]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"mt-8 rounded-xl border border-slate-200 bg-slate-50 px-5 py-4 dark:border-white/8 dark:bg-white/[0.03]\",\"children\":[\"$\",\"p\",null,{\"className\":\"text-sm text-slate-600 dark:text-slate-400\",\"children\":\"Permit.io is the control, data, and enforcement plane — not a dashboard in front of someone else's PDP. Author policy in the editor or Git, keep users, roles, and relationships in the graph, and enforce every check locally. Same stack for the software you already ship and the agents you add to it.\"}]}],[\"$\",\"div\",null,{\"className\":\"mt-8 flex flex-wrap gap-3\",\"children\":[[\"$\",\"a\",null,{\"href\":\"https://docs.permit.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"inline-flex items-center gap-2 rounded-xl border border-neon-purple/30 bg-neon-purple/5 px-6 py-3 text-sm font-semibold text-slate-700 backdrop-blur transition-all hover:border-neon-purple/50 hover:bg-neon-purple/10 dark:text-slate-200\",\"children\":[\"Read the architecture\",[\"$\",\"svg\",null,{\"className\":\"h-4 w-4\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M17 8l4 4m0 0l-4 4m4-4H3\"}]}]]}],[\"$\",\"$L22\",null,{\"section\":\"control-plane\",\"ctas\":[\"talk\"],\"align\":\"start\"}]]}]]}]]}]}]}]\n"])</script><script>self.__next_f.push([1,"10:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"11:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[[\"$\",\"div\",null,{\"className\":\"text-center\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":[\"The same policies follow agents\",\" \",[\"$\",\"span\",null,{\"className\":\"text-neon-purple dark:text-purple-400/80\",\"children\":\"to every tool they call.\"}]]}],[\"$\",\"p\",null,{\"className\":\"mx-auto mb-14 max-w-3xl text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Put the MCP Gateway URL in front of an upstream server and enforce the same RBAC, ABAC, and ReBAC graph you already use in APIs and data. One policy plane — session, service, row.\"}]]}],[\"$\",\"figure\",null,{\"className\":\"border-t-2 border-slate-900 pt-5 [\u0026_*]:![text-shadow:none] dark:border-white \",\"children\":[[\"$\",\"p\",null,{\"className\":\"text-base font-semibold text-slate-900 dark:text-white\",\"children\":\"One agent action, four enforcement points\"}],[\"$\",\"div\",null,{\"className\":\"mt-5\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-4 md:flex-row md:items-stretch\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3 rounded-xl border border-slate-200 bg-slate-50 px-4 py-3 dark:border-white/10 dark:bg-white/[0.02] md:w-40 md:flex-col md:justify-center md:text-center\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-bot h-6 w-6 text-slate-700 dark:text-slate-200\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"hb8ula\",{\"d\":\"M12 8V4H8\"}],[\"$\",\"rect\",\"enze0r\",{\"width\":\"16\",\"height\":\"12\",\"x\":\"4\",\"y\":\"8\",\"rx\":\"2\"}],[\"$\",\"path\",\"vft8re\",{\"d\":\"M2 14h2\"}],[\"$\",\"path\",\"4cs60a\",{\"d\":\"M20 14h2\"}],[\"$\",\"path\",\"1xurst\",{\"d\":\"M15 13v2\"}],[\"$\",\"path\",\"rq6x2g\",{\"d\":\"M9 13v2\"}],\"$undefined\"]}],[\"$\",\"span\",null,{\"children\":[[\"$\",\"span\",null,{\"className\":\"block text-sm font-semibold text-slate-900 dark:text-white\",\"children\":\"AI agent\"}],[\"$\",\"span\",null,{\"className\":\"block text-xs text-slate-500 dark:text-slate-400\",\"children\":\"acting for a person\"}]]}]]}],[\"$\",\"ol\",null,{\"className\":\"grid flex-1 gap-3 sm:grid-cols-2 lg:grid-cols-4\",\"children\":[[\"$\",\"li\",\"MCP gateway\",{\"className\":\"flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]\",\"children\":[[\"$\",\"span\",null,{\"className\":\"flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-workflow h-4 w-4 text-slate-500 dark:text-slate-400\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"rect\",\"by2w9f\",{\"width\":\"8\",\"height\":\"8\",\"x\":\"3\",\"y\":\"3\",\"rx\":\"2\"}],[\"$\",\"path\",\"xkn7yn\",{\"d\":\"M7 11v4a2 2 0 0 0 2 2h4\"}],[\"$\",\"rect\",\"1cgmvn\",{\"width\":\"8\",\"height\":\"8\",\"x\":\"13\",\"y\":\"13\",\"rx\":\"2\"}],\"$undefined\"]}],\"MCP gateway\"]}],[\"$\",\"span\",null,{\"className\":\"mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"May this agent call this tool, with these arguments?\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400\"}],\"policy check\"]}]]}],[\"$\",\"li\",\"API gateway\",{\"className\":\"flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]\",\"children\":[[\"$\",\"span\",null,{\"className\":\"flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-network h-4 w-4 text-slate-500 dark:text-slate-400\",\"aria-hidden\":\"true\",\"children\":[\"$L2d\",\"$L2e\",\"$L2f\",\"$L30\",\"$L31\",\"$undefined\"]}],\"API gateway\"]}],\"$L32\",\"$L33\"]}],\"$L34\",\"$L35\"]}]]}]}],\"$L36\"]}],\"$L37\",\"$L38\"]}]}]\n"])</script><script>self.__next_f.push([1,"12:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"13:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Delegate access. Bind it to intent. Enforce it at runtime.\"}],[\"$\",\"p\",null,{\"className\":\"mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Agents are first-class subjects in the same policy model. You delegate a human's permissions, scope them with attributes and relationships, and re-check every action — including when prompt injection tries to change the job.\"}],[\"$\",\"div\",null,{\"className\":\"space-y-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-purple-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-purple-400/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-purple-500 dark:text-purple-400\",\"children\":\"Human delegation\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Bring your own IdP. Grant an agent a subset of a user's permissions — never a standing god key.\"}]]}],[\"$\",\"div\",null,{\"className\":\"group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-cyan-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-cyan-400/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-cyan-600 dark:text-cyan-400\",\"children\":\"Scoped permissions\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Map trust to real FGA: read-only exploration, a single tenant, a relationship on a record, a write that needs approval.\"}]]}],[\"$\",\"div\",null,{\"className\":\"group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-orange-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-orange-400/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-orange-500 dark:text-orange-400\",\"children\":\"Intent check\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Interrogate the agent at the gateway. If the requested action drifts from the delegated intent, deny it.\"}]]}],[\"$\",\"div\",null,{\"className\":\"group rounded-xl border border-slate-200 bg-slate-50/60 p-6 transition-all hover:border-pink-400/30 dark:border-white/[0.06] dark:bg-white/[0.03] dark:hover:border-pink-400/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-1 font-rajdhani text-xs font-bold uppercase tracking-widest text-pink-500 dark:text-pink-400\",\"children\":\"Runtime policy\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-sm leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Evaluate identity, attributes, relationships, and context at decision time — the same PDP path as any other request.\"}]]}]]}]]}],[\"$\",\"$L39\",null,{\"youtubeId\":\"NyCO47Xnefk\",\"iframeTitle\":\"Agent identity and fine-grained authorization\",\"dialogAriaLabel\":\"Agent identity and fine-grained authorization video\",\"children\":[\"$\",\"button\",null,{\"type\":\"button\",\"className\":\"group relative w-full liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-orange-900/10 transition-shadow hover:shadow-purple-500/20\",\"children\":\"$L3a\"}]}]]}]}]}]\n"])</script><script>self.__next_f.push([1,"14:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"15:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"order-2 liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-cyan-900/10 md:order-1\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/sections/adopt-ai-pdp.png\",\"alt\":\"Permit PDP running next to microservices, APIs, and databases\",\"fill\":true,\"className\":\"object-cover\"}]}]}],[\"$\",\"div\",null,{\"className\":\"order-1 md:order-2\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Keep your IdP. Add authorization.\"}],[\"$\",\"p\",null,{\"className\":\"mb-6 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Authentication stays where it is. Permit.io is the missing layer: fine-grained authorization as a service — SDKs, CLI, Terraform, GitOps, and a PDP beside your code.\"}],[\"$\",\"div\",null,{\"className\":\"mb-8 space-y-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-1 h-4 w-4 shrink-0 text-neon-cyan\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Distributed:\"}],\" Decisions happen in-VPC at the edge.\"]}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-1 h-4 w-4 shrink-0 text-neon-cyan\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Fast:\"}],\" Low-latency decisions from a PDP running next to your services.\"]}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-1 h-4 w-4 shrink-0 text-neon-cyan\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Flexible:\"}],\" RBAC, ABAC, and ReBAC out of the box.\"]}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-1 h-4 w-4 shrink-0 text-neon-cyan\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Open:\"}],\" Built on OPA, Cedar, and OPAL.\"]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"rounded-xl border border-slate-200 bg-slate-50 px-5 py-4 dark:border-white/8 dark:bg-white/[0.03]\",\"children\":[\"$\",\"p\",null,{\"className\":\"text-sm text-slate-600 dark:text-slate-400\",\"children\":\"Works with your identity provider, gateways, APIs, cloud, and policy engines. Managed or self-hosted. Hybrid by design — including when the caller is an agent.\"}]}],[\"$\",\"div\",null,{\"className\":\"mt-8 flex flex-wrap gap-3\",\"children\":[[\"$\",\"a\",null,{\"href\":\"https://docs.permit.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"inline-flex items-center gap-2 rounded-xl border border-neon-purple/30 bg-neon-purple/5 px-6 py-3 text-sm font-semibold text-slate-700 backdrop-blur transition-all hover:border-neon-purple/50 hover:bg-neon-purple/10 dark:text-slate-200\",\"children\":\"Read the docs\"}],\"$L3b\"]}]]}]]}]}]}]\n"])</script><script>self.__next_f.push([1,"16:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"17:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-16 text-center text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Developers first. The rest of the company can finally help.\"}],[\"$\",\"div\",null,{\"className\":\"grid gap-6 md:grid-cols-2\",\"children\":[[\"$\",\"div\",\"Developers\",{\"className\":\"card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple\",\"children\":\"Developers\"}],[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"SDKs, APIs, Terraform, GitOps, and a local PDP. Policy as code you can review in a pull request — including when the subject is an agent.\"}]]}],[\"$\",\"div\",\"Architects\",{\"className\":\"card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple\",\"children\":\"Architects\"}],[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"One authorization plane across apps, APIs, data, and MCP. RBAC, ABAC, and ReBAC without stitching point products.\"}]]}],[\"$\",\"div\",\"Security \u0026 IAM\",{\"className\":\"card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple\",\"children\":\"Security \u0026 IAM\"}],[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Least privilege, human delegation, decision traces, and a path to AI features that does not bypass the policy you already wrote.\"}]]}],[\"$\",\"div\",\"Product \u0026 ops\",{\"className\":\"card-glow flex flex-col rounded-2xl border border-slate-200 bg-slate-50/60 p-8 transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"mb-3 font-rajdhani text-lg font-bold uppercase tracking-wide text-neon-purple\",\"children\":\"Product \u0026 ops\"}],[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"A no-code policy editor, embedded Elements, and approval flows so support and customers can manage access without a deploy.\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"mt-20 grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-4xl\",\"children\":\"Watch the decisions, not just the logs\"}],[\"$\",\"div\",null,{\"className\":\"space-y-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-0.5 h-5 w-5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M2.036 12.322a1.012 1.012 0 010-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178z\"}],\"$L3c\"]}],\"$L3d\"]}],\"$L3e\",\"$L3f\"]}]]}],\"$L40\"]}],\"$L41\"]}]}]\n"])</script><script>self.__next_f.push([1,"18:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"19:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[[\"$\",\"div\",null,{\"className\":\"grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Control, data, and enforcement in one stack\"}],[\"$\",\"p\",null,{\"className\":\"mb-6 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Authorization is more than a yes/no. Permit.io is the control, data, and enforcement plane: you author policy in the editor or Git, users, roles, and relationships live in the graph, and a local PDP enforces every check — from the API call to the row, including the agent tool call in between.\"}],[\"$\",\"p\",null,{\"className\":\"mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"One platform for application permissions and agent permissions. Same models. Same check. Same logs.\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-wrap gap-2\",\"children\":[[\"$\",\"div\",\"RBAC, ABAC, and ReBAC\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"RBAC, ABAC, and ReBAC\"]}],[\"$\",\"div\",\"Policy as code\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Policy as code\"]}],[\"$\",\"div\",\"Embedded approval \u0026 access UIs\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Embedded approval \u0026 access UIs\"]}],[\"$\",\"div\",\"Audit logs \u0026 decision traces\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Audit logs \u0026 decision traces\"]}],[\"$\",\"div\",\"Hybrid PDP deployment\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Hybrid PDP deployment\"]}],[\"$\",\"div\",\"Apps, APIs, agents, and data\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":\"$L42\"}],\"Apps, APIs, agents, and data\"]}]]}]]}],\"$L43\"]}],\"$L44\",\"$L45\"]}]}]\n"])</script><script>self.__next_f.push([1,"1a:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"1b:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative px-6 py-16 md:py-20\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid items-center gap-12 md:grid-cols-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"order-2 liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-purple-900/10 md:order-1\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/sections/trust-superhero.png\",\"alt\":\"Check the Akita as a superhero with compliance certification badges floating around\",\"fill\":true,\"className\":\"object-cover\"}]}]}],[\"$\",\"div\",null,{\"className\":\"order-1 md:order-2\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Trusted where access control is mission-critical\"}],[\"$\",\"p\",null,{\"className\":\"mb-8 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"From regulated workloads to high-scale product platforms, Permit.io is the authorization layer developers put in front of apps, APIs, and agents — without giving up speed, control, or where the PDP runs. Built for production scale, with every decision made next to your services.\"}],[\"$\",\"div\",null,{\"className\":\"mb-8 border-y border-neon-purple/20 py-5\",\"children\":[[\"$\",\"p\",null,{\"className\":\"mb-3 text-xs font-semibold uppercase tracking-[0.12em] text-neon-purple\",\"children\":\"Nexus PDP, measured\"}],[\"$\",\"dl\",null,{\"className\":\"grid grid-cols-3 gap-4\",\"children\":[[\"$\",\"div\",\"P99, RBAC check\",{\"className\":\"flex flex-col\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"order-2 mt-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"P99, RBAC check\"}],[\"$\",\"dd\",null,{\"className\":\"order-1 text-2xl font-bold tabular-nums tracking-tight text-neon-orange md:text-3xl\",\"children\":\"5.6 ms\"}]]}],[\"$\",\"div\",\"P99, 3-hop ReBAC\",{\"className\":\"flex flex-col\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"order-2 mt-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"P99, 3-hop ReBAC\"}],[\"$\",\"dd\",null,{\"className\":\"order-1 text-2xl font-bold tabular-nums tracking-tight text-neon-orange md:text-3xl\",\"children\":\"11.3 ms\"}]]}],[\"$\",\"div\",\"RBAC checks per 2 CPU pod\",{\"className\":\"flex flex-col\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"order-2 mt-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"RBAC checks per 2 CPU pod\"}],[\"$\",\"dd\",null,{\"className\":\"order-1 text-2xl font-bold tabular-nums tracking-tight text-neon-orange md:text-3xl\",\"children\":\"658/s\"}]]}]]}],[\"$\",\"p\",null,{\"className\":\"mt-4 text-sm text-slate-600 dark:text-slate-400\",\"children\":[\"Server-side latency on one 2 CPU pod, on a beta build.\",\" \",[\"$\",\"$L46\",null,{\"href\":\"/nexus-pdp#benchmarks\",\"className\":\"font-semibold text-neon-purple underline-offset-4 hover:underline\",\"children\":\"See the benchmarks\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-wrap gap-2\",\"children\":[[\"$\",\"div\",\"SOC 2 Type II\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"SOC 2 Type II\"]}],[\"$\",\"div\",\"HIPAA / GDPR / CCPA\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"HIPAA / GDPR / CCPA\"]}],[\"$\",\"div\",\"Low-latency PDP\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[\"$L47\",\"Low-latency PDP\"]}],\"$L48\",\"$L49\",\"$L4a\",\"$L4b\",\"$L4c\"]}],\"$L4d\"]}]]}]}]}]\n"])</script><script>self.__next_f.push([1,"1c:[\"$\",\"div\",null,{\"className\":\"section-divider\"}]\n"])</script><script>self.__next_f.push([1,"1d:[\"$\",\"section\",null,{\"className\":\"fade-in-section relative overflow-hidden px-6 py-16 md:py-20\",\"children\":[[\"$\",\"div\",null,{\"className\":\"pointer-events-none absolute inset-0\",\"children\":[[\"$\",\"$L23\",null,{\"src\":\"/images/sections/cta-portal-sunrise.png\",\"alt\":\"\",\"fill\":true,\"className\":\"object-cover opacity-30\"}],[\"$\",\"div\",null,{\"className\":\"absolute inset-0 bg-gradient-to-b from-deep-bg via-deep-bg/40 to-deep-bg\"}],[\"$\",\"div\",null,{\"className\":\"absolute inset-0 bg-gradient-to-r from-deep-bg/60 via-transparent to-deep-bg/60\"}]]}],[\"$\",\"div\",null,{\"className\":\"relative z-10 mx-auto max-w-3xl text-center\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-6 text-3xl font-bold leading-[1.1] tracking-tight text-slate-900 dark:text-white md:text-5xl\",\"children\":\"Never build permissions again\"}],[\"$\",\"p\",null,{\"className\":\"mb-4 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":[\"Fine-grained authorization for your application, your APIs, and your agents.\",\" \",\"RBAC, ABAC, and ReBAC — as a service.\"]}],[\"$\",\"p\",null,{\"className\":\"mb-10 text-lg leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":[\"Ship faster —\",\" \",[\"$\",\"span\",null,{\"className\":\"font-semibold text-neon-purple\",\"children\":\"without hiding access control in code.\"}]]}],[\"$\",\"$L22\",null,{\"section\":\"final\",\"ctas\":[\"start\",\"demo\",\"talk\"]}],[\"$\",\"a\",null,{\"href\":\"https://docs.permit.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"mt-6 inline-block text-sm font-semibold text-slate-600 underline-offset-4 hover:text-slate-900 hover:underline dark:text-slate-400 dark:hover:text-white\",\"children\":\"Or explore the docs\"}]]}]]}]\n"])</script><script>self.__next_f.push([1,"1e:[\"$\",\"$L4e\",null,{\"children\":[\"$\",\"$4f\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@50\"}]}]\n1f:[\"$\",\"div\",\"l\",{\"className\":\"flex h-100dvh w-full items-center justify-center bg-deep-bg\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex flex-col items-center gap-8\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative\",\"children\":[[\"$\",\"div\",null,{\"className\":\"absolute -inset-16 rounded-full bg-neon-purple/15 blur-[60px]\",\"style\":{\"animation\":\"loading-glow 2.5s ease-in-out infinite\"}}],[\"$\",\"$L23\",null,{\"src\":\"/images/miniature.png\",\"alt\":\"Loading...\",\"width\":416,\"height\":260,\"className\":\"relative drop-shadow-[0_0_32px_rgba(135,92,255,0.4)]\",\"style\":{\"animation\":\"loading-float 3s ease-in-out infinite\"},\"priority\":true}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col items-center gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-1 w-32 overflow-hidden rounded-full bg-surface-2\",\"children\":[\"$\",\"div\",null,{\"className\":\"h-full w-1/2 rounded-full bg-gradient-to-r from-neon-purple via-neon-cyan to-neon-purple\",\"style\":{\"animation\":\"loading-bar 1.5s ease-in-out infinite\"}}]}],[\"$\",\"span\",null,{\"className\":\"font-rajdhani text-xs font-bold uppercase tracking-[0.25em] text-slate-500 dark:text-slate-400\",\"children\":\"Loading\"}]]}]]}]}]\n20:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L51\",null,{\"children\":\"$L52\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L53\",null,{\"children\":[\"$\",\"$4f\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L54\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script>self.__next_f.push([1,"2:[\"$\",\"html\",null,{\"lang\":\"en\",\"dir\":\"ltr\",\"className\":\"scroll-smooth\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"$L55\",null,{\"gtmId\":\"GTM-THM5WG9\"}],[\"$\",\"body\",null,{\"className\":\"__variable_f524cf __variable_cf84ab __variable_43d984 __variable_90b1ba antialiased\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"$L56\",null,{\"children\":[[\"$\",\"$L57\",null,{\"children\":[\"$\",\"$L58\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$59\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L5a\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"div\",null,{\"className\":\"relative isolate flex items-center px-5 pb-20 pt-36 text-center\",\"children\":[\"$\",\"div\",null,{\"className\":\"container flex max-w-[370px] flex-col gap-9\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex flex-col items-center gap-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"font-rajdhani text-lg font-bold uppercase tracking-[0.25em] text-neon-purple\",\"children\":\"404\"}],[\"$\",\"h1\",null,{\"className\":\"text-5xl font-bold text-slate-900 dark:text-white\",\"children\":\"Page not found\"}],[\"$\",\"p\",null,{\"className\":\"text-slate-500 dark:text-slate-400\",\"children\":\"The page you're looking for doesn't exist.\"}]]}],[\"$\",\"figure\",null,{\"className\":\"flex justify-center\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/hero/mascot-check.png\",\"alt\":\"Page not found\",\"width\":140,\"height\":140,\"className\":\"opacity-60 drop-shadow-[0_0_24px_rgba(135,92,255,0.2)]\"}]}],[\"$\",\"div\",null,{\"className\":\"flex justify-center\",\"children\":[\"$\",\"$L46\",null,{\"href\":\"/\",\"passHref\":true,\"className\":\"liquid-glass-btn rounded-full bg-theme_purple px-6 py-3 text-lg font-bold text-white shadow-neon-sm transition-shadow hover:shadow-neon-md\",\"children\":\"Back Home\"}]}]]}]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"$L5b\",null,{}]]}],[\"$\",\"script\",null,{\"src\":\"https://static.claydar.com/init.v1.js?id=cwAmVzEGQC\",\"async\":true}]]}]]}]\n"])</script><script>self.__next_f.push([1,"24:[\"$\",\"path\",\"12cjpa\",{\"d\":\"m21.854 2.147-10.94 10.939\"}]\n25:[\"$\",\"span\",null,{\"className\":\"pb-4 md:pb-0 md:pt-4\",\"children\":[[\"$\",\"span\",null,{\"className\":\"block text-sm font-semibold text-slate-900 dark:text-white\",\"children\":\"Request\"}],[\"$\",\"span\",null,{\"className\":\"mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"Can this identity perform this action on this resource, right now?\"}]]}]\n"])</script><script>self.__next_f.push([1,"26:[\"$\",\"li\",\"Policy decision point\",{\"className\":\"relative flex md:flex-col\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]\"}],[\"$\",\"div\",null,{\"className\":\"flex gap-4 md:flex-col md:items-center md:px-2 md:text-center\",\"children\":[[\"$\",\"span\",null,{\"className\":\"relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-purple-600 bg-purple-700 text-white shadow-[0_0_0_6px_rgba(126,34,206,0.12)] dark:border-purple-400 dark:bg-purple-600 dark:shadow-[0_0_0_6px_rgba(135,92,255,0.18)]\",\"children\":[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-scale h-[18px] w-[18px]\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"108xh3\",{\"d\":\"M12 3v18\"}],[\"$\",\"path\",\"zcdpyk\",{\"d\":\"m19 8 3 8a5 5 0 0 1-6 0zV7\"}],[\"$\",\"path\",\"1yorad\",{\"d\":\"M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1\"}],[\"$\",\"path\",\"eua70x\",{\"d\":\"m5 8 3 8a5 5 0 0 1-6 0zV7\"}],[\"$\",\"path\",\"1b0cd5\",{\"d\":\"M7 21h10\"}],\"$undefined\"]}]}],[\"$\",\"span\",null,{\"className\":\"pb-4 md:pb-0 md:pt-4\",\"children\":[[\"$\",\"span\",null,{\"className\":\"block text-sm font-semibold text-slate-900 dark:text-white\",\"children\":\"Policy decision point\"}],[\"$\",\"span\",null,{\"className\":\"mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"Evaluates RBAC, ABAC, and ReBAC policy with OPA or Cedar, in your network.\"}]]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"27:[\"$\",\"li\",\"Decision\",{\"className\":\"relative flex md:flex-col\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"absolute left-5 top-12 h-[calc(100%-2rem)] w-px bg-slate-300 dark:bg-white/15 md:left-[calc(50%+1.5rem)] md:top-5 md:h-px md:w-[calc(100%-3rem)]\"}],[\"$\",\"div\",null,{\"className\":\"flex gap-4 md:flex-col md:items-center md:px-2 md:text-center\",\"children\":[[\"$\",\"span\",null,{\"className\":\"relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200\",\"children\":[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-shield-check h-[18px] w-[18px]\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"oel41y\",{\"d\":\"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z\"}],[\"$\",\"path\",\"dzmm74\",{\"d\":\"m9 12 2 2 4-4\"}],\"$undefined\"]}]}],[\"$\",\"span\",null,{\"className\":\"pb-4 md:pb-0 md:pt-4\",\"children\":[[\"$\",\"span\",null,{\"className\":\"block text-sm font-semibold text-slate-900 dark:text-white\",\"children\":\"Decision\"}],[\"$\",\"span\",null,{\"className\":\"mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"Allow or deny, returned to your code with the reason attached.\"}]]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"28:[\"$\",\"li\",\"Audit\",{\"className\":\"relative flex md:flex-col\",\"children\":[false,[\"$\",\"div\",null,{\"className\":\"flex gap-4 md:flex-col md:items-center md:px-2 md:text-center\",\"children\":[[\"$\",\"span\",null,{\"className\":\"relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-slate-300 bg-white text-slate-700 dark:border-white/15 dark:bg-[#0d1129] dark:text-slate-200\",\"children\":[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-file-search h-[18px] w-[18px]\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",\"1oefj6\",{\"d\":\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"}],[\"$\",\"path\",\"wfsgrz\",{\"d\":\"M14 2v5a1 1 0 0 0 1 1h5\"}],[\"$\",\"circle\",\"1bq0ko\",{\"cx\":\"11.5\",\"cy\":\"14.5\",\"r\":\"2.5\"}],[\"$\",\"path\",\"2quom7\",{\"d\":\"M13.3 16.3 15 18\"}],\"$undefined\"]}]}],[\"$\",\"span\",null,{\"className\":\"pb-4 md:pb-0 md:pt-4\",\"children\":[[\"$\",\"span\",null,{\"className\":\"block text-sm font-semibold text-slate-900 dark:text-white\",\"children\":\"Audit\"}],[\"$\",\"span\",null,{\"className\":\"mt-1 block text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"Every decision logged, explained, and forwardable to your SIEM.\"}]]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"29:[\"$\",\"div\",null,{\"className\":\"mt-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"overflow-hidden rounded-xl border border-slate-200 bg-slate-50 font-ibm text-[13px] leading-relaxed dark:border-white/10 dark:bg-black/40\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center justify-between border-b border-slate-200 px-4 py-2 dark:border-white/10\",\"children\":[[\"$\",\"span\",null,{\"className\":\"text-[11px] uppercase tracking-[0.14em] text-slate-500 dark:text-slate-400\",\"children\":\"Example decision\"}],[\"$\",\"span\",null,{\"className\":\"rounded-md px-2 py-0.5 text-[11px] font-semibold uppercase tracking-[0.1em] bg-emerald-100 text-emerald-800 dark:bg-emerald-500/15 dark:text-emerald-300\",\"children\":\"allow\"}]]}],[\"$\",\"dl\",null,{\"className\":\"grid grid-cols-[max-content_1fr] gap-x-5 gap-y-1 overflow-x-auto px-4 py-3\",\"children\":[[\"$\",\"div\",\"subject\",{\"className\":\"contents\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"text-slate-500 dark:text-slate-400\",\"children\":\"subject\"}],[\"$\",\"dd\",null,{\"className\":\"text-slate-900 dark:text-slate-100\",\"children\":\"agent:invoice-assistant  for  user:dana@example.com\"}]]}],[\"$\",\"div\",\"action\",{\"className\":\"contents\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"text-slate-500 dark:text-slate-400\",\"children\":\"action\"}],[\"$\",\"dd\",null,{\"className\":\"text-slate-900 dark:text-slate-100\",\"children\":\"approve\"}]]}],[\"$\",\"div\",\"resource\",{\"className\":\"contents\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"text-slate-500 dark:text-slate-400\",\"children\":\"resource\"}],[\"$\",\"dd\",null,{\"className\":\"text-slate-900 dark:text-slate-100\",\"children\":\"invoice:8841  (tenant: example-co)\"}]]}],[\"$\",\"div\",\"reason\",{\"className\":\"contents\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"text-slate-500 dark:text-slate-400\",\"children\":\"reason\"}],[\"$\",\"dd\",null,{\"className\":\"text-slate-900 dark:text-slate-100\",\"children\":\"dana is finance-approver on example-co; amount 4,200 is under her 10,000 limit\"}]]}],[\"$\",\"div\",\"decided by\",{\"className\":\"contents\",\"children\":[[\"$\",\"dt\",null,{\"className\":\"text-slate-500 dark:text-slate-400\",\"children\":\"decided by\"}],[\"$\",\"dd\",null,{\"className\":\"text-slate-900 dark:text-slate-100\",\"children\":\"PDP in your VPC\"}]]}]]}]]}]}]\n"])</script><script>self.__next_f.push([1,"2a:[\"$\",\"figcaption\",null,{\"className\":\"mt-6 max-w-[68ch] border-t border-slate-300 pt-4 text-sm leading-relaxed text-slate-600 dark:border-white/15 dark:text-slate-400\",\"children\":\"The same five steps apply whether the caller is a person clicking a button or an agent calling a tool. Only the identity changes.\"}]\n2b:[\"$\",\"$L22\",null,{\"section\":\"how-it-works\",\"ctas\":[\"talk\",\"demo\"],\"className\":\"mt-10\"}]\n2d:[\"$\",\"rect\",\"4q2zg0\",{\"x\":\"16\",\"y\":\"16\",\"width\":\"6\",\"height\":\"6\",\"rx\":\"1\"}]\n2e:[\"$\",\"rect\",\"8cvhb9\",{\"x\":\"2\",\"y\":\"16\",\"width\":\"6\",\"height\":\"6\",\"rx\":\"1\"}]\n2f:[\"$\",\"rect\",\"1egb70\",{\"x\":\"9\",\"y\":\"2\",\"width\":\"6\",\"height\":\"6\",\"rx\":\"1\"}]\n30:[\"$\",\"path\",\"1jsf9p\",{\"d\":\"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3\"}]\n31:[\"$\",\"path\",\"2874zd\",{\"d\":\"M12 12V8\"}]\n32:[\"$\",\"span\",null,{\"className\":\"mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"May this delegated token reach this endpoint?\"}]\n33:[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400\"}],\"policy check\"]}]\n"])</script><script>self.__next_f.push([1,"34:[\"$\",\"li\",\"Application\",{\"className\":\"flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]\",\"children\":[[\"$\",\"span\",null,{\"className\":\"flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-server h-4 w-4 text-slate-500 dark:text-slate-400\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"rect\",\"ngkwjq\",{\"width\":\"20\",\"height\":\"8\",\"x\":\"2\",\"y\":\"2\",\"rx\":\"2\",\"ry\":\"2\"}],[\"$\",\"rect\",\"iecqi9\",{\"width\":\"20\",\"height\":\"8\",\"x\":\"2\",\"y\":\"14\",\"rx\":\"2\",\"ry\":\"2\"}],[\"$\",\"line\",\"16zg32\",{\"x1\":\"6\",\"x2\":\"6.01\",\"y1\":\"6\",\"y2\":\"6\"}],[\"$\",\"line\",\"nzw8ys\",{\"x1\":\"6\",\"x2\":\"6.01\",\"y1\":\"18\",\"y2\":\"18\"}],\"$undefined\"]}],\"Application\"]}],[\"$\",\"span\",null,{\"className\":\"mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"May this user approve this record in this tenant?\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400\"}],\"policy check\"]}]]}]\n"])</script><script>self.__next_f.push([1,"35:[\"$\",\"li\",\"Database\",{\"className\":\"flex flex-col rounded-xl border border-slate-200 bg-white p-4 dark:border-white/10 dark:bg-white/[0.03]\",\"children\":[[\"$\",\"span\",null,{\"className\":\"flex items-center gap-2 text-sm font-semibold text-slate-900 dark:text-white\",\"children\":[[\"$\",\"svg\",null,{\"ref\":\"$undefined\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"className\":\"lucide lucide-database h-4 w-4 text-slate-500 dark:text-slate-400\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"ellipse\",\"msslwz\",{\"cx\":\"12\",\"cy\":\"5\",\"rx\":\"9\",\"ry\":\"3\"}],[\"$\",\"path\",\"1wlel7\",{\"d\":\"M3 5V19A9 3 0 0 0 21 19V5\"}],[\"$\",\"path\",\"mv7ke4\",{\"d\":\"M3 12A9 3 0 0 0 21 12\"}],\"$undefined\"]}],\"Database\"]}],[\"$\",\"span\",null,{\"className\":\"mt-3 flex-1 text-sm leading-snug text-slate-600 dark:text-slate-400\",\"children\":\"May this query read this column?\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex w-fit items-center gap-1.5 rounded-md border border-purple-300 bg-purple-50 px-2 py-1 font-ibm text-[11px] text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/10 dark:text-purple-200\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"h-1.5 w-1.5 rounded-full bg-purple-600 dark:bg-purple-400\"}],\"policy check\"]}]]}]\n36:[\"$\",\"figcaption\",null,{\"className\":\"mt-6 max-w-[68ch] border-t border-slate-300 pt-4 text-sm leading-relaxed text-slate-600 dark:border-white/15 dark:text-slate-400\",\"children\":\"Each layer asks its own question of the same policy and the same identity. A prompt injection that slips past one check still meets the next.\"}]\n"])</script><script>self.__next_f.push([1,"37:[\"$\",\"div\",null,{\"className\":\"mt-14 grid gap-6 sm:grid-cols-2 lg:grid-cols-3\",\"children\":[[\"$\",\"div\",null,{\"className\":\"card-glow group flex flex-col rounded-2xl border border-slate-200 bg-white/60 p-8 backdrop-blur transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-6 inline-flex self-start rounded-xl bg-neon-purple/10 p-3 text-neon-purple\",\"children\":[\"$\",\"svg\",null,{\"className\":\"h-6 w-6\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\",\"strokeWidth\":1.5,\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M12 21a9.004 9.004 0 008.716-6.747M12 21a9.004 9.004 0 01-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a8.997 8.997 0 017.843 4.582M12 3a8.997 8.997 0 00-7.843 4.582m15.686 0A11.953 11.953 0 0112 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.959 8.959 0 0121 12c0 .778-.099 1.533-.284 2.253m0 0A17.919 17.919 0 0112 16.5c-3.162 0-6.133-.815-8.716-2.247m0 0A9.015 9.015 0 013 12c0-1.605.42-3.113 1.157-4.418\"}]}]}],[\"$\",\"h3\",null,{\"className\":\"mb-3 text-xl font-bold leading-[1.15] tracking-tight text-slate-900 dark:text-white\",\"children\":\"Gateway\"}],[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Identify the agent, bind human delegation, and authorize each tool call against policy — not a standing API key.\"}]]}],[\"$\",\"div\",null,{\"className\":\"card-glow group flex flex-col rounded-2xl border border-slate-200 bg-white/60 p-8 backdrop-blur transition-all hover:border-neon-purple/30 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-6 inline-flex self-start rounded-xl bg-neon-purple/10 p-3 text-neon-purple\",\"children\":[\"$\",\"svg\",null,{\"className\":\"h-6 w-6\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\",\"strokeWidth\":1.5,\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M5.25 14.25h13.5m-13.5 0a3 3 0 01-3-3m3 3a3 3 0 100 6h13.5a3 3 0 100-6m-16.5-3a3 3 0 013-3h13.5a3 3 0 013 3m-19.5 0a4.5 4.5 0 01.9-2.7L5.737 5.1a3.375 3.375 0 012.7-1.35h7.126c1.062 0 2.062.5 2.7 1.35l2.587 3.45a4.5 4.5 0 01.9 2.7m0 0a3 3 0 01-3 3m0 3h.008v.008h-.008v-.008zm0-6h.008v.008h-.008v-.008zm-3 6h.008v.008h-.008v-.008zm0-6h.008v.008H15v-.008z\"}]}]}],[\"$\",\"h3\",null,{\"className\":\"mb-3 text-xl font-bold leading-[1.15] tracking-tight text-slate-900 dark:text-white\",\"children\":\"Application\"}],[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Enforce the same fine-grained policy in APIs and services with a low-latency PDP next to the workload.\"}]]}],[\"$\",\"div\",null,{\"className\":\"card-glow group flex flex-col rounded-2xl border border-slate-200 bg-white/60 p-8 backdrop-blur transition-all hover:border-neon-purple/30 sm:col-span-2 lg:col-span-1 dark:border-white/[0.08] dark:bg-white/[0.03] dark:hover:border-neon-purple/25 dark:hover:bg-white/[0.05]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-6 inline-flex self-start rounded-xl bg-neon-purple/10 p-3 text-neon-purple\",\"children\":[\"$\",\"svg\",null,{\"className\":\"h-6 w-6\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\",\"strokeWidth\":1.5,\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125\"}]}]}],\"$L5c\",\"$L5d\"]}]]}]\n"])</script><script>self.__next_f.push([1,"38:[\"$\",\"div\",null,{\"className\":\"mt-12 rounded-xl border border-purple-200 bg-purple-50 p-6 text-center dark:border-purple-500/10 dark:bg-purple-500/5\",\"children\":[[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":[\"The gateway applies the same \",[\"$\",\"span\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"fine-grained authorization\"}],\" as your APIs — RBAC, ABAC, and ReBAC on each tool call, not a second permission system.\"]}],[\"$\",\"$L22\",null,{\"section\":\"gateway\",\"ctas\":[\"start\",\"demo\",\"talk\"],\"className\":\"mt-6\"}]]}]\n3a:[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[[\"$\",\"$L23\",null,{\"src\":\"/images/sections/delegated-access-identity.png\",\"alt\":\"Check the Akita inspecting an agent identity bound to delegated human permissions\",\"fill\":true,\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105\"}],[\"$\",\"div\",null,{\"className\":\"absolute inset-0 flex items-center justify-center bg-black/20 transition-colors group-hover:bg-black/40\",\"children\":[\"$\",\"span\",null,{\"className\":\"flex h-16 w-16 items-center justify-center rounded-full border border-white/30 bg-white/10 backdrop-blur-md transition-transform group-hover:scale-110\",\"children\":[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"className\":\"ml-1 h-7 w-7 text-white\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M8 5v14l11-7z\"}]}]}]}]]}]\n3b:[\"$\",\"$L22\",null,{\"section\":\"developer-stack\",\"ctas\":[\"talk\"],\"align\":\"start\"}]\n3c:[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M15 12a3 3 0 11-6 0 3 3 0 016 0z\"}]\n3d:[\"$\",\"div\",null,{\"children\":[[\"$\",\"h4\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Monitor\"}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":\"Agents that watch authorization decisions and audit logs.\"}]]}]\n3e:[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-0.5 h-5 w-5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z\"}]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"h4\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Detect\"}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":\"Spot anomalies static roles miss — including agent drift.\"}]]}]]}]\n3f:[\"$\",\"div\",null,{\"className\":\"flex items-start gap-3\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"mt-0.5 h-5 w-5 shrink-0 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":2,\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"d\":\"M9 12.75L11.25 15 15 9.75m-3-7.036A11.959 11.959 0 013.598 6 11.99 11.99 0 003 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285z\"}]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"h4\",null,{\"className\":\"font-semibold text-slate-900 dark:text-white\",\"children\":\"Recommend\"}],[\"$\",\"p\",null,{\"className\":\"text-base text-slate-600 dark:text-slate-400\",\"children\":\"Propose tighter policies back into the same GitOps flow.\"}]]}]]}]\n40:[\"$\",\"div\",null,{\"className\":\"liquid-glass-bezel overflow-hidden rounded-2xl border border-white/8 shadow-lg shadow-purple-900/10\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/sections/teams-guardian.png\",\"alt\":\"Guardian Check monitoring authorization dashboards and decision traces\",\"fill\":true,\"className\":\"object-cover\"}]}]}]\n41:[\"$\",\"div\",null,{\"className\":\"mt-12 text-center\",\"children\":[\"$\",\"$L22\",null,{\"section\":\"teams\",\"ctas\":[\"start\",\"demo\",\"talk\"]}]}]\n42:[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 1"])</script><script>self.__next_f.push([1,"9 21 7l-1.41-1.41z\"}]\n43:[\"$\",\"div\",null,{\"className\":\"liquid-glass-bezel overflow-hidden rounded-2xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[4/3]\",\"children\":[\"$\",\"$L23\",null,{\"src\":\"/images/sections/platform-chain.png\",\"alt\":\"Authorization enforced from application request through APIs to data, including agent tool calls\",\"fill\":true,\"className\":\"object-cover\"}]}]}]\n44:[\"$\",\"div\",null,{\"className\":\"mt-14 liquid-glass-bezel overflow-hidden rounded-2xl\",\"children\":[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden rounded-xl\",\"children\":[[\"$\",\"$L23\",null,{\"src\":\"/images/sections/unified-control-stack.png\",\"alt\":\"Permit control plane: policy editor, GitOps, audit logs, and embedded authorization elements\",\"fill\":true,\"className\":\"object-cover\"}],[\"$\",\"div\",null,{\"className\":\"absolute inset-0 bg-white/50 dark:bg-transparent dark:bg-gradient-to-t dark:from-deep-bg dark:via-deep-bg/80 dark:to-deep-bg/40\"}],[\"$\",\"div\",null,{\"className\":\"absolute inset-0 flex flex-col items-center justify-end px-8 pb-8 text-center\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"p\",null,{\"className\":\"font-rajdhani text-sm font-bold uppercase tracking-widest text-neon-purple md:text-base\",\"children\":\"Around the decision\"}],[\"$\",\"p\",null,{\"className\":\"mt-3 text-2xl font-bold text-slate-900 dark:text-white md:text-4xl\",\"children\":\"Elements, GitOps, and audit in one flow\"}],[\"$\",\"p\",null,{\"className\":\"mx-auto mt-3 max-w-2xl text-base leading-relaxed text-slate-600 dark:text-slate-200 md:text-lg\",\"children\":\"Embed user management, approval flows, and audit logs in your product. Manage policy in Git. Propagate every decision to the logger you already use.\"}]]}]}]]}]}]\n45:[\"$\",\"$L22\",null,{\"section\":\"platform\",\"ctas\":[\"demo\",\"talk\"],\"className\":\"mt-10\"}]\n47:[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}]\n48:[\"$\",\"div\",\"Hybrid deployment\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Hybrid deployment\"]}]\n49:[\"$\",\"div\",\"GitOps-ready\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"GitOps-ready\"]}]\n4a:[\"$\",\"div\",\"Fine-grained policy\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Fine-grained policy\"]}]\n4b:[\"$\",\"div\",\"Human-to-agent delegation\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}],\"Human-to-agent delegation\"]}]\n4c:[\"$\",\"div\",\"High availability\",{\"className\":\"flex items-center gap-2 rounded-full border border-neon-purple/15 bg-neon-purple/5 px-4 py-2 text-sm font-medium text-slate-600 dark:text-slate-400\",\"children\":[[\"$\",\"svg\",null,{\"className\":\"h-3.5 w-3.5 text-neon-purple\",\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"children\":[\"$\",\"path\",null,{\"d\":\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z\"}]}"])</script><script>self.__next_f.push([1,"],\"High availability\"]}]\n4d:[\"$\",\"$L22\",null,{\"section\":\"enterprise-trust\",\"ctas\":[\"demo\",\"talk\"],\"align\":\"start\",\"className\":\"mt-8\"}]\n"])</script><script>self.__next_f.push([1,"5c:[\"$\",\"h3\",null,{\"className\":\"mb-3 text-xl font-bold leading-[1.15] tracking-tight text-slate-900 dark:text-white\",\"children\":\"Data\"}]\n5d:[\"$\",\"p\",null,{\"className\":\"flex-1 text-base leading-relaxed text-slate-600 dark:text-slate-400\",\"children\":\"Push the decision down to queries, rows, and columns so an allowed tool call still cannot over-read.\"}]\n"])</script><script>self.__next_f.push([1,"52:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"5e:I[86869,[],\"IconMark\"]\n50:null\n"])</script><script>self.__next_f.push([1,"54:[[\"$\",\"title\",\"0\",{\"children\":\"Permit.io | Runtime Access Control for the AI Era\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"canonical\",\"href\":\"https://www.permit.io\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:title\",\"content\":\"Permit.io | Runtime Access Control for the AI Era\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:description\",\"content\":\"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:image:alt\",\"content\":\"Permit.io: Runtime Access Control for the AI Era\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:image:type\",\"content\":\"image/png\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:image\",\"content\":\"https://www.permit.io/opengraph-image?c7c5d9b2de25f712\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"10\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"11\",{\"name\":\"twitter:title\",\"content\":\"Permit.io | Runtime Access Control for the AI Era\"}],[\"$\",\"meta\",\"12\",{\"name\":\"twitter:description\",\"content\":\"Fine-grained authorization as a service. RBAC, ABAC, and ReBAC for applications, APIs, and AI agents. Policy as code, a no-code editor, and local PDPs.\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:image:alt\",\"content\":\"Permit.io: Runtime Access Control for the AI Era\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:image:type\",\"content\":\"image/png\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:image\",\"content\":\"https://www.permit.io/opengraph-image?c7c5d9b2de25f712\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:image:height\",\"content\":\"630\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?2753d112d5bcd555\",\"type\":\"image/x-icon\",\"sizes\":\"32x33\"}],[\"$\",\"$L5e\",\"19\",{}]]\n"])</script></body></html>