<!DOCTYPE html><html lang="en"> <head><script>window.__CF_COUNTRY="AU";window.__CF_REGION=""</script><script>
      (function () {
        try {
          var stored = localStorage.getItem("plivo-theme");
          var prefersDark = window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches;
          var theme = stored === "dark" || stored === "light" ? stored : (prefersDark ? "dark" : "light");
          if (theme === "dark") document.documentElement.classList.add("dark");
          else document.documentElement.classList.remove("dark");
        } catch (e) {}
      })();
    </script><!-- Global Metadata --><meta charset="utf-8"><!-- Preconnect to Google Fonts --><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><!-- Load Google Fonts --><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+Devanagari:wght@400;500;600;700&family=Sora:wght@100;200;300;400;500;600;700;800&display=swap" rel="stylesheet"><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"><meta name="robots" content="index, follow"><meta name="keywords" content="AI Agents, Voice AI, Conversational AI, Customer Engagement, SMS API, Voice API, WhatsApp Business, Chat Automation, Customer Support AI, No-code AI, Plivo"><meta name="author" content="Plivo"><meta name="creator" content="Plivo"><meta name="publisher" content="Plivo Inc."><!-- Theme Script - must use the same storage key as <ThemeToggle /> (plivo-theme) --><script>
  (function () {
    try {
      var stored = localStorage.getItem("plivo-theme");
      var prefersDark = window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches;
      var theme = stored === "dark" || stored === "light" ? stored : (prefersDark ? "dark" : "light");
      if (theme === "dark") document.documentElement.classList.add("dark");
      else document.documentElement.classList.remove("dark");
    } catch (e) {}
  })();
</script><!-- Favicon --><link rel="icon" type="image/svg+xml" sizes="any" href="/favicon/favicon.svg"><link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png"><link rel="apple-touch-icon" sizes="256x256" href="/favicon/apple-touch-icon.png"><link rel="sitemap" href="/sitemap.xml"><link rel="alternate" type="application/rss+xml" title="AI Agents to Automate Your Customer Engagement" href="https://www.plivo.com/rss.xml"><meta name="generator" content="Astro v5.18.1"><!-- Canonical URL --><link rel="canonical" href="https://www.plivo.com/startups/"><!-- Primary Meta Tags --><title>Startup Credits Program | Plivo | Plivo</title><meta name="title" content="Startup Credits Program | Plivo | Plivo"><meta name="description" content="Get Plivo credits to power your startup's AI agents, voice, SMS, and WhatsApp communications. Apply for the partner grant today."><!-- Open Graph / Facebook --><meta property="og:type" content="website"><meta property="og:url" content="https://www.plivo.com/startups/"><meta property="og:site_name" content="Plivo"><meta property="og:title" content="Startup Credits Program | Plivo | Plivo"><meta property="og:description" content="Get Plivo credits to power your startup's AI agents, voice, SMS, and WhatsApp communications. Apply for the partner grant today."><meta property="og:image" content="https://www.plivo.com/og-image.jpg"><meta property="og:image:width" content="1200"><meta property="og:image:height" content="630"><meta property="og:image:alt" content="Plivo - AI Agents to Automate Your Customer Engagement"><!-- Twitter --><meta name="twitter:card" content="summary_large_image"><meta name="twitter:site" content="@plivo"><meta name="twitter:creator" content="@plivo"><meta property="twitter:url" content="https://www.plivo.com/startups/"><meta property="twitter:title" content="Startup Credits Program | Plivo | Plivo"><meta property="twitter:description" content="Get Plivo credits to power your startup's AI agents, voice, SMS, and WhatsApp communications. Apply for the partner grant today."><meta property="twitter:image" content="https://www.plivo.com/og-image.jpg"><script>!function(){var c=window.__CF_COUNTRY||"";if(!c){try{c=sessionStorage.getItem("plivo_geo_country")||""}catch(e){}}function load(){if(window.reb2b)return;window.reb2b={loaded:true};var s=document.createElement("script");s.async=true;s.src="https://b2bjsstore.s3.us-west-2.amazonaws.com/b/J0OV0VH1LX6Z/J0OV0VH1LX6Z.js.gz";document.getElementsByTagName("script")[0].parentNode.insertBefore(s,document.getElementsByTagName("script")[0])}if(c==="US"){load()}else if(!c){var n=0;var p=setInterval(function(){n++;try{c=sessionStorage.getItem("plivo_geo_country")||""}catch(e){}if(c==="US"){clearInterval(p);load()}else if(c||n>40){clearInterval(p)}},100)}}();</script><link rel="stylesheet" href="/_astro/about.Dmg5UL-N.css">
<link rel="stylesheet" href="/_astro/about.CdMpTNCL.css">
<style>.dark-band{--color-background: hsl(var(--background));--color-foreground: hsl(var(--foreground));--color-surface: hsl(var(--surface));--color-surface-2: hsl(var(--surface-2));--color-card: hsl(var(--card));--color-card-foreground: hsl(var(--card-foreground));--color-popover: hsl(var(--popover));--color-popover-foreground: hsl(var(--popover-foreground));--color-secondary: hsl(var(--secondary));--color-secondary-foreground: hsl(var(--secondary-foreground));--color-muted: hsl(var(--muted));--color-muted-foreground: hsl(var(--muted-foreground));--color-border: hsl(var(--border));--color-border-strong: hsl(var(--border-strong));--color-input: hsl(var(--input));--color-code: hsl(var(--code));--color-code-foreground: hsl(var(--code-foreground))}
</style></head> <body class="ip-cta-scope min-h-screen bg-background text-foreground antialiased transition-colors duration-200">  <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MXJNN5" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <a href="#main-content" class="sr-only focus:not-sr-only focus:fixed focus:top-4 focus:left-4 focus:z-[100] focus:rounded-md focus:bg-foreground focus:px-4 focus:py-2 focus:text-sm focus:text-background focus:outline-none">
Skip to main content
</a> <style>astro-island,astro-slot,astro-static-slot{display:contents}</style><script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();</script><script>(()=>{var A=Object.defineProperty;var g=(i,o,a)=>o in i?A(i,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[o]=a;var d=(i,o,a)=>g(i,typeof o!="symbol"?o+"":o,a);{let i={0:t=>m(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>1/0*t},o=t=>{let[l,e]=t;return l in i?i[l](e):void 0},a=t=>t.map(o),m=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([l,e])=>[l,o(e)]));class y extends HTMLElement{constructor(){super(...arguments);d(this,"Component");d(this,"hydrator");d(this,"hydrate",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let c=this.querySelectorAll("astro-slot"),n={},h=this.querySelectorAll("template[data-astro-template]");for(let r of h){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of c){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("name")||"default"]=r.innerHTML)}let p;try{p=this.hasAttribute("props")?m(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",v=this.getAttribute("component-export");throw v&&(s+=` (export ${v})`),console.error(`[hydrate] Error parsing props for component ${s}`,this.getAttribute("props"),r),r}let u;await this.hydrator(this)(this.Component,p,n,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});d(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),c.disconnect(),this.childrenConnectedCallback()},c=new MutationObserver(()=>{var n;((n=this.lastChild)==null?void 0:n.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});c.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}async start(){let e=JSON.parse(this.getAttribute("opts")),c=this.getAttribute("client");if(Astro[c]===void 0){window.addEventListener(`astro:${c}`,()=>this.start(),{once:!0});return}try{await Astro[c](async()=>{let n=this.getAttribute("renderer-url"),[h,{default:p}]=await Promise.all([import(this.getAttribute("component-url")),n?import(n):()=>()=>{}]),u=this.getAttribute("component-export")||"default";if(!u.includes("."))this.Component=h[u];else{this.Component=h;for(let f of u.split("."))this.Component=this.Component[f]}return this.hydrator=p,this.hydrate},e,this)}catch(n){console.error(`[astro-island] Error hydrating ${this.getAttribute("component-url")}`,n)}}attributeChangedCallback(){this.hydrate()}}d(y,"observedAttributes",["props"]),customElements.get("astro-island")||customElements.define("astro-island",y)}})();</script><astro-island uid="HM82j" prefix="r18" component-url="/_astro/navbar1.Cx1syOEG.js" component-export="Navbar1" renderer-url="/_astro/client.Yi0K8k_T.js" props="{&quot;currentPage&quot;:[0,&quot;/startups/&quot;]}" ssr client="load" opts="{&quot;name&quot;:&quot;Navbar1&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/images/plivo-logo.svg"/><link rel="preload" as="image" href="/images/plivo-logo-white.svg"/><style>
        .nav-v4-shadow [class*="origin-top-center"] {
          box-shadow:
            0 12px 32px -8px hsl(220 40% 12% / 0.14),
            0 24px 64px -16px hsl(220 40% 12% / 0.16) !important;
        }
        .dark .nav-v4-shadow [class*="origin-top-center"] {
          box-shadow:
            0 12px 32px -8px hsl(0 0% 0% / 0.5),
            0 24px 64px -16px hsl(0 0% 0% / 0.55) !important;
        }
      </style><header class="fixed left-0 right-0 top-0 z-50 transition-all duration-200 bg-background"><div class="mx-auto max-w-7xl px-4"><nav aria-label="Main navigation" class="flex h-[60px] items-center justify-between"><a href="/" class="flex shrink-0 items-center" aria-label="Plivo home"><img src="/images/plivo-logo.svg" alt="Plivo" width="72" height="24" class="h-6 w-auto dark:hidden"/><img src="/images/plivo-logo-white.svg" alt="Plivo" width="72" height="24" class="hidden h-6 w-auto dark:block"/></a><nav aria-label="Primary" data-orientation="horizontal" dir="ltr" class="relative z-10 max-w-max flex-1 items-center justify-center nav-v4-shadow hidden lg:flex"><div style="position:relative"><ul data-orientation="horizontal" class="group flex flex-1 list-none items-center justify-center space-x-1 gap-[14px] font-mono-ui" dir="ltr"><li><a href="/ai-agents/" class="inline-flex items-baseline gap-1 transition-colors duration-[120ms] text-muted-foreground hover:text-foreground" data-radix-collection-item=""><span class="text-[13px]">AI Agents</span></a></li><li aria-hidden="true" class="select-none text-[13px] text-border">/</li><li class="relative"><button id="radix-_r18R_a_-trigger-radix-_r18R_aq_" data-state="closed" aria-expanded="false" aria-controls="radix-_r18R_a_-content-radix-_r18R_aq_" class="group inline-flex w-max items-center justify-center text-sm font-medium focus:text-foreground focus:outline-hidden disabled:pointer-events-none disabled:opacity-50 data-active:bg-surface group h-auto rounded-none bg-transparent p-0 hover:bg-transparent focus:bg-transparent data-[state=open]:bg-transparent transition-colors duration-[120ms] [&amp;&gt;svg]:hidden text-muted-foreground hover:text-foreground" data-radix-collection-item=""><span class="inline-flex items-baseline gap-1"><span class="text-[13px]">Telephony</span></span> <svg class="relative top-px ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180" aria-hidden="true" viewBox="0 0 20 20" fill="currentColor"><circle cx="3" cy="8" r="1.4"></circle><circle cx="6.5" cy="11.5" r="1.4"></circle><circle cx="10" cy="15" r="1.4"></circle><circle cx="13.5" cy="11.5" r="1.4"></circle><circle cx="17" cy="8" r="1.4"></circle></svg></button></li><li aria-hidden="true" class="select-none text-[13px] text-border">/</li><li class="relative"><button id="radix-_r18R_a_-trigger-radix-_r18R_bq_" data-state="closed" aria-expanded="false" aria-controls="radix-_r18R_a_-content-radix-_r18R_bq_" class="group inline-flex w-max items-center justify-center text-sm font-medium focus:text-foreground focus:outline-hidden disabled:pointer-events-none disabled:opacity-50 data-active:bg-surface group h-auto rounded-none bg-transparent p-0 hover:bg-transparent focus:bg-transparent data-[state=open]:bg-transparent transition-colors duration-[120ms] [&amp;&gt;svg]:hidden text-muted-foreground hover:text-foreground" data-radix-collection-item=""><span class="inline-flex items-baseline gap-1"><span class="text-[13px]">Developers</span></span> <svg class="relative top-px ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180" aria-hidden="true" viewBox="0 0 20 20" fill="currentColor"><circle cx="3" cy="8" r="1.4"></circle><circle cx="6.5" cy="11.5" r="1.4"></circle><circle cx="10" cy="15" r="1.4"></circle><circle cx="13.5" cy="11.5" r="1.4"></circle><circle cx="17" cy="8" r="1.4"></circle></svg></button></li><li aria-hidden="true" class="select-none text-[13px] text-border">/</li><li><a href="/pricing/" class="inline-flex items-baseline gap-1 transition-colors duration-[120ms] text-muted-foreground hover:text-foreground" data-radix-collection-item=""><span class="text-[13px]">Pricing</span></a></li></ul></div></nav><div class="flex items-center gap-2"><a href="https://cx.plivo.com/login" class="hidden items-center justify-center px-3.5 py-1.5 text-[13px] font-normal text-muted-foreground transition-all hover:text-foreground lg:inline-flex" target="_blank" rel="noopener noreferrer">Login</a><a href="/contact/sales/" class="hidden items-center justify-center rounded-md border border-border bg-background px-3.5 py-1.5 text-[13px] font-normal text-foreground transition-all hover:border-border-strong hover:bg-surface lg:inline-flex">Contact sales</a><div class="hidden lg:inline-flex"><button type="button" aria-label="Switch to dark theme" class="relative inline-flex shrink-0 items-center justify-center rounded-md border border-border bg-background text-foreground transition-colors hover:bg-surface hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring h-8 w-8"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun absolute h-4 w-4 transition-all duration-200 scale-100 rotate-0 opacity-100"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon absolute h-4 w-4 transition-all duration-200 scale-0 rotate-90 opacity-0"><path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"></path></svg></button></div><a href="https://plivo.com/signup" class="hidden items-center rounded-md bg-foreground px-3.5 py-1.5 text-[13px] font-medium text-background transition-all cta-hover-gradient hover:text-white lg:inline-flex" target="_blank" rel="noopener noreferrer">Sign up for free</a><a href="https://plivo.com/signup" class="inline-flex items-center rounded-md bg-foreground px-3 py-1.5 text-[12px] font-medium text-background transition-all cta-hover-gradient hover:text-white lg:hidden" target="_blank" rel="noopener noreferrer">Sign up for free</a><button class="relative flex h-9 w-9 items-center justify-center rounded-md transition-colors hover:bg-surface lg:hidden" aria-label="Open menu" type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-_r18R_3e_" data-state="closed"><div class="flex flex-col items-center justify-center gap-[5px]"><span class="block h-[1.5px] w-5 rounded-full bg-foreground transition-all duration-300"></span><span class="block h-[1.5px] w-5 rounded-full bg-foreground transition-all duration-300"></span><span class="block h-[1.5px] w-5 rounded-full bg-foreground transition-all duration-300"></span></div></button></div></nav></div></header><!--astro:end--></astro-island> <main id="main-content" class="flex flex-col bg-background pt-[60px]">  <astro-island uid="sr7Yo" prefix="r10" component-url="/_astro/CreditsHero.C6-xRYth.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="load" opts="{&quot;name&quot;:&quot;CreditsHero&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/images/credits/icon 1.png"/><link rel="preload" as="image" href="/images/credits/icon 1 white.png"/><link rel="preload" as="image" href="/images/credits/icon 4.png"/><link rel="preload" as="image" href="/images/credits/icon 2.png"/><link rel="preload" as="image" href="/images/credits/icon 3.png"/><link rel="preload" as="image" href="/images/credits/icon 6.png"/><link rel="preload" as="image" href="/images/credits/icon 5.png"/><link rel="preload" as="image" href="/images/credits/icon 7.png"/><link rel="preload" as="image" href="/images/credits/icon 8.png"/><link rel="preload" as="image" href="/images/credits/icon 8 white.png"/><link rel="preload" as="image" href="/images/credits/icon 9.png"/><link rel="preload" as="image" href="/images/credits/icon 10.png"/><link rel="preload" as="image" href="/images/credits/icon 10 white.png"/><link rel="preload" as="image" href="/images/credits/community.png"/><section class="relative w-full bg-background"><div class="tech-frame text-foreground/20 max-w-7xl mx-auto px-4"><svg class="tf-corner tf-corner-tl" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"><path d="M 0 20 L 0 0 L 20 0" stroke="currentColor" stroke-width="1" stroke-linecap="square" opacity="0.55"></path></svg><svg class="tf-corner tf-corner-tr" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"><path d="M 0 0 L 20 0 L 20 20" stroke="currentColor" stroke-width="1" stroke-linecap="square" opacity="0.55"></path></svg><svg class="tf-corner tf-corner-br" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"><path d="M 20 0 L 20 20 L 0 20" stroke="currentColor" stroke-width="1" stroke-linecap="square" opacity="0.55"></path></svg><svg class="tf-corner tf-corner-bl" width="20" height="20" viewBox="0 0 20 20" fill="none" aria-hidden="true"><path d="M 20 20 L 0 20 L 0 0" stroke="currentColor" stroke-width="1" stroke-linecap="square" opacity="0.55"></path></svg><div class="tf-edges tf-edge-top"></div><div class="tf-edges tf-edge-bottom"></div><div class="tf-edges tf-edge-left"></div><div class="tf-edges tf-edge-right"></div><div class="tf-quadrant"></div><svg class="tf-center" width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><line x1="8" y1="0" x2="8" y2="16" stroke="currentColor" stroke-width="0.8" opacity="0.45"></line><line x1="0" y1="8" x2="16" y2="8" stroke="currentColor" stroke-width="0.8" opacity="0.45"></line><circle cx="8" cy="8" r="3" stroke="currentColor" stroke-width="0.5" fill="none" opacity="0.25"></circle></svg><div class="pt-10"><div class="flex items-center gap-3 font-mono-ui text-[11px] uppercase tracking-[0.12em] text-muted-foreground"><span class="flex shrink-0 items-center gap-2"><span class="tabular-nums text-foreground/70">01</span><span class="h-px w-6 bg-border"></span></span><span class="shrink-0">startup program</span><span class="flex-1 border-t border-dashed border-border"></span><div class="hidden shrink-0 items-center gap-1 sm:flex"><span class="text-muted-foreground/80">available on</span><span class="mx-1 text-border">·</span><a href="/voice/overview/" class="rounded px-1.5 py-0.5 text-foreground/80 transition-colors hover:bg-muted hover:text-foreground">voice</a><a href="/sms/overview/" class="rounded px-1.5 py-0.5 text-foreground/80 transition-colors hover:bg-muted hover:text-foreground">sms</a><a href="/whatsapp-message/overview/" class="rounded px-1.5 py-0.5 text-foreground/80 transition-colors hover:bg-muted hover:text-foreground">whatsapp</a><a href="/chat/overview/" class="rounded px-1.5 py-0.5 text-foreground/80 transition-colors hover:bg-muted hover:text-foreground">chat</a></div></div></div><div class="relative w-full min-h-[28vh] flex items-start justify-center overflow-hidden pt-[6vh] pb-[6vh]"><div class="hidden md:block absolute inset-0 w-full h-full"><div class="absolute top-[8%] left-[1%] lg:left-[3%] xl:left-[5%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 1.png" alt="" class="object-contain w-[24px] h-[24px] dark:hidden" draggable="false"/><img src="/images/credits/icon 1 white.png" alt="" class="hidden dark:block object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute top-[8%] right-[1%] lg:right-[3%] xl:right-[5%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 4.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute hidden lg:block top-[22%] lg:left-[8%] xl:left-[10%] 2xl:left-[14%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 2.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute hidden lg:block top-[22%] lg:right-[8%] xl:right-[10%] 2xl:right-[14%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 3.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute hidden lg:block top-[46%] lg:left-[4%] xl:left-[7%] 2xl:left-[12%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 6.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute hidden lg:block top-[46%] lg:right-[4%] xl:right-[7%] 2xl:right-[12%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 5.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute top-[63%] left-[1%] lg:left-[4%] xl:left-[5%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 7.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute top-[63%] right-[1%] lg:right-[4%] xl:right-[5%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 8.png" alt="" class="object-contain w-[24px] h-[24px] dark:hidden" draggable="false"/><img src="/images/credits/icon 8 white.png" alt="" class="hidden dark:block object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute hidden lg:block top-[80%] left-[10%] xl:left-[12%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 9.png" alt="" class="object-contain w-[24px] h-[24px]" draggable="false"/></div></div><div class="absolute hidden lg:block top-[80%] right-[10%] xl:right-[12%]" style="opacity:0;transform:scale(0.5)"><div class="flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden w-[44px] h-[44px]"><img src="/images/credits/icon 10.png" alt="" class="object-contain w-[24px] h-[24px] dark:hidden" draggable="false"/><img src="/images/credits/icon 10 white.png" alt="" class="hidden dark:block object-contain w-[24px] h-[24px]" draggable="false"/></div></div></div><div class="relative z-10 text-center px-4 max-w-3xl mx-auto"><h1 class="font-sora text-[2.25rem] sm:text-[3rem] md:text-[3.75rem] font-normal leading-[1.02] tracking-[-0.04em] text-foreground">Build with the community<br class="hidden sm:block"/> <!-- -->that&#x27;s building<!-- --> <span class="text-primary">voice AI.</span></h1><p class="mt-5 text-[15px] sm:text-base text-muted-foreground leading-relaxed max-w-xl mx-auto">From two-person teams to growth-stage startups, founders choose Plivo to ship faster and scale further.</p><div class="flex md:hidden flex-wrap justify-center gap-3 mt-8"><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 1.png" alt="" class="w-[24px] h-[24px] object-contain dark:hidden" draggable="false"/><img src="/images/credits/icon 1 white.png" alt="" class="hidden dark:block w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 4.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 2.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 3.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 6.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 5.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 7.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 8.png" alt="" class="w-[24px] h-[24px] object-contain dark:hidden" draggable="false"/><img src="/images/credits/icon 8 white.png" alt="" class="hidden dark:block w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 9.png" alt="" class="w-[24px] h-[24px] object-contain" draggable="false"/></div><div class="w-[44px] h-[44px] flex items-center justify-center rounded-[22%] bg-muted border border-border shadow-sm overflow-hidden"><img src="/images/credits/icon 10.png" alt="" class="w-[24px] h-[24px] object-contain dark:hidden" draggable="false"/><img src="/images/credits/icon 10 white.png" alt="" class="hidden dark:block w-[24px] h-[24px] object-contain" draggable="false"/></div></div></div></div></div><div class="container max-w-5xl mx-auto px-6 py-4"><div class="w-full border border-border p-2 rounded-3xl shadow-2xl" style="opacity:0;transform:translateY(40px)"><div class="relative rounded-2xl overflow-hidden"><section id="apply" class="bg-card" style="scroll-margin-top:80px"><div><div class="grid grid-cols-1 lg:grid-cols-[7fr_3fr] gap-0 overflow-hidden"><div class="bg-card px-8 py-10 md:px-12 md:py-14" style="opacity:0"><h2 class="font-sora text-[1.625rem] sm:text-[2rem] font-normal leading-[1.1] tracking-[-0.02em] text-foreground" style="opacity:0;transform:translateY(16px)">Claim your Plivo credits</h2><div class="mt-3 text-[15px] text-muted-foreground leading-relaxed" style="opacity:0;transform:translateY(16px)"><p>A Plivo account is required to claim your credits. Not signed up yet?</p><a href="https://cx.plivo.com/signup" class="inline-flex items-center gap-1 mt-1 underline underline-offset-2 text-foreground hover:text-foreground/80 transition-colors">Create your account<svg class="w-3.5 h-3.5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a></div><form class="mt-8 space-y-4" noValidate=""><div class="grid grid-cols-1 sm:grid-cols-2 gap-4" style="opacity:0;transform:translateY(16px)"><div><label for="cf-name" class="text-[13px] font-medium text-foreground mb-1 block">Full Name <span class="text-destructive">*</span></label><input id="cf-name" type="text" placeholder="Jane Smith" maxLength="256" class="w-full h-10 rounded-lg border bg-muted px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-[3px] transition-all border-border hover:border-border focus:border-ring focus:ring-ring/30" name="full_name" value=""/></div><div><label for="cf-email" class="text-[13px] font-medium text-foreground mb-1 block">Plivo Registered Email <span class="text-destructive">*</span></label><input id="cf-email" type="email" placeholder="jane@company.com" maxLength="256" class="w-full h-10 rounded-lg border bg-muted px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-[3px] transition-all border-border hover:border-border focus:border-ring focus:ring-ring/30" name="company_email" value=""/></div></div><div class="grid grid-cols-1 sm:grid-cols-2 gap-4" style="opacity:0;transform:translateY(16px)"><div><label for="cf-role" class="text-[13px] font-medium text-foreground mb-1 block">Your Role <span class="text-destructive">*</span></label><div class="relative"><select id="cf-role" name="role" class="w-full h-10 rounded-lg border bg-muted px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-[3px] transition-all border-border hover:border-border focus:border-ring focus:ring-ring/30 appearance-none"><option value="" disabled="" selected="">Select your role</option><option value="Founder / Co-founder">Founder / Co-founder</option><option value="CTO / Developer">CTO / Developer</option><option value="Product Manager">Product Manager</option><option value="Business Development">Business Development</option><option value="Other">Other</option></select></div></div><div><label for="cf-fund" class="text-[13px] font-medium text-foreground mb-1 block">Partner Fund <span class="text-destructive">*</span></label><div class="relative"><select id="cf-fund" name="partner_fund" class="w-full h-10 rounded-lg border bg-muted px-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-[3px] transition-all border-border hover:border-border focus:border-ring focus:ring-ring/30 appearance-none"><option value="" disabled="" selected="">Select partner fund</option><option value="3one4 Capital">3one4 Capital</option><option value="South Park Commons">South Park Commons</option><option value="South Park Commons US">South Park Commons US</option><option value="Nexus Ventures">Nexus Ventures</option><option value="LightSpeed">LightSpeed</option><option value="Antler">Antler</option><option value="Elevation Capital">Elevation Capital</option><option value="Blume Ventures">Blume Ventures</option><option value="Kae Capital">Kae Capital</option><option value="Together Fund">Together Fund</option><option value="Initialized Capital">Initialized Capital</option><option value="Techstars">Techstars</option><option value="Focal VC">Focal VC</option><option value="Boldstart Ventures">Boldstart Ventures</option><option value="YC (Current Batch)">YC (Current Batch)</option><option value="YC (other active companies)">YC (other active companies)</option><option value="Upekkha">Upekkha</option></select></div></div></div><div style="opacity:0;transform:translateY(16px)"><label for="cf-requirement" class="text-[13px] font-medium text-foreground mb-1 block">Detailed Requirement <span class="text-destructive">*</span></label><textarea id="cf-requirement" name="detailed_requirement" maxLength="5000" placeholder="Tell us about your startup, use case, and expected communication volume" class="w-full min-h-[84px] rounded-lg border bg-muted px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground resize-none focus:outline-none focus:ring-[3px] transition-all border-border hover:border-border focus:border-ring focus:ring-ring/30"></textarea></div><div class="pt-1" style="opacity:0;transform:translateY(16px)"><button type="submit" disabled="" class="inline-flex items-center justify-center gap-2 rounded-md bg-foreground px-6 py-3 text-[14px] font-medium text-background transition-colors cta-hover-gradient disabled:opacity-40 disabled:cursor-not-allowed">Submit application<svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></button></div></form></div><div class="lg:hidden w-full h-44 overflow-hidden"><img src="/images/credits/community.png" alt="" class="w-full h-full object-cover object-top"/></div><div class="hidden lg:block relative overflow-hidden" style="opacity:0;transform:translateX(24px)"><img src="/images/credits/community.png" alt="Startups building with Plivo" class="w-full h-full object-cover object-center" style="min-height:520px"/></div></div></div></section></div></div></div></section><!--astro:end--></astro-island> <script>(()=>{var a=(s,i,o)=>{let r=async()=>{await(await s())()},t=typeof i.value=="object"?i.value:void 0,c={rootMargin:t==null?void 0:t.rootMargin},n=new IntersectionObserver(e=>{for(let l of e)if(l.isIntersecting){n.disconnect(),r();break}},c);for(let e of o.children)n.observe(e)};(self.Astro||(self.Astro={})).visible=a;window.dispatchEvent(new Event("astro:visible"));})();</script><astro-island uid="ZOEAJg" prefix="r11" component-url="/_astro/CreditsLogos.DvywGI5k.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;CreditsLogos&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/images/credits/logo 3.png"/><link rel="preload" as="image" href="/images/credits/YC logo updated.png"/><link rel="preload" as="image" href="/images/credits/logo 11.png"/><link rel="preload" as="image" href="/images/credits/logo 2.png"/><link rel="preload" as="image" href="/images/credits/logo 5.png"/><link rel="preload" as="image" href="/images/credits/logo 4.png"/><link rel="preload" as="image" href="/images/credits/logo 10.png"/><link rel="preload" as="image" href="/images/credits/logo 9.png"/><link rel="preload" as="image" href="/images/credits/logo 1.png"/><link rel="preload" as="image" href="/images/credits/logo 7.png"/><section class="py-12 sm:py-16 md:py-20 bg-background"><div class="container mx-auto max-w-5xl px-6"><p class="text-center text-sm font-medium text-muted-foreground tracking-wide uppercase mb-10">Trusted by startups backed by</p><div class="md:hidden grid grid-cols-2 border border-border rounded-xl overflow-hidden"><div class="flex items-center justify-center px-6 py-6 border-r border-b border-border bg-background"><img src="/images/credits/logo 3.png" alt="Lightspeed" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:21.599999999999998px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-b border-border bg-background"><img src="/images/credits/YC logo updated.png" alt="Y Combinator" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:30px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-r border-b border-border bg-background"><img src="/images/credits/logo 11.png" alt="Blume Ventures" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:30px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-b border-border bg-background"><img src="/images/credits/logo 2.png" alt="Nexus Venture Partners" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:30px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-r border-b border-border bg-background"><img src="/images/credits/logo 5.png" alt="Elevation Capital" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:30px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-b border-border bg-background"><img src="/images/credits/logo 4.png" alt="Antler" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:21.599999999999998px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-r border-b border-border bg-background"><img src="/images/credits/logo 10.png" alt="Initialized Capital" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:21.599999999999998px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-b border-border bg-background"><img src="/images/credits/logo 9.png" alt="Techstars" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:21.599999999999998px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 border-r border-border bg-muted"><img src="/images/credits/logo 1.png" alt="3one4 Capital" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:30px;width:auto;max-width:110px"/></div><div class="flex items-center justify-center px-6 py-6 bg-muted"><img src="/images/credits/logo 7.png" alt="South Park Commons" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:39px;width:auto;max-width:110px"/></div></div><div class="relative hidden md:grid grid-cols-5 border-x border-border"><div class="-translate-x-1/2 -top-px pointer-events-none absolute left-1/2 w-screen border-t border-border"></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-b border-r border-border bg-background"><img src="/images/credits/logo 3.png" alt="Lightspeed" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:25.919999999999998px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-b border-r border-border bg-background"><img src="/images/credits/YC logo updated.png" alt="Y Combinator" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:36px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-b border-r border-border bg-background"><img src="/images/credits/logo 11.png" alt="Blume Ventures" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:36px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-b border-r border-border bg-background"><img src="/images/credits/logo 2.png" alt="Nexus Venture Partners" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:36px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-b border-border bg-background"><img src="/images/credits/logo 5.png" alt="Elevation Capital" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:36px;width:auto;max-width:140px"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus -right-[12.5px] -bottom-[12.5px] absolute z-10 size-6 text-border"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-r border-border bg-muted"><img src="/images/credits/logo 4.png" alt="Antler" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:25.919999999999998px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-r border-border bg-muted"><img src="/images/credits/logo 10.png" alt="Initialized Capital" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:25.919999999999998px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-r border-border bg-muted"><img src="/images/credits/logo 9.png" alt="Techstars" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:25.919999999999998px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 border-r border-border bg-muted"><img src="/images/credits/logo 1.png" alt="3one4 Capital" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:36px;width:auto;max-width:140px"/></div><div class="relative flex items-center justify-center px-4 py-8 md:p-10 bg-muted"><img src="/images/credits/logo 7.png" alt="South Park Commons" class="object-contain select-none pointer-events-none [filter:brightness(0)_opacity(0.55)] dark:[filter:brightness(0)_invert(1)_opacity(0.75)]" style="height:46.800000000000004px;width:auto;max-width:140px"/><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus -right-[12.5px] -bottom-[12.5px] absolute z-10 size-6 text-border"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></div><div class="-translate-x-1/2 -bottom-px pointer-events-none absolute left-1/2 w-screen border-b border-border"></div></div></div></section><!--astro:end--></astro-island>  <astro-island uid="ZolpHI" prefix="r12" component-url="/_astro/AgentBuilderV4.BxuTuuSi.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{&quot;num&quot;:[0,&quot;02&quot;],&quot;showCtas&quot;:[0,false]}" ssr client="visible" opts="{&quot;name&quot;:&quot;AgentBuilderV4&quot;,&quot;value&quot;:true}" await-children><section id="section-stack" class="relative w-full"><div class="container mx-auto max-w-7xl px-4 sm:px-6 py-14 sm:py-20 md:py-24"><div class="flex items-center gap-3 font-mono-ui text-[11px] uppercase tracking-[0.12em] text-muted-foreground"><span class="flex items-center gap-2"><span class="tabular-nums text-foreground/70">02</span><span class="h-px w-6 bg-border"></span></span><span>stack</span><span class="flex-1 border-t border-dashed border-border"></span><span>two ways to build</span></div><div class="mt-8 grid grid-cols-1 gap-6 lg:grid-cols-12 lg:gap-10"><div class="lg:col-span-8"><h2 class="font-sora text-[2rem] font-normal leading-[1.04] tracking-[-0.035em] text-foreground sm:text-[2.5rem] md:text-[3rem]">Build AI agents your way with <span class="text-primary">code</span> or <span class="text-primary">prompt</span></h2></div></div><div class="mt-10 grid grid-cols-1 gap-5 lg:mt-14 lg:grid-cols-2 lg:gap-6"><div class="group relative flex flex-col overflow-hidden rounded-lg border border-border bg-surface transition-colors hover:border-border-strong"><div class="flex items-center justify-between border-b border-border bg-background/40 px-4 py-2.5"><span class="font-mono-ui text-[11px] text-muted-foreground">/stack/programmable</span><span class="font-mono-ui inline-flex items-center gap-1 text-[11px] text-primary"><span class="h-1.5 w-1.5 rounded-full bg-primary"></span>code</span></div><div class="relative flex flex-1 flex-col justify-center overflow-hidden px-5 py-8 sm:px-7 sm:py-9"><div class="pointer-events-none absolute inset-0 dev-grid-bg-fine opacity-[0.5] [mask-image:linear-gradient(to_bottom,black_20%,transparent_90%)]"></div><div class="relative grid grid-cols-2 gap-3"><div class="flex flex-col gap-2.5 rounded-lg border border-border bg-background/80 p-4 backdrop-blur-sm transition-all hover:-translate-y-0.5 hover:border-border-strong hover:bg-background" style="opacity:0;transform:translateY(-10px) scale(0.97)"><div class="flex items-center justify-between gap-2"><div class="flex min-h-[24px] items-center gap-2"><span class="flex items-center gap-2"><span aria-label="LiveKit" class="flex items-center text-foreground [&amp;&gt;svg]:h-[18px] [&amp;&gt;svg]:w-auto"><svg viewBox="0 0 210 49" xmlns="http://www.w3.org/2000/svg"><path d="M8.42129 0.5H0.365692V47.7521H29.5892V40.8509H8.42129V0.5Z" fill="currentColor"></path><path d="M42.8865 22.0111H35.0809V47.7498H42.8865V22.0111Z" fill="currentColor"></path><path d="M65.8647 46.8174L55.9365 14.2383H48.1309L58.5593 47.7506H73.1702L83.5986 14.2383H75.73L65.8647 46.8174Z" fill="currentColor"></path><path d="M102.963 13.4957C92.8455 13.4957 86.4143 20.7087 86.4143 30.9665C86.4143 41.1635 92.6584 48.5 102.963 48.5C110.829 48.5 116.512 45.0181 118.635 37.8678H110.698C109.512 41.1008 107.325 43.0318 103.016 43.0318C98.2708 43.0318 94.9626 39.7361 94.3384 33.2719H119.191C119.309 32.4478 119.371 31.6165 119.376 30.784C119.378 20.3343 112.884 13.4957 102.963 13.4957ZM94.3995 27.8571C95.2127 21.8282 98.3968 18.9677 102.963 18.9677C107.769 18.9677 111.016 22.5105 111.392 27.8571H94.3995Z" fill="currentColor"></path><path d="M165.02 0.5H154.904L135.298 22.137V0.5H127.242V47.7521H135.298V23.878L156.903 47.7521H167.205L144.602 22.8821L165.02 0.5Z" fill="currentColor"></path><path d="M178.504 14.2383H170.698V39.977H178.504V14.2383Z" fill="currentColor"></path><g><path d="M35.0818 14.2383H27.2763V22.0101H35.0818V14.2383Z" fill="currentColor" opacity="1" style="transform:none;transform-origin:50% 50%;transform-box:fill-box"></path><path d="M35.0818 14.2383H27.2763V22.0101H35.0818V14.2383Z" fill="currentColor" opacity="0" style="transform:translateX(-3%) scale(0);transform-origin:50% 50%;transform-box:fill-box"></path></g><g><path d="M186.311 39.9799H178.506V47.7516H186.311V39.9799Z" fill="currentColor" opacity="1" style="transform:none;transform-origin:50% 50%;transform-box:fill-box"></path><path d="M186.311 39.9799H178.506V47.7516H186.311V39.9799Z" fill="currentColor" opacity="0" style="transform:translateX(-3%) scale(0);transform-origin:50% 50%;transform-box:fill-box"></path></g><g><path d="M209.634 39.9799H201.829V47.7516H209.634V39.9799Z" fill="currentColor" opacity="1" style="transform:none;transform-origin:50% 50%;transform-box:fill-box"></path><path d="M209.634 39.9799H201.829V47.7516H209.634V39.9799Z" fill="currentColor" opacity="0" style="transform:translateX(-3%) scale(0);transform-origin:50% 50%;transform-box:fill-box"></path></g><path d="M209.633 22.0116V14.2398H201.828V0.5H194.022V14.2398H186.217V22.0116H194.022V39.9804H201.828V22.0116H209.633Z" fill="currentColor"></path></svg></span></span></div><span class="font-mono-ui text-[8.5px] uppercase tracking-[0.1em] text-muted-foreground/55">framework</span></div><p class="text-[11.5px] leading-relaxed text-muted-foreground">Give your LiveKit agent a real phone number over SIP trunking.</p></div><div class="flex flex-col gap-2.5 rounded-lg border border-border bg-background/80 p-4 backdrop-blur-sm transition-all hover:-translate-y-0.5 hover:border-border-strong hover:bg-background" style="opacity:0;transform:translateY(-10px) scale(0.97)"><div class="flex items-center justify-between gap-2"><div class="flex min-h-[24px] items-center gap-2"><span class="flex items-center gap-2"><span aria-label="Pipecat" class="flex items-center text-foreground [&amp;&gt;svg]:h-[18px] [&amp;&gt;svg]:w-auto"><svg viewBox="0 0 332 192" fill="none" xmlns="http://www.w3.org/2000/svg" class="logo"><path d="M45.7718 0.770123C50.4477 -0.990356 55.7252 0.330677 59.0204 4.08644L101.936 53.0005H230.064L272.98 4.08644C276.275 0.330677 281.552 -0.990356 286.228 0.770123C290.904 2.5306 294 7.00416 294 12.0005V120H332V144H270V43.8733L244.52 72.9146C242.242 75.5116 238.955 77.0005 235.5 77.0005H96.5C93.0452 77.0005 89.7581 75.5116 87.4796 72.9146L62 43.8733V144H0V120H38V12.0005C38 7.00416 41.0958 2.5306 45.7718 0.770123Z" fill="currentColor"></path><path d="M270 168.001H332V192.001H270V168.001Z" fill="currentColor"></path><path d="M0 168.001H62V192.001H0V168.001Z" fill="currentColor"></path><path d="M128 128.001C128 136.837 120.837 144.001 112 144.001C103.163 144.001 96 136.837 96 128.001C96 119.164 103.163 112.001 112 112.001C120.837 112.001 128 119.164 128 128.001Z" fill="currentColor"></path><path d="M236 128.001C236 136.837 228.837 144.001 220 144.001C211.163 144.001 204 136.837 204 128.001C204 119.164 211.163 112.001 220 112.001C228.837 112.001 236 119.164 236 128.001Z" fill="currentColor"></path></svg></span><span class="font-sora text-[13px] font-semibold leading-none text-foreground">Pipecat</span></span></div><span class="font-mono-ui text-[8.5px] uppercase tracking-[0.1em] text-muted-foreground/55">framework</span></div><p class="text-[11.5px] leading-relaxed text-muted-foreground">Stream live call audio into your Pipecat pipeline.</p></div><div class="flex flex-col gap-2.5 rounded-lg border border-border bg-background/80 p-4 backdrop-blur-sm transition-all hover:-translate-y-0.5 hover:border-border-strong hover:bg-background" style="opacity:0;transform:translateY(-10px) scale(0.97)"><div class="flex items-center justify-between gap-2"><div class="flex min-h-[24px] items-center gap-2"><span class="flex h-6 w-6 shrink-0 items-center justify-center rounded-md border border-border bg-background text-primary"><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-3.5 w-3.5"><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></span><span class="font-sora text-[13px] font-semibold leading-none text-foreground">SIP Trunking</span></div><span class="font-mono-ui text-[8.5px] uppercase tracking-[0.1em] text-muted-foreground/55">transport</span></div><p class="text-[11.5px] leading-relaxed text-muted-foreground">Carrier-grade inbound + outbound trunks, self-serve.</p></div><div class="flex flex-col gap-2.5 rounded-lg border border-border bg-background/80 p-4 backdrop-blur-sm transition-all hover:-translate-y-0.5 hover:border-border-strong hover:bg-background" style="opacity:0;transform:translateY(-10px) scale(0.97)"><div class="flex items-center justify-between gap-2"><div class="flex min-h-[24px] items-center gap-2"><span class="flex h-6 w-6 shrink-0 items-center justify-center rounded-md border border-border bg-background text-primary"><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-audio-waveform h-3.5 w-3.5"><path d="M2 13a2 2 0 0 0 2-2V7a2 2 0 0 1 4 0v13a2 2 0 0 0 4 0V4a2 2 0 0 1 4 0v13a2 2 0 0 0 4 0v-4a2 2 0 0 1 2-2"></path></svg></span><span class="font-sora text-[13px] font-semibold leading-none text-foreground">Audio Streaming</span></div><span class="font-mono-ui text-[8.5px] uppercase tracking-[0.1em] text-muted-foreground/55">transport</span></div><p class="text-[11.5px] leading-relaxed text-muted-foreground">Bidirectional audio with BVC and noise cancellation.</p></div></div><style>
                @keyframes abv4-reveal {
                  0%   { opacity: 0; transform: translateY(-10px) scale(0.97); }
                  100% { opacity: 1; transform: translateY(0)     scale(1); }
                }
              </style></div><div class="flex flex-col gap-4 border-t border-border px-5 py-6 sm:px-7"><div class="flex items-baseline gap-3"><h3 class="font-sora text-xl font-semibold tracking-[-0.015em] text-foreground">Programmable AI agents</h3><span class="font-mono-ui text-[10.5px] uppercase tracking-[0.1em] text-muted-foreground">sdk · api</span></div><p class="text-sm leading-relaxed text-muted-foreground">Bring LiveKit or Pipecat, or build straight on our voice APIs, on Plivo&#x27;s low-latency, carrier-grade telephony.</p><ul class="flex flex-wrap gap-x-5 gap-y-1.5"><li class="flex items-center gap-1.5 text-sm text-foreground/80"><span class="font-mono-ui text-primary">›</span>Real phone numbers, self-serve</li><li class="flex items-center gap-1.5 text-sm text-foreground/80"><span class="font-mono-ui text-primary">›</span>Full control, zero glue code</li></ul><div class="mt-auto flex flex-wrap gap-x-4 gap-y-1.5 border-t border-border pt-5 font-mono-ui text-[11px] text-muted-foreground"><span>› python</span><span>› node</span><span>› go</span><span>› rest</span></div></div></div><div class="group relative flex flex-col overflow-hidden rounded-lg border border-border bg-surface transition-colors hover:border-border-strong"><div class="flex items-center justify-between border-b border-border bg-background/40 px-4 py-2.5"><span class="font-mono-ui text-[11px] text-muted-foreground">/stack/studio</span><span class="font-mono-ui inline-flex items-center gap-1 text-[11px] text-primary"><span class="h-1.5 w-1.5 rounded-full bg-primary"></span>prompt</span></div><div class="relative flex flex-1 flex-col justify-center overflow-hidden px-5 py-8 sm:px-7 sm:py-10"><div class="pointer-events-none absolute inset-0 dev-grid-bg-fine opacity-[0.5] [mask-image:linear-gradient(to_bottom,black_20%,transparent_90%)]"></div><div class="relative space-y-3"><div class="rounded-md border border-border bg-background p-4 shadow-[0_0_0_1px_rgba(50,61,254,0.08)]"><div class="mb-2 flex items-center justify-between"><span class="font-mono-ui text-[10.5px] uppercase tracking-[0.08em] text-muted-foreground">describe your agent</span><span class="font-mono-ui text-[10.5px] text-muted-foreground">↵ enter</span></div><div class="min-h-[100px] text-[14px] leading-relaxed text-foreground"><span class="relative"><span class="ml-0.5 inline-block h-[1.05em] w-[2px] -translate-y-[1px] animate-pulse bg-primary align-middle"></span></span></div></div><ul class="space-y-1.5"><li class="flex items-start gap-2 rounded-md border border-dashed border-border bg-background/50 px-3 py-2 text-[12px] text-muted-foreground"><span class="font-mono-ui shrink-0 text-primary">›</span><span class="line-clamp-1">“<!-- -->Outbound agent for collecting post-delivery feedback. Ask 3 short rating questions and log responses to the CRM.<!-- -->”</span></li><li class="flex items-start gap-2 rounded-md border border-dashed border-border bg-background/50 px-3 py-2 text-[12px] text-muted-foreground"><span class="font-mono-ui shrink-0 text-primary">›</span><span class="line-clamp-1">“<!-- -->Inbound support agent. Look up order status by phone number and read out the ETA.<!-- -->”</span></li></ul></div></div><div class="flex flex-col gap-4 border-t border-border px-5 py-6 sm:px-7"><div class="flex items-baseline gap-3"><h3 class="font-sora text-xl font-semibold tracking-[-0.015em] text-foreground">No-code AI agent studio</h3><span class="font-mono-ui text-[10.5px] uppercase tracking-[0.1em] text-muted-foreground">visual · prompt</span></div><p class="text-sm leading-relaxed text-muted-foreground">Build, test, and deploy omni-channel AI agents in minutes. No code required. Move fast and focus on outcomes, not infrastructure.</p><ul class="flex flex-wrap gap-x-5 gap-y-1.5"><li class="flex items-center gap-1.5 text-sm text-foreground/80"><span class="font-mono-ui text-primary">›</span>Build agent in plain English</li><li class="flex items-center gap-1.5 text-sm text-foreground/80"><span class="font-mono-ui text-primary">›</span>Drag and drop simplicity</li></ul><div class="mt-auto flex flex-wrap gap-x-4 gap-y-1.5 border-t border-border pt-5 font-mono-ui text-[11px] text-muted-foreground"><span>› studio</span><span>› templates</span><span>› instant preview</span></div></div></div></div></div></section><!--astro:end--></astro-island> <astro-island uid="NkhnO" prefix="r13" component-url="/_astro/CreditsVCSection.BU_vj1S5.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;CreditsVCSection&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/images/client-logos/zomato.svg"/><link rel="preload" as="image" href="/images/client-logos/amul.svg"/><link rel="preload" as="image" href="/images/client-logos/tata-1mg.svg"/><link rel="preload" as="image" href="/images/client-logos/great-learning.svg"/><section class="bg-background py-12 sm:py-16 md:py-20"><div class="container mx-auto max-w-7xl px-4"><div class="flex items-center gap-3 font-mono-ui text-[11px] uppercase tracking-[0.12em] text-muted-foreground"><span class="flex shrink-0 items-center gap-2"><span class="tabular-nums text-foreground/70">03</span><span class="h-px w-6 bg-border"></span></span><span class="shrink-0">for investors</span><span class="flex-1 border-t border-dashed border-border"></span><div class="hidden shrink-0 items-center gap-1 sm:flex"><span class="text-muted-foreground/80">works with vc, accelerators &amp; incubators</span></div></div><div class="grid items-center gap-12 md:grid-cols-2 lg:gap-20 mt-12"><div><h2 class="font-sora text-[2rem] sm:text-[2.5rem] md:text-[3rem] font-normal leading-[1.04] tracking-[-0.035em] text-foreground mb-5">Invest in the company. We&#x27;ll invest in the infrastructure.</h2><p class="text-sm leading-relaxed text-muted-foreground mb-8">Your portfolio companies are building on top of voice, SMS, and WhatsApp. We&#x27;ve powered that layer since 2011, for startups that grew into household names. Partner with us and we&#x27;ll make sure communication is never the bottleneck.</p><ul class="space-y-3 mb-10"><li class="flex items-start gap-3"><div class="mt-0.5 flex-shrink-0 w-5 h-5 rounded-full bg-primary/10 flex items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check w-3 h-3 text-primary"><path d="M20 6 9 17l-5-5"></path></svg></div><span class="text-[14px] text-foreground leading-relaxed">Direct line to a Plivo engineer, not a support queue.</span></li><li class="flex items-start gap-3"><div class="mt-0.5 flex-shrink-0 w-5 h-5 rounded-full bg-primary/10 flex items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check w-3 h-3 text-primary"><path d="M20 6 9 17l-5-5"></path></svg></div><span class="text-[14px] text-foreground leading-relaxed">99.99% uptime. We ensure your startup never goes down.</span></li></ul><a href="https://www.plivo.com/contact/sales/" class="inline-flex items-center justify-center gap-2 rounded-md bg-foreground px-6 py-3 text-[14px] font-medium text-background transition-colors cta-hover-gradient">Talk to us<svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a></div><div><div class="relative w-full rounded-xl border border-border bg-background overflow-hidden"><div class="relative overflow-hidden aspect-square md:aspect-auto md:h-[340px]" style="background-image:radial-gradient(circle, hsl(var(--border)) 1px, transparent 1px);background-size:22px 22px"><div style="position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);width:460px;height:460px"><canvas class="aspect-square" style="width:460px;height:460px;max-width:100%;contain:layout paint size;cursor:grab"></canvas></div><div style="position:absolute;top:12%;left:14%" class="z-10 w-[96px] h-[40px] flex items-center justify-center bg-card rounded-lg shadow-md border border-border overflow-hidden"><img src="/images/client-logos/zomato.svg" alt="Zomato" style="--light-filter:brightness(0) opacity(0.325);--dark-filter:brightness(0) invert(1) opacity(0.7150000000000001);filter:var(--logo-filter, var(--light-filter));transform:scale(3)" class="h-[16px] w-auto max-w-[80px] dark:[--logo-filter:var(--dark-filter)]"/></div><div style="position:absolute;top:12%;right:14%" class="z-10 w-[96px] h-[40px] flex items-center justify-center bg-card rounded-lg shadow-md border border-border overflow-hidden"><img src="/images/client-logos/amul.svg" alt="Amul" style="--light-filter:brightness(0) opacity(0.325);--dark-filter:brightness(0) invert(1) opacity(0.7150000000000001);filter:var(--logo-filter, var(--light-filter));transform:scale(2.8)" class="h-[16px] w-auto max-w-[80px] dark:[--logo-filter:var(--dark-filter)]"/></div><div style="position:absolute;bottom:12%;left:14%" class="z-10 w-[96px] h-[40px] flex items-center justify-center bg-card rounded-lg shadow-md border border-border overflow-hidden"><img src="/images/client-logos/tata-1mg.svg" alt="Tata 1mg" style="--light-filter:brightness(0) opacity(0.325);--dark-filter:brightness(0) invert(1) opacity(0.7150000000000001);filter:var(--logo-filter, var(--light-filter));transform:scale(2.8)" class="h-[16px] w-auto max-w-[80px] dark:[--logo-filter:var(--dark-filter)]"/></div><div style="position:absolute;bottom:12%;right:14%" class="z-10 w-[96px] h-[40px] flex items-center justify-center bg-card rounded-lg shadow-md border border-border overflow-hidden"><img src="/images/client-logos/great-learning.svg" alt="Great Learning" style="--light-filter:brightness(0) opacity(0.325);--dark-filter:brightness(0) invert(1) opacity(0.7150000000000001);filter:var(--logo-filter, var(--light-filter));transform:scale(2.8)" class="h-[16px] w-auto max-w-[80px] dark:[--logo-filter:var(--dark-filter)]"/></div></div><div class="grid grid-cols-2 border-t border-border"><div class="flex flex-col px-5 py-4 border-r border-border border-b border-border"><span class="text-xl font-semibold text-foreground">3 Billion+</span><span class="text-xs text-muted-foreground mt-0.5">calls handled annually</span></div><div class="flex flex-col px-5 py-4  border-b border-border"><span class="text-xl font-semibold text-foreground">99.99%</span><span class="text-xs text-muted-foreground mt-0.5">Platform uptime</span></div><div class="flex flex-col px-5 py-4 border-r border-border "><span class="text-xl font-semibold text-foreground">50+</span><span class="text-xs text-muted-foreground mt-0.5">Languages supported</span></div><div class="flex flex-col px-5 py-4  "><span class="text-xl font-semibold text-foreground">150+</span><span class="text-xs text-muted-foreground mt-0.5">Countries connected</span></div></div></div></div></div></div></section><!--astro:end--></astro-island> <astro-island uid="ZVp2fl" prefix="r14" component-url="/_astro/CreditsCTA.BaNIZuNe.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;CreditsCTA&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/images/credits/buddy.png"/><section class="py-6 md:py-10 bg-background"><style>
        @keyframes gradient-pan {
          0%   { background-position: 0% 50%; }
          50%  { background-position: 100% 50%; }
          100% { background-position: 0% 50%; }
        }
        .credits-cta-bg {
          background: linear-gradient(135deg, #cd3ef9, #4f46e5, #323dfe, #7c3aed, #a855f7, #cd3ef9);
          background-size: 300% 300%;
          animation: gradient-pan 7s ease infinite;
        }
      </style><div class="container mx-auto max-w-7xl px-4"><div class="relative"><div class="credits-cta-bg absolute inset-0 rounded-2xl"></div><div class="relative flex flex-col md:flex-row items-center justify-between gap-6 rounded-2xl px-6 py-6 lg:px-14 lg:py-7"><div class="flex-1 min-w-0 pr-[130px] md:pr-[180px] lg:pr-[200px]"><h4 class="font-sora mb-2 text-[1.4rem] md:text-[1.65rem] font-normal leading-[1.2] tracking-[-0.02em] text-white">Your next unicorn is already in your portfolio.</h4><p class="hidden md:block text-white/70 text-[13.5px] leading-relaxed mb-5">The ones that scale fastest are usually the ones that picked the right infrastructure early. Let&#x27;s make sure communication isn&#x27;t the thing that slows them down.</p><a href="#apply" class="inline-flex items-center gap-2 rounded-md bg-background px-5 py-2.5 text-[13px] font-semibold text-foreground transition-opacity hover:opacity-90">Claim credits<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 w-3.5 h-3.5"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div><div class="absolute right-6 lg:right-10 bottom-0"><img src="/images/credits/buddy.png" alt="" class="h-[150px] md:h-[220px] w-auto"/></div></div></div></div></section><!--astro:end--></astro-island> <astro-island uid="1Azgxp" prefix="r15" component-url="/_astro/CreditsLabs.D4tWL-H3.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;CreditsLabs&quot;,&quot;value&quot;:true}" await-children><section class="bg-background py-12 sm:py-16 md:py-20"><div class="container mx-auto max-w-7xl px-4"><div class="flex items-center gap-3 font-mono-ui text-[11px] uppercase tracking-[0.12em] text-muted-foreground"><span class="flex shrink-0 items-center gap-2"><span class="tabular-nums text-foreground/70">04</span><span class="h-px w-6 bg-border"></span></span><span class="shrink-0">plivo labs</span><span class="flex-1 border-t border-dashed border-border"></span><div class="hidden shrink-0 items-center gap-1 sm:flex"><span class="text-muted-foreground/80">open source</span></div></div><div class="grid items-center gap-12 md:grid-cols-2 lg:gap-20 mt-12"><div><h2 class="font-sora text-[2rem] sm:text-[2.5rem] md:text-[3rem] font-normal leading-[1.04] tracking-[-0.035em] text-foreground mb-5">Open-source tools for building AI agents.</h2><p class="text-sm leading-relaxed text-muted-foreground mb-8">Plivo Labs is where we build and maintain the open-source projects behind the communication layer.</p><ul class="space-y-3 mb-10"><li class="flex items-start gap-3"><div class="mt-0.5 flex-shrink-0 w-5 h-5 rounded-full bg-primary/10 flex items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check w-3 h-3 text-primary"><path d="M20 6 9 17l-5-5"></path></svg></div><span class="text-[14px] text-foreground leading-relaxed">Use them as-is, fork them for your stack, or contribute back.</span></li><li class="flex items-start gap-3"><div class="mt-0.5 flex-shrink-0 w-5 h-5 rounded-full bg-primary/10 flex items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check w-3 h-3 text-primary"><path d="M20 6 9 17l-5-5"></path></svg></div><span class="text-[14px] text-foreground leading-relaxed">If you&#x27;re building something that pushes voice, messaging, or real-time audio in a new direction, we want to see it.</span></li><li class="flex items-start gap-3"><div class="mt-0.5 flex-shrink-0 w-5 h-5 rounded-full bg-primary/10 flex items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-check w-3 h-3 text-primary"><path d="M20 6 9 17l-5-5"></path></svg></div><span class="text-[14px] text-foreground leading-relaxed">Check out what we&#x27;ve shipped, open an issue, or submit a PR.</span></li></ul><a href="https://github.com/plivo-labs" target="_blank" rel="noopener noreferrer" class="inline-flex items-center justify-center gap-2 rounded-md bg-foreground px-6 py-3 text-[14px] font-medium text-background transition-colors cta-hover-gradient">Explore Plivo Labs<svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a></div><div><div class="w-full rounded-xl border border-border bg-background overflow-hidden" style="background-image:radial-gradient(circle, hsl(var(--border)) 1px, transparent 1px);background-size:22px 22px"><svg width="100%" viewBox="0 0 460 416" style="display:block" preserveAspectRatio="xMidYMid meet"><defs><filter id="lv-shadow" x="-8%" y="-8%" width="116%" height="124%"><feDropShadow dx="0" dy="2" stdDeviation="3" flood-opacity="0.18"></feDropShadow></filter><filter id="lv-sphere-glow" x="-60%" y="-60%" width="220%" height="220%"><feGaussianBlur stdDeviation="11"></feGaussianBlur></filter><linearGradient id="lv-sphere-fill" x1="20%" y1="0%" x2="80%" y2="100%"><stop offset="0%" stop-color="hsl(var(--primary))"></stop><stop offset="100%" stop-color="hsl(var(--background))" stop-opacity="0.9"></stop></linearGradient></defs><g opacity="0.5"><rect x="195" y="80" width="136" height="54" rx="9" fill="hsl(var(--card))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><rect x="206" y="90" width="18" height="18" rx="5" fill="hsl(var(--primary) / 0.14)"></rect><rect x="231" y="93" width="56" height="8" rx="3" fill="hsl(var(--muted-foreground))" fill-opacity="0.5"></rect><line x1="206" y1="112" x2="320" y2="112" stroke="hsl(var(--border))" stroke-width="0.75"></line><rect x="206" y="119" width="108" height="6" rx="3" fill="hsl(var(--muted))"></rect><rect x="206" y="128" width="72" height="5" rx="2.5" fill="hsl(var(--muted))" fill-opacity="0.6"></rect></g><path d="M188,72 L280,72" stroke="hsl(var(--primary))" stroke-width="1.5" fill="none" stroke-dasharray="7 5" stroke-opacity="0.7"></path><path d="M188,202 L280,202" stroke="hsl(var(--primary))" stroke-width="1.5" fill="none" stroke-dasharray="7 5" stroke-opacity="0.7"></path><path d="M188,340 L280,340" stroke="hsl(var(--primary))" stroke-width="1.5" fill="none" stroke-dasharray="7 5" stroke-opacity="0.7"></path><path d="M280,72 L280,340" stroke="hsl(var(--primary))" stroke-width="1.5" fill="none" stroke-dasharray="7 5" stroke-opacity="0.7"></path><path d="M280,202 L349,202" stroke="hsl(var(--primary))" stroke-width="1.5" fill="none" stroke-dasharray="7 5" stroke-opacity="0.7"></path><circle cx="385" cy="202" r="42" fill="hsl(var(--primary))" filter="url(#lv-sphere-glow)"><animate attributeName="r" values="40;46;40" dur="3.5s" repeatCount="indefinite"></animate><animate attributeName="opacity" values="0.85;0.55;0.85" dur="3.5s" repeatCount="indefinite"></animate></circle><circle cx="385" cy="202" r="36" fill="url(#lv-sphere-fill)"></circle><g transform="translate(385,202)"><path d="M0,-13 Q5,-5 13,0 Q5,5 0,13 Q-5,5 -13,0 Q-5,-5 0,-13 Z" fill="#ffffff" fill-opacity="0.95"><animateTransform attributeName="transform" type="scale" values="1;0.75;1" dur="2s" repeatCount="indefinite" additive="sum"></animateTransform><animateTransform attributeName="transform" type="rotate" values="0;20;0;-20;0" dur="9s" repeatCount="indefinite" additive="sum"></animateTransform></path></g><rect x="40" y="24" width="148" height="96" rx="8" fill="hsl(var(--background))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><text x="47" y="45" fill="hsl(var(--foreground))" font-size="10" font-weight="600" font-family="system-ui,sans-serif">Transportation</text><rect x="47" y="53" width="42" height="14" rx="3" fill="hsl(var(--muted))" stroke="hsl(var(--border))" stroke-width="0.5"><animate attributeName="fill-opacity" values="1;0.5;1" dur="3.6s" repeatCount="indefinite" begin="0s"></animate></rect><text x="68" y="63" text-anchor="middle" fill="hsl(var(--foreground))" font-size="7.5" font-weight="600" font-family="system-ui,sans-serif">LiveKit</text><rect x="93" y="53" width="42" height="14" rx="3" fill="hsl(var(--muted))" stroke="hsl(var(--border))" stroke-width="0.5"><animate attributeName="fill-opacity" values="1;0.5;1" dur="3.6s" repeatCount="indefinite" begin="1.8s"></animate></rect><text x="114" y="63" text-anchor="middle" fill="hsl(var(--foreground))" font-size="7.5" font-weight="600" font-family="system-ui,sans-serif">Pipecat</text><line x1="47" y1="74" x2="181" y2="74" stroke="hsl(var(--border))" stroke-width="0.75"></line><circle cx="52" cy="85" r="7" fill="hsl(var(--primary))" fill-opacity="0"><animate attributeName="r" values="4;10;4" dur="3s" repeatCount="indefinite"></animate><animate attributeName="fill-opacity" values="0.25;0;0.25" dur="3s" repeatCount="indefinite"></animate></circle><circle cx="52" cy="85" r="3" fill="hsl(var(--primary))"></circle><text x="59" y="89" fill="hsl(var(--muted-foreground))" font-size="8" font-family="system-ui,sans-serif">·<!-- --> agents running</text><text x="181" y="89" text-anchor="end" fill="hsl(var(--primary))" font-size="8" font-weight="600" font-family="system-ui,sans-serif">deploy →</text><text x="47" y="103" fill="hsl(var(--muted-foreground))" font-size="7" font-family="system-ui,sans-serif">Utilization</text><text x="181" y="103" text-anchor="end" fill="hsl(var(--foreground))" font-size="7" font-weight="600" font-family="system-ui,sans-serif">0<!-- -->%</text><rect x="47" y="107" width="132" height="4" rx="2" fill="hsl(var(--muted))"></rect><rect x="47" y="107" width="0" height="4" rx="2" fill="hsl(var(--primary))"></rect><rect x="40" y="148" width="148" height="108" rx="8" fill="hsl(var(--background))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><text x="47" y="169" fill="hsl(var(--foreground))" font-size="10" font-weight="600" font-family="system-ui,sans-serif">Observability</text><rect x="47" y="177" width="134" height="30" rx="4" fill="hsl(var(--muted))"></rect><rect x="49" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="55.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="62" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="68.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="75" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="81.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="88" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="94.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="101" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="107.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="114" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="120.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--muted-foreground))" fill-opacity="0.55"></rect><rect x="127" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="133.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="140" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="146.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="153" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="159.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="166" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><rect x="172.5" y="206" width="4.5" height="0" rx="1.5" fill="hsl(var(--primary))" fill-opacity="0.95"></rect><line x1="47" y1="215" x2="181" y2="215" stroke="hsl(var(--border))" stroke-width="0.75"></line><text x="47" y="226" fill="hsl(var(--muted-foreground))" font-size="8" font-family="system-ui,sans-serif">Voice latency</text><text x="181" y="226" text-anchor="end" fill="hsl(var(--foreground))" font-size="8" font-weight="600" font-family="system-ui,sans-serif">·.·s</text><line x1="47" y1="232" x2="181" y2="232" stroke="hsl(var(--border))" stroke-width="0.5"></line><text x="47" y="243" fill="hsl(var(--muted-foreground))" font-size="8" font-family="system-ui,sans-serif">Platform uptime</text><text x="181" y="243" text-anchor="end" fill="hsl(var(--foreground))" font-size="8" font-weight="600" font-family="system-ui,sans-serif">··.··%</text><rect x="40" y="284" width="148" height="108" rx="8" fill="hsl(var(--background))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><text x="47" y="305" fill="hsl(var(--foreground))" font-size="10" font-weight="600" font-family="system-ui,sans-serif">Evals</text><g><text x="47" y="325" fill="hsl(var(--muted-foreground))" font-size="7.5" font-family="system-ui,sans-serif">support-bot</text><text x="181" y="325" fill="hsl(var(--foreground))" font-size="7.5" font-weight="600" text-anchor="end" font-family="system-ui,sans-serif">··%</text><rect x="47" y="329" width="132" height="5" rx="2.5" fill="hsl(var(--muted))"></rect><rect x="47" y="329" width="0" height="5" rx="2.5" fill="hsl(var(--primary))"></rect></g><g><text x="47" y="357" fill="hsl(var(--muted-foreground))" font-size="7.5" font-family="system-ui,sans-serif">pizza-bot</text><text x="181" y="357" fill="hsl(var(--foreground))" font-size="7.5" font-weight="600" text-anchor="end" font-family="system-ui,sans-serif">··%</text><rect x="47" y="361" width="132" height="5" rx="2.5" fill="hsl(var(--muted))"></rect><rect x="47" y="361" width="0" height="5" rx="2.5" fill="hsl(var(--primary))"></rect></g><line x1="47" y1="376" x2="181" y2="376" stroke="hsl(var(--border))" stroke-width="0.75"></line><text x="47" y="385" fill="hsl(var(--muted-foreground))" font-size="7.5" font-family="system-ui,sans-serif">30 runs total</text><text x="181" y="385" text-anchor="end" fill="hsl(var(--muted-foreground))" font-size="7.5" font-family="system-ui,sans-serif">avg 28s / call</text><g opacity="0.45"><rect x="293" y="12" width="136" height="54" rx="9" fill="hsl(var(--card))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><rect x="304" y="22" width="18" height="18" rx="5" fill="hsl(var(--primary) / 0.14)"></rect><rect x="329" y="25" width="65" height="8" rx="3" fill="hsl(var(--muted-foreground))" fill-opacity="0.5"></rect><rect x="304" y="44" width="108" height="6" rx="3" fill="hsl(var(--muted))"></rect><rect x="304" y="56" width="66" height="5" rx="2.5" fill="hsl(var(--muted))" fill-opacity="0.6"></rect></g><g opacity="0.45"><rect x="268" y="255" width="136" height="44" rx="9" fill="hsl(var(--card))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><rect x="279" y="265" width="18" height="18" rx="5" fill="hsl(var(--primary) / 0.14)"></rect><rect x="304" y="268" width="65" height="8" rx="3" fill="hsl(var(--muted-foreground))" fill-opacity="0.5"></rect><rect x="279" y="287" width="108" height="6" rx="3" fill="hsl(var(--muted))"></rect></g><g opacity="0.45"><rect x="243" y="346" width="136" height="44" rx="9" fill="hsl(var(--card))" stroke="hsl(var(--border))" stroke-width="1" filter="url(#lv-shadow)"></rect><rect x="254" y="356" width="18" height="18" rx="5" fill="hsl(var(--primary) / 0.14)"></rect><rect x="279" y="359" width="65" height="8" rx="3" fill="hsl(var(--muted-foreground))" fill-opacity="0.5"></rect><rect x="254" y="378" width="108" height="6" rx="3" fill="hsl(var(--muted))"></rect></g></svg></div></div></div></div></section><!--astro:end--></astro-island> <astro-island uid="Z1RJsWN" prefix="r16" component-url="/_astro/CreditsTestimonials.DSplIGSN.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;CreditsTestimonials&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="https://www.plivo.com/images/customers/pratik-bolna.jpg"/><link rel="preload" as="image" href="/images/credits/Sid ringg ai.jpeg"/><link rel="preload" as="image" href="/images/credits/Mohit gulati.jpeg"/><section class="bg-muted py-12 sm:py-16 md:py-20"><div class="container mx-auto max-w-7xl px-4"><div class="flex items-center gap-3 font-mono-ui text-[11px] uppercase tracking-[0.12em] text-muted-foreground"><span class="flex shrink-0 items-center gap-2"><span class="tabular-nums text-foreground/70">05</span><span class="h-px w-6 bg-border"></span></span><span class="shrink-0">testimonials</span><span class="flex-1 border-t border-dashed border-border"></span><div class="hidden shrink-0 items-center gap-1 sm:flex"><span class="text-muted-foreground/80">from founders, builders &amp; ctos</span></div></div><div class="flex flex-col mt-12 mb-14" style="opacity:0;transform:translateY(20px)"><h2 class="font-sora text-[2rem] sm:text-[2.5rem] md:text-[3rem] font-normal leading-[1.04] tracking-[-0.035em] text-foreground mb-4">Trusted by builders from day one.</h2><p class="text-sm leading-relaxed text-muted-foreground">Startups across the globe use Plivo to power voice, SMS, and WhatsApp - from first prototype to millions of users.</p></div><div class="grid grid-cols-1 md:grid-cols-3 gap-5"><div class="p-6 rounded-xl border border-border bg-card shadow-sm flex flex-col" style="opacity:0;transform:translateY(20px)"><blockquote class="m-0 p-0 flex flex-col flex-1"><p class="text-[14px] text-muted-foreground leading-relaxed flex-1">&quot;<!-- -->If today you&#x27;re building anything in voice AI and you&#x27;re not using Plivo as a provider, you&#x27;re probably making a mistake.<!-- -->&quot;</p><footer class="flex items-center gap-3 mt-6 pt-5 border-t border-border"><img src="https://www.plivo.com/images/customers/pratik-bolna.jpg" alt="Prateek Sachan" width="36" height="36" class="w-9 h-9 rounded-full object-cover flex-shrink-0"/><div class="flex flex-col min-w-0"><cite class="font-semibold not-italic text-[13px] text-foreground leading-snug">Prateek Sachan</cite><span class="text-[12px] text-muted-foreground mt-0.5 leading-snug">Co-Founder &amp; CTO, Bolna</span></div></footer></blockquote></div><div class="p-6 rounded-xl border border-border bg-card shadow-sm flex flex-col" style="opacity:0;transform:translateY(20px)"><blockquote class="m-0 p-0 flex flex-col flex-1"><p class="text-[14px] text-muted-foreground leading-relaxed flex-1">&quot;<!-- -->If you go into the Plivo ecosystem and you&#x27;re building on top of it, you&#x27;re pretty much sorted for life. There&#x27;s one less problem you need to care about.<!-- -->&quot;</p><footer class="flex items-center gap-3 mt-6 pt-5 border-t border-border"><img src="/images/credits/Sid ringg ai.jpeg" alt="Siddharth Shankar Tripathi" width="36" height="36" class="w-9 h-9 rounded-full object-cover flex-shrink-0"/><div class="flex flex-col min-w-0"><cite class="font-semibold not-italic text-[13px] text-foreground leading-snug">Siddharth Shankar Tripathi</cite><span class="text-[12px] text-muted-foreground mt-0.5 leading-snug">Founder, Ringg AI</span></div></footer></blockquote></div><div class="p-6 rounded-xl border border-border bg-card shadow-sm flex flex-col" style="opacity:0;transform:translateY(20px)"><blockquote class="m-0 p-0 flex flex-col flex-1"><p class="text-[14px] text-muted-foreground leading-relaxed flex-1">&quot;<!-- -->They were not just demo ready. They actually did what they spoke about. And that was the best part about partnering with Plivo.<!-- -->&quot;</p><footer class="flex items-center gap-3 mt-6 pt-5 border-t border-border"><img src="/images/credits/Mohit gulati.jpeg" alt="Mohit Gulati" width="36" height="36" class="w-9 h-9 rounded-full object-cover flex-shrink-0"/><div class="flex flex-col min-w-0"><cite class="font-semibold not-italic text-[13px] text-foreground leading-snug">Mohit Gulati</cite><span class="text-[12px] text-muted-foreground mt-0.5 leading-snug">Global Head of Business Development, Firstwork</span></div></footer></blockquote></div></div></div></section><!--astro:end--></astro-island> <astro-island uid="1UeXIb" prefix="r17" component-url="/_astro/CreditsBottomCTA.DXjGBqae.js" component-export="default" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;CreditsBottomCTA&quot;,&quot;value&quot;:true}" await-children><section class="bg-muted py-12 sm:py-16 md:py-20"><div class="container mx-auto max-w-7xl px-4"><div class="flex items-center gap-3 font-mono-ui text-[11px] uppercase tracking-[0.12em] text-muted-foreground"><span class="flex shrink-0 items-center gap-2"><span class="tabular-nums text-foreground/70">06</span><span class="h-px w-6 bg-border"></span></span><span class="shrink-0">ship it</span><span class="flex-1 border-t border-dashed border-border"></span><div class="hidden shrink-0 items-center gap-1 sm:flex"><span class="text-muted-foreground/80"></span><span class="mx-1 text-border">·</span><span class="rounded px-1.5 py-0.5 text-muted-foreground">one command · production-ready</span></div></div><div class="grid items-center gap-12 md:grid-cols-2 lg:gap-20 mt-12"><div><h2 class="font-sora text-[2rem] sm:text-[2.5rem] md:text-[3rem] font-normal leading-[1.04] tracking-[-0.035em] text-foreground mb-5">Ready to make every call count?</h2><p class="text-sm leading-relaxed text-muted-foreground mb-8">Get ₹1,000 in free credits. No credit card required. Deploy your first agent in under 10 minutes.</p><div class="flex flex-wrap items-center gap-3 mb-8"><a href="https://cx.plivo.com/signup" class="inline-flex items-center justify-center gap-2 rounded-md bg-foreground px-6 py-3 text-[14px] font-medium text-background transition-colors cta-hover-gradient">Sign up for free<svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg></a><a href="https://www.plivo.com/contact/sales/" class="inline-flex items-center justify-center rounded-md border border-border bg-background px-6 py-3 text-[14px] font-medium text-foreground transition-colors hover:bg-muted">Talk to sales</a></div><div class="flex flex-wrap gap-x-5 gap-y-2 font-mono-ui text-[11px] text-muted-foreground"><span>› <!-- -->no credit card</span><span>› <!-- -->free credits</span><span>› <!-- -->cancel anytime</span></div></div><div class="w-full rounded-xl border border-border bg-background overflow-hidden shadow-sm"><div class="flex items-center justify-between px-4 py-3 border-b border-border"><div class="flex items-center gap-1.5"><span class="w-3 h-3 rounded-full bg-[#ff5f57]"></span><span class="w-3 h-3 rounded-full bg-[#febc2e]"></span><span class="w-3 h-3 rounded-full bg-[#28c840]"></span></div><span class="font-mono-ui text-[12px] text-muted-foreground">~/plivo</span><span class="font-mono-ui text-[12px] text-muted-foreground tabular-nums"></span></div><div class="px-5 py-5 space-y-2.5 font-mono text-[13px] leading-relaxed"><div class="text-foreground"><span class="text-muted-foreground select-none">$ </span>plivo agents create --voice nova --language en-US</div><div class="text-muted-foreground">✓ spinning up runtime ...</div><div class="text-muted-foreground">✓ routing in 190+ countries</div><div class="text-primary">✓ ready: agent id = ag_01HAZ7K2...</div><div class="flex items-center text-foreground"><span class="text-muted-foreground select-none">$ </span><span>open https://cx.plivo.com/agents/ag_01HAZ7K2</span><span class="inline-block w-[2px] h-[1.05em] bg-primary ml-0.5 animate-pulse align-middle"></span></div></div><div class="flex items-center justify-between px-5 py-3 border-t border-border"><div class="flex items-center gap-2 font-mono-ui text-[11px] text-muted-foreground"><span class="w-1.5 h-1.5 rounded-full bg-primary inline-block"></span>agent deployed · 5 steps</div><a href="/docs/quickstart/" class="font-mono-ui text-[11px] text-muted-foreground hover:text-foreground transition-colors">quickstart →</a></div></div></div></div></section><!--astro:end--></astro-island>  </main> <astro-island uid="Z1jjhxk" prefix="r19" component-url="/_astro/plivo-footer.CQVWApzj.js" component-export="PlivoFooter" renderer-url="/_astro/client.Yi0K8k_T.js" props="{}" ssr client="visible" opts="{&quot;name&quot;:&quot;PlivoFooter&quot;,&quot;value&quot;:true}" await-children><link rel="preload" as="image" href="/images/plivo-logo.svg"/><link rel="preload" as="image" href="/images/plivo-logo-white.svg"/><footer class="dark dark-band border-t border-border bg-surface-2 text-foreground"><div class="container mx-auto max-w-7xl px-4 pb-8 pt-16"><div class="grid grid-cols-2 gap-8 md:grid-cols-3 lg:grid-cols-5"><div><h3 class="mb-4 font-mono-ui text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground">Platform</h3><ul class="space-y-3"><li><a href="/ai-agents/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">AI Agents</a></li><li><a href="/sip-trunking/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">SIP Trunking</a></li><li><a href="/audio-streaming/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Audio Streaming</a></li><li><a href="/phone-numbers/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Phone Numbers</a></li><li><a href="/pricing/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Pricing</a></li></ul></div><div><h3 class="mb-4 font-mono-ui text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground">Communications</h3><ul class="space-y-3"><li><a href="/voice/overview/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Voice</a></li><li><a href="/sms/overview/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">SMS</a></li><li><a href="/whatsapp/overview/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">WhatsApp</a></li><li><a href="/verify/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Verify</a></li></ul></div><div><h3 class="mb-4 font-mono-ui text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground">Developers</h3><ul class="space-y-3"><li><a href="https://www.plivo.com/docs/voice-agents/sip-trunking/overview" class="text-sm text-foreground/70 transition-colors hover:text-foreground" target="_blank" rel="noopener noreferrer">SIP Trunking guide</a></li><li><a href="https://www.plivo.com/docs/voice-agents/audio-streaming/overview" class="text-sm text-foreground/70 transition-colors hover:text-foreground" target="_blank" rel="noopener noreferrer">Audio Streaming quickstart</a></li><li><a href="https://www.plivo.com/docs/" class="text-sm text-foreground/70 transition-colors hover:text-foreground" target="_blank" rel="noopener noreferrer">Documentation</a></li></ul></div><div><h3 class="mb-4 font-mono-ui text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground">Resources</h3><ul class="space-y-3"><li><a href="https://status.plivo.com/" class="text-sm text-foreground/70 transition-colors hover:text-foreground" target="_blank" rel="noopener noreferrer">Platform status</a></li><li><a href="/livekit/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">LiveKit</a></li><li><a href="/pipecat/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Pipecat</a></li><li><a href="/security/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Compliance</a></li></ul></div><div><h3 class="mb-4 font-mono-ui text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground">Company</h3><ul class="space-y-3"><li><a href="/about/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">About</a></li><li><a href="/jobs/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Jobs</a></li><li><a href="/contact/sales/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Talk to sales</a></li><li><a href="https://support.plivo.com/" class="text-sm text-foreground/70 transition-colors hover:text-foreground" target="_blank" rel="noopener noreferrer">Get support</a></li><li><a href="/legal/tos/" class="text-sm text-foreground/70 transition-colors hover:text-foreground">Legal</a></li></ul></div></div><div class="relative mt-16 flex flex-col items-center gap-6 border-t border-border pt-8 md:flex-row md:justify-between"><a href="/" class="flex items-center" aria-label="Plivo home"><img src="/images/plivo-logo.svg" alt="Plivo" width="55" height="20" class="h-5 w-auto dark:hidden"/><img src="/images/plivo-logo-white.svg" alt="Plivo" width="55" height="20" class="hidden h-5 w-auto dark:block"/></a><p class="font-mono-ui text-xs text-muted-foreground md:absolute md:left-1/2 md:-translate-x-1/2">© <!-- -->2026<!-- --> Plivo Inc.</p><div class="flex items-center gap-4"><a href="https://www.youtube.com/@plivo" target="_blank" rel="noopener noreferrer" class="text-muted-foreground transition-colors hover:text-foreground" aria-label="YouTube"><svg class="h-5 w-5 fill-current" viewBox="0 0 24 24"><path d="M23.498 6.186a3.016 3.016 0 00-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 00.502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 002.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 002.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"></path></svg></a><a href="https://x.com/plivo" target="_blank" rel="noopener noreferrer" class="text-muted-foreground transition-colors hover:text-foreground" aria-label="X"><svg class="h-5 w-5 fill-current" viewBox="0 0 24 24"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path></svg></a><a href="https://www.facebook.com/Plivo/" target="_blank" rel="noopener noreferrer" class="text-muted-foreground transition-colors hover:text-foreground" aria-label="Facebook"><svg class="h-5 w-5 fill-current" viewBox="0 0 24 24"><path d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"></path></svg></a><a href="https://www.linkedin.com/company/plivo-inc" target="_blank" rel="noopener noreferrer" class="text-muted-foreground transition-colors hover:text-foreground" aria-label="LinkedIn"><svg class="h-5 w-5 fill-current" viewBox="0 0 24 24"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"></path></svg></a><a href="https://github.com/plivo" target="_blank" rel="noopener noreferrer" class="text-muted-foreground transition-colors hover:text-foreground" aria-label="GitHub"><svg class="h-5 w-5 fill-current" viewBox="0 0 24 24"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path></svg></a></div></div></div></footer><!--astro:end--></astro-island> <!-- Geo-gated CTA rewriting for .astro components --> <script>
    (function() {
      var SUPPORTED = ["US","CA","BR","AR","GB","DE","FR","NL","BE","IE","ES","PT","IT","IL","AE","SA","QA","BH","IN","SG","MY","ID","VN","AU","NZ"];
      var SIGNUP_URL = "https://plivo.com/signup";
      var TRIAL_URL = "/request-trial/";

      function updateCTAs() {
        var country = "";
        try { country = sessionStorage.getItem("plivo_geo_country") || ""; } catch(e) {}
        if (!country) return false;

        var isSupported = SUPPORTED.indexOf(country.toUpperCase()) >= 0;
        var links = document.querySelectorAll('[data-geo-cta="signup"]');
        for (var i = 0; i < links.length; i++) {
          var el = links[i];
          if (isSupported) {
            el.setAttribute("href", SIGNUP_URL);
          } else {
            el.setAttribute("href", TRIAL_URL);
            el.removeAttribute("target");
            el.removeAttribute("rel");
          }
        }
        return true;
      }

      // Try immediately
      if (!updateCTAs()) {
        // Poll for geo data (up to 4 seconds)
        var attempts = 0;
        var poll = setInterval(function() {
          attempts++;
          if (updateCTAs() || attempts > 40) {
            clearInterval(poll);
          }
        }, 100);
      }

      // Handle Astro page transitions
      document.addEventListener("astro:after-swap", function() {
        setTimeout(updateCTAs, 50);
      });
    })();
    </script> <div id="plivo-cookie-consent-root" data-gtm-container-id="GTM-MXJNN5" data-gtm-allowed-hosts="[&#34;www.plivo.com&#34;]" data-hubspot-script-src="//js.hs-scripts.com/20451141.js" data-posthog-key="phc_5ISIYiMfoaGh9TVGt9ydU6g91tlKvvj1qrDIcC4vKGP" data-posthog-host="https://f.plivo.com" data-consent-version="2026-04-02" data-consent-countries="[&#34;AT&#34;,&#34;BE&#34;,&#34;BG&#34;,&#34;HR&#34;,&#34;CY&#34;,&#34;CZ&#34;,&#34;DK&#34;,&#34;EE&#34;,&#34;FI&#34;,&#34;FR&#34;,&#34;DE&#34;,&#34;GR&#34;,&#34;HU&#34;,&#34;IE&#34;,&#34;IT&#34;,&#34;LV&#34;,&#34;LT&#34;,&#34;LU&#34;,&#34;MT&#34;,&#34;NL&#34;,&#34;PL&#34;,&#34;PT&#34;,&#34;RO&#34;,&#34;SK&#34;,&#34;SI&#34;,&#34;ES&#34;,&#34;SE&#34;,&#34;NO&#34;,&#34;IS&#34;,&#34;LI&#34;,&#34;GB&#34;,&#34;CH&#34;,&#34;BR&#34;,&#34;ZA&#34;,&#34;TH&#34;,&#34;KR&#34;,&#34;JP&#34;,&#34;CA&#34;,&#34;AR&#34;,&#34;TR&#34;,&#34;KE&#34;,&#34;NG&#34;]" data-consent-regions="[&#34;CA&#34;,&#34;FL&#34;]"> <!-- Compact bottom-right cookie banner --> <div id="plivo-cookie-banner" hidden class="fixed bottom-4 right-4 z-[120] w-[340px] max-w-[calc(100vw-2rem)]" aria-live="polite"> <div class="rounded-xl border border-border bg-background p-4 shadow-lg"> <p class="text-[13px] leading-5 text-muted-foreground">
We use cookies for analytics and marketing.
<a href="/cookie-policy/" class="font-medium text-primary hover:underline">Learn more</a> </p> <div class="mt-3 flex items-center gap-2"> <button id="plivo-cookie-reject-all" type="button" class="flex-1 rounded-md border border-border px-3 py-1.5 text-xs font-medium text-foreground transition-colors hover:bg-surface">
Reject
</button> <button id="plivo-cookie-open-preferences" type="button" class="flex-1 rounded-md border border-border px-3 py-1.5 text-xs font-medium text-foreground transition-colors hover:bg-surface">
Manage
</button> <button id="plivo-cookie-accept-all" type="button" class="flex-1 rounded-md bg-foreground px-3 py-1.5 text-xs font-medium text-background transition-colors hover:opacity-90">
Accept
</button> </div> </div> </div> <!-- Small cookie icon (shown after decision, only in consent-required countries) --> <button id="plivo-cookie-settings-button" type="button" hidden aria-label="Cookie settings" class="fixed bottom-4 right-4 z-[110] flex h-8 w-8 items-center justify-center rounded-full border border-border bg-background shadow-md transition-colors hover:bg-surface"> <svg class="h-4 w-4 text-muted-foreground" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"> <circle cx="12" cy="12" r="10"></circle> <circle cx="8" cy="9" r="1.5" fill="currentColor" stroke="none"></circle> <circle cx="14" cy="7.5" r="1" fill="currentColor" stroke="none"></circle> <circle cx="16" cy="13" r="1.5" fill="currentColor" stroke="none"></circle> <circle cx="10" cy="15" r="1" fill="currentColor" stroke="none"></circle> </svg> </button> <div id="plivo-cookie-modal" hidden class="fixed inset-0 z-[130] flex items-center justify-center bg-black/40 px-4 py-8" role="dialog" aria-modal="true" aria-labelledby="plivo-cookie-modal-title"> <div class="w-full max-w-2xl rounded-2xl bg-background p-6 shadow-2xl sm:p-7"> <div class="flex items-start justify-between gap-4"> <div> <p id="plivo-cookie-modal-title" class="font-sora text-2xl font-medium text-foreground">
Cookie preferences
</p> <p class="mt-2 max-w-xl text-sm leading-6 text-muted-foreground">
Necessary storage is always on. Use the toggles below to allow or deny
            optional analytics and marketing technologies.
</p> </div> <button id="plivo-cookie-close-modal" type="button" class="rounded-full border border-border p-2 text-muted-foreground transition-colors hover:bg-surface hover:text-foreground" aria-label="Close cookie preferences"> <svg class="h-4 w-4" viewBox="0 0 16 16" fill="none" aria-hidden="true"> <path d="M3.333 3.333 12.667 12.667M12.667 3.333 3.333 12.667" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path> </svg> </button> </div> <div class="mt-6 space-y-4"> <div class="rounded-xl border border-border bg-surface p-4"> <div class="flex items-start justify-between gap-4"> <div> <p class="text-sm font-semibold text-foreground">Necessary</p> <p class="mt-1 text-sm leading-6 text-muted-foreground">
Required for security, form handling, theme preference, and saving your consent choices.
</p> </div> <span class="inline-flex shrink-0 items-center gap-2 whitespace-nowrap rounded-full border border-emerald-200 bg-emerald-50 px-3 py-1 text-xs font-semibold text-emerald-700 dark:border-emerald-500/30 dark:bg-emerald-500/10 dark:text-emerald-300"> <span class="h-2 w-2 rounded-full bg-emerald-500"></span>
Always on
</span> </div> </div> <label class="flex items-start justify-between gap-4 rounded-xl border border-border p-4"> <div> <p class="text-sm font-semibold text-foreground">Analytics</p> <p class="mt-1 text-sm leading-6 text-muted-foreground">
Helps us understand site usage and performance through analytics tags managed with Google Tag Manager.
</p> </div> <input id="plivo-cookie-analytics" type="checkbox" class="mt-1 h-5 w-5 shrink-0 accent-primary"> </label> <label class="flex items-start justify-between gap-4 rounded-xl border border-border p-4"> <div> <p class="text-sm font-semibold text-foreground">Marketing</p> <p class="mt-1 text-sm leading-6 text-muted-foreground">
Supports lead attribution and marketing follow-up with HubSpot tracking cookies.
</p> </div> <input id="plivo-cookie-marketing" type="checkbox" class="mt-1 h-5 w-5 shrink-0 accent-primary"> </label> </div> <div class="mt-6 flex flex-col gap-3 border-t border-border pt-5 sm:flex-row sm:items-center sm:justify-between"> <a href="/cookie-policy/" class="text-sm font-medium text-primary hover:underline">
Learn more about our cookies
</a> <div class="flex flex-col gap-2 sm:flex-row"> <button id="plivo-cookie-save-preferences" type="button" class="rounded-md border border-border px-4 py-2.5 text-sm font-medium text-foreground transition-colors hover:bg-surface">
Save preferences
</button> <button id="plivo-cookie-modal-accept-all" type="button" class="rounded-md bg-foreground px-4 py-2.5 text-sm font-medium text-background transition-colors hover:opacity-90">
Accept all
</button> </div> </div> </div> </div> </div> <script>(function(){const consentVersion = "2026-04-02";

  (function () {
    var root = document.getElementById("plivo-cookie-consent-root");
    if (!root) return;

    var STORAGE_KEY = "plivo_cookie_preferences";
    var LEGACY_KEY = "plivo_cookie_consent";
    var banner = document.getElementById("plivo-cookie-banner");
    var modal = document.getElementById("plivo-cookie-modal");
    var settingsButton = document.getElementById("plivo-cookie-settings-button");
    var analyticsInput = document.getElementById("plivo-cookie-analytics");
    var marketingInput = document.getElementById("plivo-cookie-marketing");
    var gtmContainerId = root.getAttribute("data-gtm-container-id") || "";
    var allowedHosts = [];
    var hubspotScriptSrc = root.getAttribute("data-hubspot-script-src") || "";
    var posthogKey = root.getAttribute("data-posthog-key") || "";
    var posthogHost = root.getAttribute("data-posthog-host") || "https://f.plivo.com";
    var consentCountries = [];
    var consentRegions = [];

    try {
      allowedHosts = JSON.parse(root.getAttribute("data-gtm-allowed-hosts") || "[]");
    } catch (error) {
      allowedHosts = [];
    }

    try {
      consentCountries = JSON.parse(root.getAttribute("data-consent-countries") || "[]");
    } catch (error) {
      consentCountries = [];
    }

    try {
      consentRegions = JSON.parse(root.getAttribute("data-consent-regions") || "[]");
    } catch (error) {
      consentRegions = [];
    }

    /** Check if the user's country/region requires cookie consent */
    function isConsentRequired() {
      var country = "";
      try { country = sessionStorage.getItem("plivo_geo_country") || ""; } catch(e) {}
      if (!country && window.__CF_COUNTRY) country = window.__CF_COUNTRY;
      if (!country) return null; // unknown yet

      country = country.toUpperCase();

      // Country-level check (EU, UK, Brazil, etc.)
      if (consentCountries.indexOf(country) >= 0) return true;

      // US state-level check (California, Florida)
      if (country === "US" && consentRegions.length > 0) {
        var region = window.__CF_REGION || "";
        if (region && consentRegions.indexOf(region.toUpperCase()) >= 0) return true;
      }

      return false;
    }

    function hostAllowed() {
      if (!allowedHosts.length) return true;
      return allowedHosts.indexOf(window.location.hostname) !== -1;
    }

    function getDefaultPreferences() {
      return {
        version: consentVersion,
        necessary: true,
        analytics: false,
        marketing: false,
        decidedAt: "",
      };
    }

    function normalisePreferences(value) {
      var defaults = getDefaultPreferences();
      if (!value || typeof value !== "object") return defaults;
      return {
        version: value.version || consentVersion,
        necessary: true,
        analytics: Boolean(value.analytics),
        marketing: Boolean(value.marketing),
        decidedAt: value.decidedAt || "",
      };
    }

    function readStoredPreferences() {
      try {
        var raw = localStorage.getItem(STORAGE_KEY);
        if (raw) return normalisePreferences(JSON.parse(raw));
      } catch (error) {}

      try {
        var legacy = localStorage.getItem(LEGACY_KEY);
        if (legacy === "accepted") {
          return {
            version: consentVersion,
            necessary: true,
            analytics: true,
            marketing: true,
            decidedAt: "",
          };
        }
        if (legacy === "rejected") {
          return {
            version: consentVersion,
            necessary: true,
            analytics: false,
            marketing: false,
            decidedAt: "",
          };
        }
      } catch (error) {}

      return null;
    }

    function storePreferences(preferences) {
      try {
        localStorage.setItem(STORAGE_KEY, JSON.stringify(preferences));
        localStorage.removeItem(LEGACY_KEY);
      } catch (error) {}
    }

    function hasDecision(preferences) {
      return Boolean(preferences && preferences.decidedAt);
    }

    function syncInputs(preferences) {
      if (analyticsInput) analyticsInput.checked = Boolean(preferences.analytics);
      if (marketingInput) marketingInput.checked = Boolean(preferences.marketing);
    }

    function openModal() {
      syncInputs(currentPreferences || getDefaultPreferences());
      if (modal) modal.hidden = false;
      document.documentElement.style.overflow = "hidden";
    }

    function closeModal() {
      if (modal) modal.hidden = true;
      document.documentElement.style.overflow = "";
    }

    function showBanner() {
      if (banner) banner.hidden = false;
      if (settingsButton) settingsButton.hidden = true;
    }

    function hideBanner() {
      if (banner) banner.hidden = true;
      // Only show settings icon in consent-required countries
      if (settingsButton) settingsButton.hidden = isConsentRequired() === false;
    }

    function clearCookie(name, options) {
      var suffix = "; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; SameSite=Lax";
      var cookie = name + "=;" + suffix;
      document.cookie = cookie;

      var hostname = window.location.hostname;
      var parts = hostname.split(".");
      if (parts.length > 1) {
        var rootDomain = "." + parts.slice(-2).join(".");
        document.cookie = name + "=;" + suffix + "; domain=" + rootDomain;
        document.cookie = name + "=;" + suffix + "; domain=" + hostname;
      }

      if (options && options.secure) {
        document.cookie = name + "=;" + suffix + "; Secure";
      }
    }

    function clearCookiesByPrefix(prefixes) {
      var cookies = document.cookie ? document.cookie.split(";") : [];
      for (var i = 0; i < cookies.length; i++) {
        var item = cookies[i].trim();
        var separatorIndex = item.indexOf("=");
        var name = separatorIndex >= 0 ? item.slice(0, separatorIndex) : item;
        for (var j = 0; j < prefixes.length; j++) {
          if (name === prefixes[j] || name.indexOf(prefixes[j]) === 0) {
            clearCookie(name);
            break;
          }
        }
      }
    }

    function clearAnalyticsCookies() {
      clearCookiesByPrefix(["_ga", "_gid", "_gat", "_gcl_", "ph_"]);
      try {
        var keys = Object.keys(localStorage);
        for (var i = 0; i < keys.length; i++) {
          if (keys[i].indexOf("ph_") === 0) {
            localStorage.removeItem(keys[i]);
          }
        }
      } catch (e) {}
    }

    function clearMarketingCookies() {
      clearCookiesByPrefix([
        "hubspotutk",
        "__hssc",
        "__hssrc",
        "__hstc",
        "messagesUtk",
        "hs-messages-is-open",
        "hs-messages-hide-welcome-message",
      ]);
    }

    // ── Google Consent Mode v2 ──
    function gtag() {
      window.dataLayer = window.dataLayer || [];
      window.dataLayer.push(arguments);
    }

    // Set consent defaults BEFORE GTM loads (denied by default for consent-required regions)
    gtag("consent", "default", {
      ad_storage: "denied",
      ad_user_data: "denied",
      ad_personalization: "denied",
      analytics_storage: "denied",
      functionality_storage: "granted",
      personalization_storage: "denied",
      security_storage: "granted",
      wait_for_update: 500,
    });

    function updateConsentMode(preferences) {
      var analyticsState = preferences.analytics ? "granted" : "denied";
      var marketingState = preferences.marketing ? "granted" : "denied";
      gtag("consent", "update", {
        ad_storage: marketingState,
        ad_user_data: marketingState,
        ad_personalization: marketingState,
        analytics_storage: analyticsState,
        personalization_storage: analyticsState,
      });
    }

    function pushConsentEvent(preferences) {
      window.dataLayer = window.dataLayer || [];
      window.dataLayer.push({
        event: "plivo_cookie_preferences_updated",
        plivo_cookie_analytics: preferences.analytics ? "granted" : "denied",
        plivo_cookie_marketing: preferences.marketing ? "granted" : "denied",
      });
    }

    function loadGtmIfAllowed(preferences) {
      // Update consent mode regardless of whether GTM is loading for the first time
      updateConsentMode(preferences);

      if (!preferences.analytics) return;
      if (!gtmContainerId || !hostAllowed()) return;
      if (window.__plivoGtmLoaded || document.getElementById("plivo-gtm-script")) return;

      window.dataLayer = window.dataLayer || [];
      window.dataLayer.push({
        "gtm.start": new Date().getTime(),
        event: "gtm.js",
      });
      pushConsentEvent(preferences);

      var script = document.createElement("script");
      script.id = "plivo-gtm-script";
      script.async = true;
      script.src = "https://www.googletagmanager.com/gtm.js?id=" + encodeURIComponent(gtmContainerId);
      document.head.appendChild(script);
      window.__plivoGtmLoaded = true;
    }

    function loadHubSpotIfAllowed(preferences) {
      if (!preferences.marketing) return;
      if (!hubspotScriptSrc || !hostAllowed()) return;
      if (window.__plivoHubSpotLoaded || document.getElementById("hs-script-loader")) return;

      var script = document.createElement("script");
      script.id = "hs-script-loader";
      script.async = true;
      script.defer = true;
      script.src = hubspotScriptSrc;
      document.body.appendChild(script);
      window.__plivoHubSpotLoaded = true;
    }

    function loadPostHogIfAllowed(preferences) {
      if (!preferences.analytics) return;
      if (!posthogKey || !hostAllowed()) return;
      if (window.__plivoPostHogLoaded) return;

      !function(t,e){var o,n,p,r;e.__SV||(window.posthog && window.posthog.__loaded)||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(".");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement("script")).type="text/javascript",p.crossOrigin="anonymous",p.async=!0,p.src=s.api_host.replace(".i.posthog.com","-assets.i.posthog.com")+"/static/array.js",(r=t.getElementsByTagName("script")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a="posthog",u.people=u.people||[],u.toString=function(t){var e="posthog";return"posthog"!==a&&(e+="."+a),t||(e+=" (stub)"),e},u.people.toString=function(){return u.toString(1)+".people (stub)"},o="Ii init Di qi Sr Bi Zi Pi capture calculateEventProperties Yi register register_once register_for_session unregister unregister_for_session Xi getFeatureFlag getFeatureFlagPayload getFeatureFlagResult isFeatureEnabled reloadFeatureFlags updateFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSurveysLoaded onSessionId getSurveys getActiveMatchingSurveys renderSurvey displaySurvey cancelPendingSurvey canRenderSurvey canRenderSurveyAsync Ji identify setPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException startExceptionAutocapture stopExceptionAutocapture loadToolbar get_property getSessionProperty Wi Vi createPersonProfile setInternalOrTestUser Gi Fi Ki opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing get_explicit_consent_status is_capturing clear_opt_in_out_capturing $i debug Tr Ui getPageViewId captureTraceFeedback captureTraceMetric Ri".split(" "),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]);

      posthog.init(posthogKey, {
        api_host: posthogHost,
        ui_host: "https://us.posthog.com",
        defaults: "2026-01-30",
        person_profiles: "identified_only",
      });

      window.__plivoPostHogLoaded = true;
    }

    function applyPreferences(preferences, options) {
      var nextPreferences = normalisePreferences(preferences);
      var previousPreferences = currentPreferences;
      var revokingAnalytics = Boolean(previousPreferences && previousPreferences.analytics && !nextPreferences.analytics);
      var revokingMarketing = Boolean(previousPreferences && previousPreferences.marketing && !nextPreferences.marketing);

      currentPreferences = nextPreferences;
      syncInputs(nextPreferences);
      storePreferences(nextPreferences);
      hideBanner();
      closeModal();

      if (!nextPreferences.analytics) clearAnalyticsCookies();
      if (!nextPreferences.marketing) clearMarketingCookies();

      loadGtmIfAllowed(nextPreferences);
      loadHubSpotIfAllowed(nextPreferences);
      loadPostHogIfAllowed(nextPreferences);

      if (revokingAnalytics && window.posthog && typeof window.posthog.opt_out_capturing === "function") {
        window.posthog.opt_out_capturing();
      }

      if (options && options.forceReloadOnRevoke && (revokingAnalytics || revokingMarketing)) {
        window.location.reload();
        return;
      }
    }

    function createPreferences(overrides) {
      var defaults = getDefaultPreferences();
      return {
        version: consentVersion,
        necessary: true,
        analytics: Boolean(overrides.analytics),
        marketing: Boolean(overrides.marketing),
        decidedAt: new Date().toISOString(),
      };
    }

    function saveFromInputs() {
      applyPreferences(
        createPreferences({
          analytics: analyticsInput && analyticsInput.checked,
          marketing: marketingInput && marketingInput.checked,
        }),
        { forceReloadOnRevoke: true },
      );
    }

    var currentPreferences = readStoredPreferences();

    if (currentPreferences && !hasDecision(currentPreferences)) {
      currentPreferences.decidedAt = new Date().toISOString();
      storePreferences(currentPreferences);
    }

    /** Auto-allow all cookies for countries that don't require consent */
    function autoAllowAll() {
      var allAllowed = createPreferences({ analytics: true, marketing: true });
      currentPreferences = allAllowed;
      storePreferences(allAllowed);
      if (banner) banner.hidden = true;
      if (settingsButton) settingsButton.hidden = true;
      loadGtmIfAllowed(allAllowed);
      loadHubSpotIfAllowed(allAllowed);
      loadPostHogIfAllowed(allAllowed);
    }

    function initConsent() {
      var required = isConsentRequired();

      // Country not requiring consent → auto-allow, hide banner & settings icon
      if (required === false) {
        autoAllowAll();
        return;
      }

      // Consent required (or country unknown — treat as required to be safe)
      if (currentPreferences) {
        hideBanner();
        syncInputs(currentPreferences);
        if (!currentPreferences.analytics) clearAnalyticsCookies();
        if (!currentPreferences.marketing) clearMarketingCookies();
        loadGtmIfAllowed(currentPreferences);
        loadHubSpotIfAllowed(currentPreferences);
        loadPostHogIfAllowed(currentPreferences);
      } else {
        showBanner();
        syncInputs(getDefaultPreferences());
      }
    }

    // Try init immediately; if geo not ready yet, poll briefly then init
    var geoReady = isConsentRequired();
    if (geoReady !== null) {
      initConsent();
    } else {
      // Geo data may not be in sessionStorage yet — poll up to 3s
      var geoAttempts = 0;
      var geoPoll = setInterval(function() {
        geoAttempts++;
        if (isConsentRequired() !== null || geoAttempts > 30) {
          clearInterval(geoPoll);
          initConsent();
        }
      }, 100);
    }

    var acceptAllButtons = [
      document.getElementById("plivo-cookie-accept-all"),
      document.getElementById("plivo-cookie-modal-accept-all"),
    ];

    for (var index = 0; index < acceptAllButtons.length; index++) {
      var acceptButton = acceptAllButtons[index];
      if (!acceptButton) continue;
      acceptButton.addEventListener("click", function () {
        applyPreferences(
          createPreferences({ analytics: true, marketing: true }),
          { forceReloadOnRevoke: false },
        );
      });
    }

    var rejectAllButton = document.getElementById("plivo-cookie-reject-all");
    if (rejectAllButton) {
      rejectAllButton.addEventListener("click", function () {
        applyPreferences(
          createPreferences({ analytics: false, marketing: false }),
          { forceReloadOnRevoke: true },
        );
      });
    }

    var openPreferencesButton = document.getElementById("plivo-cookie-open-preferences");
    if (openPreferencesButton) {
      openPreferencesButton.addEventListener("click", openModal);
    }

    if (settingsButton) {
      settingsButton.addEventListener("click", openModal);
    }

    var savePreferencesButton = document.getElementById("plivo-cookie-save-preferences");
    if (savePreferencesButton) {
      savePreferencesButton.addEventListener("click", saveFromInputs);
    }

    var closeModalButton = document.getElementById("plivo-cookie-close-modal");
    if (closeModalButton) {
      closeModalButton.addEventListener("click", closeModal);
    }

    if (modal) {
      modal.addEventListener("click", function (event) {
        if (event.target === modal) closeModal();
      });
    }

    document.addEventListener("keydown", function (event) {
      if (event.key === "Escape" && modal && !modal.hidden) {
        closeModal();
      }
    });

    document.addEventListener("click", function (event) {
      var target = event.target;
      if (!(target instanceof Element)) return;
      var trigger = target.closest("[data-cookie-settings]");
      if (!trigger) return;
      event.preventDefault();
      openModal();
    });

    window.PlivoCookieConsent = {
      openPreferences: openModal,
      getPreferences: function () {
        return currentPreferences || getDefaultPreferences();
      },
    };
  })();
})();</script> </body></html>