1import{t as e}from"./app-window-Dopafq3A.js";import{Aa as t,Co as n,Eo as r,Ga as i,To as a,U as o,Yn as s,ct as c,en as l,go as u,ho as d,ht as f,io as p,ro as m,so as h}from"./src-DKV4qz0e.js";import{t as g}from"./arrow-up-DS-X3Q6C.js";import{t as _}from"./chart-column-Cx6oWv0R.js";import{t as v}from"./circle-play-AqjjVefC.js";import{t as y}from"./clock-3-BkRv8w3O.js";import{t as b}from"./download-BNfz3lJ-.js";import{t as ee}from"./key-round-D-SeeXtY.js";import{t as x}from"./lock-BrQboNLJ.js";import{n as S,t as C}from"./OrganizationHero-QVDDMaAc.js";import{t as w}from"./puzzle-BRpTHAgq.js";import{t as te}from"./rotate-ccw-Dl66DNO9.js";import{t as T}from"./route-Ci7bNtQ_.js";import{r as E,t as D}from"./useBrowserDetection-B30fgKjq.js";import{$a as O,Ba as k,Ha as ne,Ho as re,Ka as ie,Lo as ae,No as oe,Po as se,Ua as ce,Va as le,ao as A,oo as ue,po as de,so as fe,uo as pe,vo as me,wo as j,yo as M,za as N}from"./index-B9L-afxX.js";import{t as P}from"./Image-TUISmR3j.js";import{n as F,t as I}from"./DesktopInstallerDownloads-Br1e9xvD.js";import{t as L}from"./BookDemoButton-BZ-YzrZr.js";import{n as R,t as z}from"./MarketingSection-CLcR16-n.js";import{t as he}from"./AuthenticatedEntryRedirect-jTCnjjVx.js";import{t as ge}from"./CustomersMarquee-_gi-2kqy.js";var _e=M(`monitor-down`,[[`path`,{d:`M12 13V7`,key:`h0r20n`}],[`path`,{d:`m15 10-3 3-3-3`,key:`lzhmyn`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}]]),ve=M(`mouse-pointer-click`,[[`path`,{d:`M14 4.1 12 6`,key:`ita8i4`}],[`path`,{d:`m5.1 8-2.9-.8`,key:`1go3kf`}],[`path`,{d:`m6 12-1.9 2`,key:`mnht97`}],[`path`,{d:`M7.2 2.2 8 5.1`,key:`1cfko1`}],[`path`,{d:`M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z`,key:`s0h3yz`}]]),ye=M(`pin`,[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]),be=M(`presentation`,[[`path`,{d:`M2 3h20`,key:`91anmk`}],[`path`,{d:`M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3`,key:`2k9sn8`}],[`path`,{d:`m7 21 5-5 5 5`,key:`bip4we`}]]),xe=M(`radar`,[[`path`,{d:`M19.07 4.93A10 10 0 0 0 6.99 3.34`,key:`z3du51`}],[`path`,{d:`M4 6h.01`,key:`oypzma`}],[`path`,{d:`M2.29 9.62A10 10 0 1 0 21.31 8.35`,key:`qzzz0`}],[`path`,{d:`M16.24 7.76A6 6 0 1 0 8.23 16.67`,key:`1yjesh`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}],[`path`,{d:`M17.99 11.66A6 6 0 0 1 15.77 16.67`,key:`1u2y91`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`path`,{d:`m13.41 10.59 5.66-5.66`,key:`mhq4k0`}]]),Se=M(`scale`,[[`path`,{d:`m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z`,key:`7g6ntu`}],[`path`,{d:`m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z`,key:`ijws7r`}],[`path`,{d:`M7 21h10`,key:`1b0cd5`}],[`path`,{d:`M12 3v18`,key:`108xh3`}],[`path`,{d:`M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2`,key:`3gwbw2`}]]),B=re(ae(),1),V=se();function Ce({sectionRef:e}){let t=ie();return(0,V.jsx)(R,{className:`overflow-hidden`,ref:e,"data-section":`integrations`,children:(0,V.jsxs)(`div`,{className:`max-w-6xl mx-auto`,children:[(0,V.jsxs)(`div`,{className:`mb-12`,children:[(0,V.jsx)(z,{children:`Integrations`}),(0,V.jsxs)(`h2`,{className:`mb-5 max-w-3xl text-display`,children:[`Works with every AI tool `,(0,V.jsx)(`span`,{className:`text-muted-foreground`,children:`your team uses.`})]}),(0,V.jsx)(`p`,{className:`max-w-2xl leading-relaxed text-muted-foreground`,children:`ChatGPT, Claude, Gemini, Copilot, and more. Joring plugs into the AI tools you already use.`})]}),(0,V.jsxs)(`div`,{className:`relative`,children:[(0,V.jsx)(`div`,{className:`pointer-events-none absolute left-0 top-0 bottom-0 w-24 bg-gradient-to-r from-background to-transparent z-10`}),(0,V.jsx)(`div`,{className:`pointer-events-none absolute right-0 top-0 bottom-0 w-24 bg-gradient-to-l from-background to-transparent z-10`}),(0,V.jsx)(s,{className:`[--duration:40s] [--gap:2rem]`,pauseOnHover:!0,children:t.map(e=>(0,V.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 mx-4`,"aria-label":O(e),children:[(0,V.jsx)(`div`,{className:`flex items-center justify-center w-16 h-16 rounded-xl bg-muted/40 border border-border`,children:(0,V.jsx)(l,{provider:e,size:36})}),(0,V.jsx)(`span`,{className:`text-label font-medium text-muted-foreground`,children:O(e)})]},e))})]})]})})}var we=[`macos`,`windows`];function Te(e,t){let n=e,r=/width="(\d+(?:\.\d+)?)"/.exec(e),i=/height="(\d+(?:\.\d+)?)"/.exec(e);return!e.includes(`viewBox`)&&r&&i&&(n=n.replace(`<svg`,`<svg viewBox="0 0 ${r[1]} ${i[1]}"`)),n=n.replace(/id="([^"]+)"/g,`id="${t}_$1"`).replace(/url\(#([^)]+)\)/g,`url(#${t}_$1)`).replace(/\s*width="[^"]*"/g,``).replace(/\s*height="[^"]*"/g,``).replace(`<svg`,`<svg width="100%" height="100%"`),n}function H({svg:e,size:t}){let n=(0,B.useId)().replace(/:/g,``);return(0,V.jsx)(`span`,{className:`inline-flex items-center justify-center shrink-0`,style:{width:t,height:t},dangerouslySetInnerHTML:{__html:Te(e,n)}})}function Ee({id:e,size:t=18}){let n=le(e);
1return n?(0,V.jsx)(H,{svg:n,size:t}):null}function De({id:e,size:t=14}){let n=N(e);return n?(0,V.jsx)(H,{svg:n,size:t}):null}function Oe({sectionRef:t}){let{browser:r,config:a,isSupported:s,os:l}=D(),[u,f]=(0,B.useState)(!1),p=l===`windows`||l===`macos`?l:`macos`,[m,h]=(0,B.useState)(null),g=m??p,_=F[g],v=async()=>{await navigator.clipboard.writeText(_),f(!0),A(`click_platform_cta`,{platform:`cli_copy`,location:`homepage_platforms`,os:g}),setTimeout(()=>{f(!1)},2e3)},y=s&&a.storeUrl?a.storeUrl:null,b=e=>e===`chrome`?E.chrome:e===`firefox`?E.firefox:e===`safari`?E.safari:e===`edge`?E.edge:null;return(0,V.jsx)(R,{surface:`card`,ref:t,"data-section":`platforms`,children:(0,V.jsxs)(`div`,{className:`max-w-6xl mx-auto`,children:[(0,V.jsxs)(`div`,{className:`mb-12`,children:[(0,V.jsx)(z,{children:`Platforms`}),(0,V.jsxs)(`h2`,{className:`mb-5 max-w-3xl text-display`,children:[`Available everywhere `,(0,V.jsx)(`span`,{className:`text-muted-foreground`,children:`you work.`})]}),(0,V.jsx)(`p`,{className:`max-w-2xl leading-relaxed text-muted-foreground`,children:`Joring works in your browser, your terminal and desktop AI applications.`})]}),(0,V.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6 mt-10`,children:[(0,V.jsx)(`div`,{className:`min-w-0`,children:(0,V.jsx)(c,{asChild:!0,children:(0,V.jsxs)(`article`,{className:`flex h-full min-w-0 flex-col gap-4 p-6 sm:p-8`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,V.jsx)(o,{"aria-hidden":!0,children:(0,V.jsx)(w,{})}),(0,V.jsx)(`h3`,{className:`text-section truncate`,children:`Browser Extension`})]}),(0,V.jsx)(`p`,{className:`text-lede text-muted-foreground`,children:`Works in Chrome, Safari, Firefox, and Edge. One install covers every AI tool.`}),(0,V.jsx)(`div`,{className:`mt-auto pt-2`,children:(0,V.jsx)(`div`,{className:`grid grid-cols-2 sm:grid-cols-4 gap-2`,children:ne().map(e=>{let t=b(e);if(!t)return null;let n=y!==null&&e===r;return(0,V.jsxs)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>{A(`click_platform_cta`,{platform:`browser`,browser:e,location:n?`homepage_platforms`:`homepage_platforms_alt`})},className:`group relative flex items-center justify-center gap-1.5 rounded-lg border px-2.5 py-2.5 text-body font-medium transition-colors min-w-0 `+(n?`bg-primary text-primary-foreground border-primary hover:bg-primary/90`:`bg-background/60 border-border text-foreground hover:bg-background hover:border-foreground
1/20`),children:[(0,V.jsx)(Ee,{id:e,size:18}),(0,V.jsx)(`span`,{className:`truncate`,children:ce(e)})]},e)})})})]})})}),(0,V.jsx)(`div`,{className:`min-w-0`,children:(0,V.jsx)(c,{asChild:!0,children:(0,V.jsxs)(`article`,{className:`flex h-full min-w-0 flex-col gap-4 p-6 sm:p-8`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,V.jsx)(o,{"aria-hidden":!0,children:(0,V.jsx)(e,{})}),(0,V.jsx)(`h3`,{className:`text-section truncate`,children:`Desktop App`})]}),(0,V.jsx)(`p`,{className:`text-lede text-muted-foreground`,children:`Works with terminal tools like Claude Code and Codex, plus desktop apps like Claude Desktop. Ships with the local joring CLI.`}),(0,V.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:we.map(e=>{let t=g===e;return(0,V.jsxs)(`button`,{type:`button`,onClick:()=>{h(e)},"aria-pressed":t,className:`flex items-center gap-1.5 rounded-md border px-2.5 py-1 text-label font-medium transition-colors `+(t?`bg-primary text-primary-foreground border-primary`:`bg-background/60 border-border text-foreground hover:bg-background hover:border-foreground
1/20`),children:[(0,V.jsx)(De,{id:e,size:14}),k(e)]},e)})}),(0,V.jsxs)(`div`,{className:`flex items-stretch gap-2 min-w-0`,children:[(0,V.jsx)(`pre`,{className:`flex-1 min-w-0 bg-foreground/[0.04] rounded-md px-3 py-2 text-label font-mono overflow-x-auto flex items-center`,children:(0,V.jsx)(`code`,{children:_})}),(0,V.jsx)(i,{variant:`outline`,size:`icon`,onClick:()=>{v()},"aria-label":u?`Copied`:`Copy install command`,className:`shrink-0`,children:u?(0,V.jsx)(n,{className:`h-4 w-4`}):(0,V.jsx)(d,{className:`h-4 w-4`})})]}),(0,V.jsx)(I,{location:`homepage_platforms`,os:g})]})})})]})]})})}function U({url:e,showExtensionPin:t=!1,className:n=``,children:r}){return(0,V.jsxs)(`div`,{className:de(`relative mx-auto w-full max-w-[960px] overflow-hidden rounded-2xl border border-border bg-background shadow-lift ring-1 ring-border/40`,n),children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3 border-b border-border bg-muted/40 px-4 py-2.5`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,V.jsx)(`span`,{className:`h-3 w-3 rounded-full bg-destructive/70`}),(0,V.jsx)(`span`,{className:`h-3 w-3 rounded-full bg-warning/70`}),(0,V.jsx)(`span`,{className:`h-3 w-3 rounded-full bg-success/70`})]}),(0,V.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 rounded-full border border-border bg-card px-3 py-1.5`,children:[(0,V.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-full bg-foreground
1/15`}),(0,V.jsx)(`span`,{className:`truncate text-caption text-muted-foreground`,children:e})]}),t&&(0,V.jsxs)(`div`,{className:`hidden items-center gap-2 md:flex`,children:[(0,V.jsx)(w,{className:`h-4 w-4 text-muted-foreground`,"aria-hidden":!0}),(0,V.jsx)(`span`,{className:`flex h-7 w-7 items-center justify-center rounded-lg ring-1 ring-primary/50`,style:{background:`color-mix(in oklab, var(--primary) 18%, transparent)`},"aria-hidden":!0,children:(0,V.jsx)(P,{src:`/joring-logo.svg`,alt:``,width:16,height:16,className:`rounded-full invert dark:invert-0`})})]})]}),r]})}function W(e,t,n){return{value:e,comparison:t==null?null:{delta:n??Math.round(e*t/(100+t)),delta_pct:t}}}var G=0xe8d4a51000;function K(e,t,n,r){return{provider:e,prompt_count:n,estimated_cost_pico_usd:W(t*G,r),estimated_cost_range_pico_usd:{low:W(t*.85*G),high:W(t*1.15*G)}}}var ke=[1082,1090,1088,1101,1110,1108,1122,1131,1128,1140,1147,1145,1158,1166,1163,1177,1185,1192,1189,1203,1210,1218,1215,1229,1238,1247,1244,1261,1272,1284],Ae={joring_score:W(1284,12,138),stats:{active_users:W(132),total_users:W(214),prompt_count:W(9840)},time_with_ai_minutes:W(5900),hours_saved_minutes:W(7680,9),hours_saved_minutes_range:{low:W(1770),high:W(23600)},hours_saved_trend:{series:[{key:`saved_minutes`,values:[152,161,148,170,178,165,184,196,188,205,214,202,221,233,226,241,252,246,260,268,274,262,281,290,285,299,306,301,315,322]}]},time_saved_assumptions:{band:{low:1.3,likely:2.3,high:5},custom:!1,updated_at:null},ai_tool_spend_pico_usd:W(1250*G,11),ai_tool_spend_range_pico_usd:{low:W(980*G),high:W(1460*G)},ai_tool_spend_by_provider:[K(`chatgpt`,540,4120,14),K(`claude`,410,2860,9),K(`gemini`,180,1240,6),K(`copilot`,86,1910,4),K(`perplexity`,34,312,2)]},je={from:new Date(2026,5,1),to:new Date(2026,6,1),label:`Last 30 days`},Me={score:`One number for how effectively your organization works with AI, built from four factors: fluency, challenge, breadth, and consistency.`,hoursSaved:`An estimate of the working time AI saved your organization in the selected period, based on the real tasks people completed with AI.`,spend:`An estimate of what your organization spent on AI tools in the selected period, broken down by provider.`},Ne=`Where your organization sits on the journey from asking AI questions to delegating whole tasks, based on how people actually work.`,Pe={audience:{scope:`full_team`},stages:[{id:1,count:72,top_gaps:[]},{id:2,count:60,top_gaps:[]},{id:3,count:45,top_gaps:[]},{id:4,count:26,top_gaps:[]},{id:5,count:11,top_gaps:[]}],total_members:214,median_stage_score:2.3,method_version:`v3`,mapped_intent_events:18240,unmapped_intent_events:420,needs_review_intent_events:36,adoption_signal_mapping_version:`v3`,window_from:`2026-06-01T12:00:00Z`,window_to:`2026-06-30T12:00:00Z`};function Fe(){let{resolvedTheme:e}=pe(),t=oe()&&e===`dark`?`dark`:`light`;return(0,V.jsx)(U,{url:`joring.ai`,className:`max-w-[1152px] border-foreground
1/[0.14] shadow-2xl shadow-foreground/[0.17] ring-border/60 dark:border-border dark:shadow-foreground/[0.05] dark:ring-border`,children:(0,V.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none select-none bg-background px-5 py-6 sm:px-8 sm:py-8 [&_[data-slot=tooltip-trigger]]:pointer-events-auto`,children:(0,V.jsxs)(`div`,{className:`flex w-full flex-col gap-5`,children:[(0,V.jsxs)(`div`,{children:[(0,V.jsx)(`p`,{className:`text-2xl font-bold`,children:`Organization`}),(0,V.jsx)(`p`,{className:`text-muted-foreground`,children:`Organization-wide AI usage`})]}),(0,V.jsxs)(`div`,{className:`space-y-6`,children:[(0,V.jsx)(C,{syncUrl:!1,overviewData:Ae,sparkline:ke,theme:t,range:je,helpContent:Me}),(0,V.jsx)(`div`,{className:`hidden sm:block`,children:(0,V.jsx)(S,{syncUrl:!1,teamId:`demo-team`,journey:Pe,windowHelp:Ne})})]})]})})})}var q=[{name:`Information assistance`,description:`Asks AI questions, applies answers by hand`,share:34,ramp:16},{name:`Task assistance`,description:`Uses AI drafts as a starting point`,share:28,ramp:32},{name:`Delegation`,description:`Hands AI whole tasks, reviews the result`,share:21,ramp:50},{name:`Semi-autonomous collaboration`,description:`Plans and iterates on work with AI`,share:12,ramp:70},{name:`Fully autonomous`,description:`AI runs work end to end`,share:5,ramp:90}];function Ie(){let e=Math.max(...q.map(e=>e.share));return(0,V.jsxs)(`div`,{className:`rounded-2xl border border-border bg-card p-5 shadow-xl shadow-foreground/[0.07] ring-1 ring-border/40 sm:p-6`,children:[(0,V.jsxs)(`div`,{className:`mb-4 flex items-center justify-between gap-3`,children:[(0,V.jsx)(`p`,{className:`text-sm font-semibold tracking-tight`,children:`AI Adoption Journey`}),(0,V.jsx)(`span`,{className:`text-micro uppercase tracking-label text-muted-foreground/70`,children:`214 members`})]}),(0,V.jsx)(`div`,{className:`space-y-4`,children:q.map((t,n)=>(0,V.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto] items-center gap-x-4 gap-y-1`,children:[(0,V.jsxs)(`div`,{className:`min-w-0`,children:[(0,V.jsxs)(`p`,{className:`flex items-baseline gap-2 text-control font-medium leading-snug`,children:[(0,V.jsx)(`span`,{className:`tabular-nums text-muted-foreground/60`,children:n+1}),(0,V.jsx)(`span`,{className:`truncate`,children:t.name})]}),(0,V.jsx)(`p`,{className:`pl-4 text-xs text-muted-foreground`,children:t.description})]}),(0,V.jsxs)(`span`,{className:`text-sm font-semibold tabular-nums`,children:[t.share,`%`]}),(0,V.jsx)(`div`,{className:`col-span-2 h-1.5 overflow-hidden rounded-full bg-border/60`,children:(0,V.jsx)(`div`,{className:`h-full rounded-full`,style:{width:`${String(t.share/e*100)}%`,background:`color-mix(in oklab, var(--primary) ${String(t.ramp)}%, var(--muted))`}})})]},t.name))}),(0,V.jsx)(`p`,{className:`mt-5 border-t border-border/60 pt-3 text-xs text-muted-foreground`,children:`Every team starts jagged. Joring shows where each one sits and what moves it forward.`})]})}var Le=[{rank:1,member:`[email protected]`,meta:`Prompt 12 minutes ago · Joined 2 years ago`,status:`Active now`,statusTone:`text-success`,prompts:412,leverage:{word:`High`,score:71},score:`2,610`,tier:`Expert`},{rank:2,member:`[email protected]`,meta:`Prompt 1 hour ago · Joined about 1 year ago`,status:`Active today`,statusTone:`text-success`,prompts:388,leverage:{word:`High`,score:64},score:`1,742`,tier:`Advanced`},{rank:3,member:`[email protected]`,meta:`Prompt 3 hours ago · Joined 8 months ago`,status:`Active today`,statusTone:`text-success`,prompts:265,leverage:{word:`High`,score:58},score:`1,047`,tier:`Proficient`},{rank:4,member:`[email protected]`,meta:`Prompt 1 day ago · Joined 6 months ago`,status:`Recently active`,statusTone:`text-warning`,prompts:122,leverage:{word:`Low`,score:41},score:`862`,tier:`Proficient`},{rank:5,member:`[email protected]`,meta:`Prompt 3 days ago · Joined 3 months ago`,status:`Recently active`,statusTone:`text-warning`,prompts:74,leverage:{word:`Low`,score:33},score:`640`,tier:`Developing`}],Re=[`Joring Score`,`AI Tool & Usage`,`Team use cases`];function ze(){return(0,V.jsxs)(`div`,{className:`overflow-hidden rounded-2xl border border-border bg-card shadow-xl shadow-foreground
1/[0.07] ring-1 ring-border/40`,children:[(0,V.jsx)(`div`,{className:`px-5 pb-3 pt-5`,children:(0,V.jsx)(`div`,{className:`inline-flex items-center gap-1 rounded-lg bg-muted p-1`,children:Re.map((e,t)=>(0,V.jsx)(`span`,{className:t===0?`rounded-md bg-card px-2.5 py-1 text-caption font-semibold shadow-sm`:`hidden px-2.5 py-1 text-caption font-medium text-muted-foreground sm:inline`,children:e},e))})}),(0,V.jsxs)(`table`,{className:`w-full text-left`,children:[(0,V.jsx)(`thead`,{children:(0,V.jsxs)(`tr`,{className:`border-b border-border text-micro font-medium uppercase tracking-wider text-muted-foreground`,children:[(0,V.jsx)(`th`,{className:`w-10 py-2 pl-5 font-medium`,children:`#`}),(0,V.jsx)(`th`,{className:`py-2 font-medium`,children:`Member`}),(0,V.jsx)(`th`,{className:`hidden py-2 font-medium sm:table-cell`,children:`Status`}),(0,V.jsx)(`th`,{className:`hidden px-3 py-2 text-right font-medium sm:table-cell`,children:`Prompts`}),(0,V.jsx)(`th`,{className:`hidden py-2 pl-3 font-medium lg:table-cell`,children:`Leverage`}),(0,V.jsx)(`th`,{className:`py-2 pr-5 text-right font-medium`,children:`Joring Score`})]})}),(0,V.jsx)(`tbody`,{children:Le.map(e=>(0,V.jsxs)(`tr`,{className:`border-b border-border/60 last:border-b-0`,children:[(0,V.jsx)(`td`,{className:`py-2.5 pl-5 text-xs tabular-nums text-muted-foreground`,children:e.rank}),(0,V.jsxs)(`td`,{className:`py-2.5 pr-3`,children:[(0,V.jsx)(`p`,{className:`max-w-[44vw] truncate text-xs font-medium sm:max-w-none sm:text-control`,children:e.member}),(0,V.jsx)(`p`,{className:`mt-0.5 hidden text-micro text-muted-foreground sm:block`,children:e.meta})]}),(0,V.jsx)(`td`,{className:`hidden py-2.5 text-xs font-medium sm:table-cell ${e.statusTone}`,children:e.status}),(0,V.jsx)(`td`,{className:`hidden px-3 py-2.5 text-right text-xs font-medium tabular-nums sm:table-cell`,children:e.prompts}),(0,V.jsx)(`td`,{className:`hidden py-2.5 pl-3 lg:table-cell`,children:e.leverage&&(0,V.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs`,children:[(0,V.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full ${e.leverage.word===`High`?`bg-bloom-analyze`:`bg-bloom-understand`}`}),(0,V.jsx)(`span`,{className:e.leverage.word===`High`?`text-bloom-analyze`:`text-bloom-understand`,children:e.leverage.word}),(0,V.jsx)(`span`,{className:`tabular-nums text-muted-foreground`,children:e.leverage.score})]})}),(0,V.jsxs)(`td`,{className:`py-2.5 pr-5 text-right`,children:[(0,V.jsx)(`p`,{className:`text-xs font-semibold tabular-nums sm:text-control`,children:e.score}),(0,V.jsx)(`p`,{className:`text-micro text-muted-foreground`,children:e.tier})]})]},e.rank))})]}),(0,V.jsxs)(`div`,{className:`flex items-center justify-between border-t border-border px-5 py-3`,children:[(0,V.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:`Showing 1â5 of 42`}),(0,V.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:`5 / page`})]})]})}var J=`Draft Email Replies with ChatGPT`,Y={position:`Step 2 of 5`,name:`Find and Prepare Replies`,short:`Ask ChatGPT to identify up to 5 reply-worthy emails and draft responses in one focused pass.`},X=`Go through my inbox and find up to 5 emails that are waiting on a reply from me. Draft a response to each one in my voice. Show me the drafts here first. Don't create anything in Gmail until I approve.`,Z=[`Scoped the pass (up to 5 emails)`,`Asked for drafts to review first`,`Kept Gmail actions on hold`],Be=[{thread:`Dana Whitfield · Re: Q3 vendor renewal`,draft:`Thanks for the nudge, Dana. The renewal looks good on our side, one question on the support tierâ¦`},{thread:`Priya Shah · Re: onboarding start date`,draft:`Confirming March 9 works. I will send the kickoff agenda by Fridayâ¦`},{thread:`Miguel Torres · Re: invoice #2291`,draft:`Approved. I have flagged it for payment in this weekâs runâ¦`},{thread:`Alex Chen · Re: offsite headcount`,draft:`We are at 14, holding two seats for the new hiresâ¦`}],Ve=[{title:`Set Up ChatGPT for Email`,meta:`10 min · Create the ChatGPT workspace every email workflow depends on.`}
1,{title:`Inbox Zero with ChatGPT`,meta:`Build a daily inbox workflow with ChatGPT in about 10 minutes.`}],He={step:`Waiting for your next prompt.`,thinking:`Prompt sent. Coaching starts once the response arrives.`,checking:`Checking your last prompt.`,complete:`Recognized it. This step is complete.`};function Ue(){let e=t()??!1,[n,r]=(0,B.useState)(`trails`),[i,a]=(0,B.useState)(!1),[o,s]=(0,B.useState)(0),[c,l]=(0,B.useState)(0),u=o>=201,d=n===`checking`||n===`complete`;(0,B.useEffect)(()=>{if(!i)return;let e=Date.now(),t=setInterval(()=>{let n=Math.min(Math.round((Date.now()-e)*.35),201);s(n),n>=201&&clearInterval(t)},24);return()=>{clearInterval(t)}},[i]),(0,B.useEffect)(()=>{if(n!==`thinking`)return;let t=setTimeout(()=>{r(`checking`)},e?400:1400);return()=>{clearTimeout(t)}},[n,e]),(0,B.useEffect)(()=>{if(n!==`checking`)return;if(c>=Z.length){let t=setTimeout(()=>{r(`complete`),A(`trail_demo_complete`,{location:`homepage`})},e?200:500);return()=>{clearTimeout(t)}}let t=setTimeout(()=>{l(e=>e+1)},e?150:c===0?900:550);return()=>{clearTimeout(t)}},[n,c,e]);let f=(0,B.useRef)(null);(0,B.useEffect)(()=>{let e=f.current;e&&(e.scrollTop=e.scrollHeight)},[n,d,o]);let p=()=>{a(!1),s(0),l(0)};return(0,V.jsx)(`div`,{children:(0,V.jsx)(U,{url:`chatgpt.com`,showExtensionPin:!0,children:(0,V.jsxs)(`div`,{className:`flex flex-col bg-card md:h-[560px] md:flex-row`,children:[(0,V.jsxs)(`div`,{className:`flex w-full shrink-0 flex-col border-b border-border bg-card text-foreground md:order-2 md:w-[320px] md:border-b-0 md:border-l`,children:[(0,V.jsx)(We,{}),(0,V.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:n===`trails`?(0,V.jsx)($,{onStart:()=>{r(`step`),A(`trail_demo_start`,{location:`homepage`})}}):(0,V.jsx)(Ge,{phase:n,caught:c,inserting:i,onInsertPrompt:()=>{i||n!==`step`||(a(!0),e&&s(201),A(`trail_demo_insert_prompt`,{location:`homepage`}))},onReplay:()=>{p(),r(`step`),A(`trail_demo_replay`,{location:`homepage`})},onBack:()=>{p(),r(`trails`)}})})]}),(0,V.jsx)(`div`,{className:`flex min-h-[280px] flex-1 flex-col`,children:(0,V.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,V.jsxs)(`div`,{"aria-hidden":!0,className:`hidden w-[28px] shrink-0 border-r border-border bg-background py-4 md:block`,children:[(0,V.jsx)(`div`,{className:`mx-auto mb-4 h-3.5 w-3.5 rounded-full bg-foreground
1/10`}),(0,V.jsxs)(`div`,{className:`space-y-3`,children:[(0,V.jsx)(`div`,{className:`mx-auto h-3 w-3 rounded-md bg-foreground/10`}),(0,V.jsx)(`div`,{className:`mx-auto h-3 w-3 rounded-md bg-foreground/10`}),(0,V.jsx)(`div`,{className:`mx-auto h-3 w-3 rounded-md bg-foreground/10`})]})]}),(0,V.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col bg-muted/40`,children:[(0,V.jsx)(`div`,{ref:f,className:`min-h-0 flex-1 overflow-y-auto px-4 py-4 sm:px-6`,children:n===`trails`||n===`step`?(0,V.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center text-center`,children:[(0,V.jsx)(`p`,{className:`font-display text-body font-medium text-foreground`,children:`Good to see you.`}),n===`trails`&&(0,V.jsx)(`p`,{className:`mt-2 max-w-[260px] text-caption text-muted-foreground`,children:`Start the trail in the Joring panel and this page comes to life.`})]}):(0,V.jsxs)(`div`,{className:`mx-auto flex max-w-[440px] flex-col gap-4`,children:[(0,V.jsx)(`div`,{className:`self-end rounded-2xl rounded-br-md bg-background px-3.5 py-2.5 text-left text-caption leading-relaxed text-foreground shadow-xs`,children:X}),n===`thinking`?(0,V.jsx)(qe,{}):(0,V.jsxs)(`div`,{className:`text-caption leading-relaxed text-foreground`,children:[(0,V.jsx)(`p`,{children:`I went through your inbox. 4 emails are waiting on a reply:`}),(0,V.jsx)(`ol`,{className:`mt-2 space-y-2`,children:Be.map((e,t)=>(0,V.jsxs)(`li`,{className:`flex gap-2`,children:[(0,V.jsxs)(`span`,{className:`tabular-nums text-muted-foreground`,children:[t+1,`.`]}),(0,V.jsxs)(`span`,{className:`min-w-0`,children:[(0,V.jsx)(`span`,{className:`block font-medium`,children:e.thread}),(0,V.jsx)(`span`,{className:`block truncate text-muted-foreground`,children:e.draft})]})]},e.thread))}),(0,V.jsx)(`p`,{className:`mt-2 text-muted-foreground`,children:`Want changes to any of these? Otherwise say approve and I will create them as Gmail drafts. I won't send anything.`})]})]})}),(0,V.jsxs)(`div`,{className:`px-4 pb-4 sm:px-6`,children:[(0,V.jsxs)(`div`,{className:`relative flex items-end gap-2 rounded-2xl border border-border bg-background px-3.5 py-2.5`,children:[n===`step`&&u&&(0,V.jsx)(Q,{label:`Send it`,className:`-top-3 right-3`}),(0,V.jsx)(`p`,{className:`min-h-[18px] flex-1 text-left text-caption leading-relaxed ${o>0&&n===`step`?`text-foreground`:`text-muted-foreground`}`,children:n===`step`&&o>0?X.slice(0,o):`Ask anything`}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>{!u||n!==`step`||(r(`thinking`),A(`trail_demo_send`,{location:`homepage`}))},"aria-disabled":!u||n!==`step`,"aria-label":`Send prompt`,className:`flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-foreground text-background transition-opacity ${u&&n===`step`?``:`opacity-25`}`,children:(0,V.jsx)(g,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]}),n===`step`&&!i&&(0,V.jsx)(`p`,{className:`mt-1.5 text-center text-micro text-muted-foreground`,children:`Insert the coached prompt from the Joring panel to send it.`})]})]})]})})]})})})}function Q({label:e,className:t=``}){return(0,V.jsxs)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute z-[1] inline-flex items-center gap-1 rounded-full bg-primary px-2.5 py-1 text-micro font-semibold text-primary-foreground shadow-md motion-safe:animate-bounce ${t}`,children:[(0,V.jsx)(ve,{className:`h-3 w-3`}),e]})}function We(){return(0,V.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2.5`,children:[(0,V.jsx)(P,{src:`/joring-logo.svg`,alt:``,width:16,height:16,className:`rounded-full invert dark:invert-0`,"aria-hidden":!0}),(0,V.jsx)(`span`,{className:`font-display text-control font-semibold tracking-tight`,children:`Joring`}),(0,V.jsxs)(`div`,{className:`ml-auto flex items-center gap-1.5`,children:[(0,V.jsx)(`span`,{className:`inline-block h-1.5 w-1.5 motion-safe:animate-pulse rounded-full bg-success`}),(0,V.jsx)(`span`,{className:`text-caption text-muted-foreground`,children:`ChatGPT`}),(0,V.jsx)(ye,{className:`ml-1 h-3 w-3 text-muted-foreground`,"aria-hidden":!0}),(0,V.jsx)(m,{className:`h-3 w-3 text-muted-foreground`,"aria-hidden":!0})]})]})}function $({onStart:e}){return(0,V.jsxs)(`div`,{className:`px-3.5 pb-4 pt-3`,children:[(0,V.jsx)(`p`,{className:`font-display text-title font-semibold tracking-tight`,children:`Trails`}),(0,V.jsx)(`p`,{className:`mt-1 text-caption leading-snug text-muted-foreground`,children:`Trails are guided paths that help you build better AI habits while you work. Pick one to preview a step right here.`}),(0,V.jsxs)(`div`,{className:`mt-3 flex items-center justify-between gap-3`,children:[(0,V.jsx)(`p`,{className:`text-caption font-semibold uppercase tracking-wider text-muted-foreground`,children:`Available trails`}),(0,V.jsx)(`span`,{className:`text-caption tabular-nums text-muted-foreground`,children:`3`})]}),(0,V.jsxs)(`div`,{className:`mt-2 space-y-2`,children:[(0,V.jsxs)(`button`,{type:`button`,onClick:e,className:`relative w-full rounded-lg border border-primary/40 bg-primary/[0.06] px-3 py-2 text-left shadow-xs transition-colors hover:bg-primary/10`,children:[(0,V.jsx)(Q,{label:`Start here`,className:`-top-3 right-3`}),(0,V.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,V.jsx)(`span`,{className:`mt-0.5 flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-primary/10 text-primary`,"aria-hidden":!0,
1children:(0,V.jsx)(v,{className:`h-3.5 w-3.5`})}),(0,V.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,V.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,V.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,V.jsx)(`p`,{className:`truncate text-label font-semibold leading-snug tracking-tight`,children:J}),(0,V.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-micro leading-normal text-muted-foreground`,children:`10 min · Create Gmail drafts with ChatGPT, then review and send yourself.`})]}),(0,V.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 rounded-full border border-primary/20 bg-primary/10 px-2 py-0.5 text-micro font-medium text-primary`,children:[`Preview`,(0,V.jsx)(a,{className:`h-3 w-3`,"aria-hidden":!0})]})]})})]})]}),Ve.map(e=>(0,V.jsx)(`div`,{className:`rounded-lg border border-border bg-card px-3 py-2 opacity-70 shadow-xs`,children:(0,V.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,V.jsx)(`span`,{className:`mt-0.5 flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-muted text-muted-foreground`,"aria-hidden":!0,children:(0,V.jsx)(v,{className:`h-3.5 w-3.5`})}),(0,V.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,V.jsx)(`p`,{className:`truncate text-label font-semibold leading-snug tracking-tight`,children:e.title}),(0,V.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-micro leading-normal text-muted-foreground`,children:e.meta})]})]})},e.title))]})]})}function Ge({phase:e,caught:t,inserting:i,onInsertPrompt:o,onReplay:s,onBack:c}){return(0,V.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[(0,V.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border/60 px-3.5 py-2`,children:[(0,V.jsxs)(`button`,{type:`button`,onClick:c,className:`flex items-center gap-1 text-caption text-muted-foreground transition-colors hover:text-foreground`,children:[(0,V.jsx)(r,{className:`h-3 w-3`,"aria-hidden":!0}),`Trails`]}),(0,V.jsx)(`span`,{className:`text-caption tabular-nums text-muted-foreground`,children:Y.position})]}),(0,V.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-3.5 py-3`,children:[(0,V.jsx)(`p`,{className:`text-micro font-semibold uppercase tracking-wider text-muted-foreground`,children:J}),(0,V.jsx)(`p`,{className:`mt-1 font-display text-body font-semibold leading-snug tracking-tight`,children:Y.name}),(0,V.jsx)(`p`,{className:`mt-1 text-caption leading-snug text-muted-foreground`,children:Y.short}),e===`complete`?(0,V.jsxs)(`div`,{className:`mt-3 rounded-xl border border-success/30 bg-success/5 p-3.5`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(me,{className:`h-4 w-4 text-success`,"aria-hidden":!0}),(0,V.jsx)(`span`,{className:`text-label font-semibold text-success`,children:`Step complete.`})]}),(0,V.jsx)(`ul`,{className:`mt-2 space-y-1.5`,children:Z.map(e=>(0,V.jsxs)(`li`,{className:`flex items-center gap-1.5 text-caption text-success`,children:[(0,V.jsx)(n,{className:`h-3 w-3 shrink-0`,"aria-hidden":!0}),e]},e))}),(0,V.jsxs)(`div`,{className:`mt-3 border-t border-success/20 pt-3`,children:[(0,V.jsx)(`p`,{className:`text-micro font-semibold uppercase tracking-wider text-muted-foreground`,children:`Continue to`}),(0,V.jsx)(`p`,{className:`mt-0.5 text-label font-semibold`,children:`Approve the Drafts`}),(0,V.jsx)(`p`,{className:`mt-1.5 text-caption leading-snug text-muted-foreground`,children:`That was one step of a five-step trail. Real trails run in your team's own AI tools, and Joring verifies each step from what you actually did.`}),(0,V.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2`,children:[(0,V.jsxs)(L,{size:`sm`,location:`trail_demo`,children:[`Book a demo`,(0,V.jsx)(a,{className:`ml-1.5 h-3.5 w-3.5`,"aria-hidden":!0})]}),(0,V.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,V.jsx)(j,{to:`/learn/`,className:`text-caption font-medium text-primary hover:underline`,onClick:()=>{A(`click_explore_trails`,{location:`trail_demo`})},children:`Explore all trails`}),(0,V.jsxs)(`button`,{type:`button`,onClick:s,className:`flex items-center gap-1 text-caption text-muted-foreground transition-colors hover:text-foreground`,children:[(0,V.jsx)(te,{className:`h-3 w-3`,"aria-hidden":!0}),`Replay`]})]})]})]})]}):(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(`p`,{className:`mt-3 text-micro font-semibold uppercase tracking-wider text-muted-foreground`,children:`Try this prompt`}),(0,V.jsxs)(`button`,{type:`button`,onClick:o,"aria-disabled":i||e!==`step`,className:`relative mt-1.5 w-full rounded-lg border px-3 py-2.5 text-left transition-colors ${i?`border-border bg-muted/40`:`border-primary/30 bg-primary/5 hover:bg-primary/10`}`,children:[e===`step`&&!i&&(0,V.jsx)(Q,{label:`Insert this`,className:`-top-3 right-3`}),(0,V.jsx)(`span`,{className:`block text-caption leading-snug text-foreground`,children:X}),(0,V.jsx)(`span`,{className:`mt-2 inline-flex items-center gap-1 text-micro font-medium ${i?`text-muted-foreground`:`text-primary`}`,children:i?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(n,{className:`h-3 w-3`,"aria-hidden":!0}),`Inserted`]}):(0,V.jsxs)(V.Fragment,{children:[`Insert into ChatGPT`,(0,V.jsx)(a,{className:`h-3 w-3`,"aria-hidden":!0})]})})]}),(0,V.jsxs)(`div`,{className:`mt-3 rounded-lg border border-border bg-muted/30 p-3`,children:[(0,V.jsxs)(`p`,{className:`flex items-center gap-1.5 text-caption font-medium`,children:[(0,V.jsx)(h,{className:`h-3.5 w-3.5 text-primary`,"aria-hidden":!0}),`Joring looks for all of these signals.`]}),(0,V.jsx)(`ul`,{className:`mt-2 space-y-1.5`,children:Z.map((e,r)=>{let i=r<t;return(0,V.jsxs)(`li`,{className:`flex items-center gap-1.5 text-caption ${i?`font-medium text-foreground`:`text-muted-foreground`}`,children:[i?(0,V.jsx)(n,{className:`h-3 w-3 shrink-0 text-primary`,"aria-hidden":!0}):(0,V.jsx)(u,{className:`h-3 w-3 shrink-0`,"aria-hidden":!0}),e]},e)})})]})]})]}),(0,V.jsx)(`div`,{className:`border-t border-border px-3.5 py-2.5`,children:(0,V.jsxs)(`p`,{"aria-live":`polite`,className:`flex items-center gap-2 text-caption text-muted-foreground`,children:[(0,V.jsx)(Ke,{phase:e}),He[e]]})})]})}function Ke({phase:e}){return e===`complete`?(0,V.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 rounded-full bg-success`,"aria-hidden":!0}):e===`thinking`||e===`checking`?(0,V.jsxs)(`span`,{className:`relative flex h-1.5 w-1.5 shrink-0`,"aria-hidden":!0,
1children:[(0,V.jsx)(`span`,{className:`absolute inline-flex h-full w-full motion-safe:animate-ping rounded-full bg-primary opacity-60`}),(0,V.jsx)(`span`,{className:`relative inline-flex h-1.5 w-1.5 rounded-full bg-primary`})]}):(0,V.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 motion-safe:animate-pulse rounded-full bg-primary/70`,"aria-hidden":!0})}function qe(){return(0,V.jsxs)(`div`,{role:`status`,className:`flex items-center gap-1`,"aria-label":`ChatGPT is responding`,children:[(0,V.jsx)(`span`,{className:`h-1.5 w-1.5 motion-safe:animate-bounce rounded-full bg-foreground/40 [animation-delay:0ms]`}),(0,V.jsx)(`span`,{className:`h-1.5 w-1.5 motion-safe:animate-bounce rounded-full bg-foreground/40 [animation-delay:150ms]`}),(0,V.jsx)(`span`,{className:`h-1.5 w-1.5 motion-safe:animate-bounce rounded-full bg-foreground/40 [animation-delay:300ms]`})]})}var Je=[{title:`Underuse`,body:`Non-technical employees don't know how to use AI for their role, so they quietly revert to pre-AI workflows that take longer and are less accurate.`},{title:`Misuse and AI slop`,body:`Others overuse it and ship AI slop. Inaccurate work reaches customers, productivity goes net-negative, and you inherit reputational and legal risk.`},{title:`Blind spend`,body:`Spend rises with no view of who uses AI well, no benchmark for good usage, the wrong models on the wrong tasks, and no way to forecast cost.`},{title:`Talent risk`,body:`Employees with no path to get better on AI lose morale and leave. Untrained teams are an attrition risk that never shows up on the invoice.`}],Ye=[{icon:T,text:`An adoption journey that shows where every team sits, from first questions to fully delegated
1work.`},{icon:y,text:`Hours saved and tool spend estimates that show their methodology next to the number.`},{icon:xe,text:`New AI tools appear the moment someone starts using them, so the tool list reflects reality.`},{icon:be,text:`Numbers you can put in front of a board without a caveat slide.`}],Xe=[{icon:Se,title:`Ranked by proficiency`,body:`Scored on how effectively people use AI, not vanity metrics like token count or logins.`},{icon:p,title:`Champions surface on their own`,body:`Your best users become visible, so you can spread what they do across every team.`},{icon:x,title:`Privacy-preserving`,body:`Rankings show scores and patterns. An individual's actual prompts stay private to them.`}],Ze=[{icon:x,title:`Individuals own their conversations`,body:`Prompts and responses stay with the person. Each user can export or delete their record at any time, and individual prompts are never shown to admins, teammates, or Joring.`},{icon:_,title:`Leaders see the shape, not the text`,body:`The organization view reports scores, adoption, and usage patterns. It does not expose what anyone wrote.`},{icon:_e,title:`Deploys via MDM`,body:`Push the extension and CLI through your existing device management. No per-user enrollment.`},{icon:ee,title:`BYO key, zero retention`,body:`Connect your own model with zero data retention, plus SSO, SCIM, and a full audit log. Encrypted in transit and at rest.`}],Qe=[{icon:b,title:`Push it through your MDM`,body:`The browser extension and CLI deploy like any other managed software. Nothing for employees to configure, no integrations to build.`,tone:`info`},{icon:_,title:`See the picture the next day`,body:`Usage, tools, and fluency scores appear on the organization view from the first prompts, across every team.`,tone:`success`},{icon:h,title:`Coaching starts immediately`,body:`From the very next prompt, every employee gets coaching and trails tuned to their role, inside the tool they are already using.`,tone:`primary`}];function $e(){let e=(0,B.useRef)({}),t=(0,B.useRef)(new Set),n=(0,B.useCallback)(t=>n=>{e.current[t]=n},[]);return(0,B.useEffect)(()=>{let n=new IntersectionObserver(e=>{for(let n of e)if(n.isIntersecting){let e=n.target.getAttribute(`data-section`);e&&!t.current.has(e)&&(t.current.add(e),fe(e,`homepage`))}},{threshold:.3});for(let t of Object.values(e.current))t&&n.observe(t);return()=>{n.disconnect()}},[]),(0,B.useEffect)(()=>{let e=new Set,t=[25,50,75,100],n=!1,r=()=>{n||(n=!0,requestAnimationFrame(()=>{n=!1;let r=document.documentElement.scrollHeight-window.innerHeight;if(r<=0)return;let i=Math.round(window.scrollY/r*100);for(let n of t)i>=n&&!e.has(n)&&(e.add(n),ue(n,`homepage`))}))};return window.addEventListener(`scroll`,r,{passive:!0}),()=>{window.removeEventListener(`scroll`,r)}},[]),(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(`script`,{type:`application/ld+json`,dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":`https://schema.org`,"@type":`SoftwareApplication`,name:`Joring`,url:`https://joring.ai`,applicationCategory:`BusinessApplication`,operatingSystem:`Web`,description:`Joring is an AI enablement and coaching platform. Organizations deploy the Joring browser extension and CLI through MDM to coach employees inside ChatGPT, Claude, Gemini, Copilot, and other AI tools, in the flow of work, with guided trails tailored to each job role. The organization view shows adoption, fluency, hours saved, and tool spend across every AI tool, and a team leaderboard makes progress visible. Individual prompts stay private to each user and are never shown to admins.`})}}),(0,V.jsx)(`script`,{type:`application/ld+json`,dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":`https://schema.org`,"@type":`WebSite`,name:`Joring`,url:`https://joring.ai`})}})]}),(0,V.jsxs)(`div`,{className:`relative overflow-x-clip`,children:[(0,V.jsxs)(`section`,{className:`relative overflow-hidden px-6 pb-28 pt-8 md:pt-10`,ref:n(`hero`),"data-section":`hero`,children:[(0,V.jsxs)(`div`,{"aria-hidden":!0,className:`pointer-events-none fixed inset-0`,children:[(0,V.jsx)(P,{src:`/images/hero-backdrop.jpg`,alt:``,width:2400,height:1600,loading:`eager`,fetchPriority:`high`,sizes:`100vw`,className:`absolute inset-0 h-full w-full object-cover`}),(0,V.jsx)(`div`,{className:`absolute inset-0 bg-background/60 dark:bg-background/85`})]}),(0,V.jsxs)(`div`,{className:`relative mx-auto max-w-6xl`,children:[(0,V.jsxs)(`div`,{className:`mx-auto max-w-4xl text-center`,children:[(0,V.jsx)(z,{className:`mb-6
1justify-center`,children:`AI Enablement & Coaching Platform`}),(0,V.jsxs)(`h1`,{className:`mb-6 text-balance text-display-lg`,children:[`Enable every team to `,(0,V.jsx)(`span`,{className:`text-primary`,children:`use AI well`}),`, then prove progress with data.`]}),(0,V.jsx)(`p`,{className:`mx-auto mb-8 max-w-3xl text-lg leading-relaxed text-muted-foreground`,children:`Joring shows who uses AI effectively and tracks adoption, behavior change, and ROI signals, so you can target training by tool and by role.`}),(0,V.jsxs)(`div`,{className:`flex flex-col items-stretch gap-3 sm:flex-row sm:items-center sm:justify-center`,children:[(0,V.jsx)(L,{location:`homepage_hero`}),(0,V.jsx)(i,{size:`lg`,variant:`outline`,asChild:!0,children:(0,V.jsx)(`a`,{href:`#org-dashboard`,onClick:e=>{e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),document.getElementById(`org-dashboard`)?.scrollIntoView({behavior:`smooth`}),A(`click_see_dashboard`,{location:`homepage_hero`}))},children:`See the dashboard`})})]})]}),(0,V.jsxs)(`div`,{id:`org-dashboard`,className:`relative mt-10 scroll-mt-24 md:mt-12`,children:[(0,V.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute -top-8 left-1/2 h-[340px] w-[90%] -translate-x-1/2 rounded-full opacity-[0.14] blur-[90px] dark:opacity-[0.17]`,style:{background:`radial-gradient(closest-side, color-mix(in oklab, var(--primary) 70%, transparent), transparent)`}}),(0,V.jsx)(Fe,{})]})]}),(0,V.jsxs)(`div`,{className:`relative mx-auto mt-24 max-w-6xl`,ref:n(`social_proof`),"data-section":`social_proof`,children:[(0,V.jsx)(f,{as:`p`,className:`mb-10 justify-center`,children:`Trusted by people at`}),(0,V.jsx)(ge,{})]})]}),(0,V.jsx)(R,{surface:`foreground`,padding:`md`,className:`md:pb-28`,ref:n(`problem`),"data-section":`problem`,children:(0,V.jsxs)(`div`,{className:`mx-auto max-w-6xl`,children:[(0,V.jsx)(z,{children:`The adoption gap`}),(0,V.jsxs)(`h2`,{className:`mb-5 max-w-3xl text-display`,children:[`AI adoption is jagged.`,` `,(0,V.jsx)(`span`,{className:`text-background/55`,children:`Your ROI pays the price.`})]}),(0,V.jsx)(`p`,{className:`mb-6 max-w-2xl leading-relaxed text-background/65`,children:`Engineering races ahead while marketing, sales, customer success, and operations fall behind. Spend keeps climbing, but the value lands unevenly, and most of the organization never gets there on its own.`}),(0,V.jsx)(`div`,{className:`mt-12 divide-y divide-background/15 border-y border-background/15`,children:Je.map(e=>(0,V.jsxs)(`div`,{className:`grid items-baseline gap-x-14 gap-y-2 py-7 lg:grid-cols-[1fr_1.8fr]`,children:[(0,V.jsx)(`p`,{className:`font-display text-sheet font-medium sm:text-record`,children:e.title}),(0,V.jsx)(`p`,{className:`text-body text-background/65`,children:e.body})]},e.title))}),(0,V.jsxs)(`p`,{className:`mt-12 max-w-3xl text-lg font-medium leading-relaxed`,children:[`You can only absorb AI as fast as you can teach it.`,` `,(0,V.jsx)(`span`,{className:`text-background/60`,children:`You can buy frontier tools tomorrow. Your organization absorbs them only as fast as it can teach them. When teaching can't keep pace with the tools, you stay structurally behind what you are already paying for. Joring closes that gap.`})]})]})}),(0,V.jsx)(R,{surface:`card`,ref:n(`org_view`),"data-section":`org_view`,children:(0,V.jsxs)(`div`,{className:`mx-auto grid max-w-6xl items-center gap-14 lg:grid-cols-[1fr_1.05fr]`,children:[(0,V.jsxs)(`div`,{children:[(0,V.jsx)(z,{index:`01`,children:`Observe`}),(0,V.jsxs)(`h2`,{className:`mb-5 text-balance text-display`,children:[`Every AI tool your company touches.`,` `,(0,V.jsx)(`span`,{className:`text-muted-foreground`,children:`One view.`})]}),(0,V.jsx)(`p`,{className:`mb-2 leading-relaxed text-muted-foreground`,children:`The organization view shows adoption, fluency, hours saved, and estimated tool spend across your whole company. No integrations to build: deploy the extension through your MDM and the picture starts filling in the same day.`}),(0,V.jsx)(`ul`,{className:`mt-8 divide-y divide-border/60 border-t border-border/60`,children:Ye.map(e=>{let t=e.icon;return(0,V.jsxs)(`li`,{className:`flex items-start gap-3.5 py-4`,children:[(0,V.jsx)(t,{className:`mt-0.5 size-[18px] shrink-0 text-primary`,"aria-hidden":!0}),(0,V.jsx)(`span`,{className:`text-body text-muted-foreground`,children:e.text})]},e.text)})})]}),(0,V.jsx)(Ie,{})]})}),(0,V.jsx)(R,{className:`overflow-hidden`,ref:n(`trails`),"data-section":`trails`,children:(0,V.jsxs)(`div`,{className:`relative mx-auto max-w-6xl`,children:[(0,V.jsxs)(`div`,{className:`mx-auto mb-14 max-w-3xl text-center`,children:[(0,V.jsx)(z,{index:`02`,className:`justify-center`,children:`Coach`}),(0,V.jsxs)(`h2`,{className:`mb-5 text-display`,children:[`Training that happens`,` `,(0,V.jsx)(`span`,{className:`text-muted-foreground`,children:`where the work happens.`})]}),(0,V.jsx)(`p`,{className:`leading-relaxed text-muted-foreground`,children:`Trails are guided paths that run inside the AI tools your team already uses. Each step is a real task with a coached prompt, and Joring verifies completion from what the person actually did, not from a quiz at the end. Assign them by role, so sales learns on sales work and finance learns on finance work.`})]}),(0,V.jsx)(`div`,{id:`try-a-trail`,className:`relative scroll-mt-24`,children:(0,V.jsx)(Ue,{})})]})}),(0,V.jsx)(R,{surface:`card`,ref:n(`leaderboard`),"data-section":`leaderboard`,children:(0,V.jsxs)(`div`,{className:`mx-auto grid max-w-6xl items-center gap-14 lg:grid-cols-[1.05fr_1fr]`,children:[(0,V.jsxs)(`div`,{className:`lg:order-2`,children:[(0,V.jsx)(z,{index:`03`,children:`Champions & leaderboards`}),(0,V.jsx)(`h2`,{className:`mb-5 text-balance text-display`,children:`Make getting better at AI a little competitive.`}),(0,V.jsx)(`p`,{className:`mb-2 leading-relaxed text-muted-foreground`,children:`An organization leaderboard ranks people and team
1s by how well they actually use AI, not how many tokens they burn. Champions rise to the top, everyone sees what good looks like, and a little healthy competition pulls the whole org up.`}),(0,V.jsx)(`ul`,{className:`mt-8 divide-y divide-border/60 border-t border-border/60`,children:Xe.map(e=>{let t=e.icon;return(0,V.jsxs)(`li`,{className:`flex items-start gap-3.5 py-4`,children:[(0,V.jsx)(t,{className:`mt-0.5 size-[18px] shrink-0 text-primary`,"aria-hidden":!0}),(0,V.jsxs)(`div`,{children:[(0,V.jsx)(`p`,{className:`text-body font-semibold leading-snug`,children:e.title}),(0,V.jsx)(`p`,{className:`mt-1 text-body text-muted-foreground`,children:e.body})]})]},e.title)})})]}),(0,V.jsx)(`div`,{className:`lg:order-1`,children:(0,V.jsx)(ze,{})})]})}),(0,V.jsx)(R,{ref:n(`privacy`),"data-section":`privacy`,children:(0,V.jsxs)(`div`,{className:`mx-auto max-w-6xl`,children:[(0,V.jsx)(z,{children:`Privacy`}),(0,V.jsxs)(`h2`,{className:`mb-5 max-w-3xl text-display`,children:[`Coaching for people.`,` `,(0,V.jsx)(`span`,{className:`text-muted-foreground`,children:`Patterns for leaders.`})]}),(0,V.jsx)(`p`,{className:`max-w-2xl leading-relaxed text-muted-foreground`,children:`Joring analyzes the conversations people have with AI tools, and nothing else. No keystrokes, no screenshots, no browsing history.`}),(0,V.jsx)(`div`,{className:`mt-14 grid gap-x-10 gap-y-12 border-t border-border/60 pt-10 sm:grid-cols-2 lg:grid-cols-4`,children:Ze.map(e=>{let t=e.icon;return(0,V.jsxs)(`div`,{children:[(0,V.jsx)(o,{className:`mb-4`,"aria-hidden":!0,children:(0,V.jsx)(t,{})}),(0,V.jsx)(`h3`,{className:`mb-2.5 text-title font-label`,children:e.title}),(0,V.jsx)(`p`,{className:`text-body text-muted-foreground`,children:e.body})]},e.title)})})]})}),(0,V.jsx)(R,{surface:`card`,ref:n(`rollout`),"data-section":`rollout`,children:(0,V.jsxs)(`div`,{className:`mx-auto max-w-6xl`,children:[(0,V.jsx)(z,{children:`Rollout`}),(0,V.jsxs)(`h2`,{className:`mb-14 max-w-3xl text-display`,children:[`Deployed in an afternoon.`,` `,(0,V.jsx)(`span`,{className:`text-muted-foreground`,children:`Reporting by morning.`})]}),(0,V.jsx)(`div`,{className:`grid gap-x-10 gap-y-12 border-t border-border/60 pt-10 md:grid-cols-3`,children:Qe.map((e,t)=>{let n=e.icon;return(0,V.jsxs)(`div`,{children:[(0,V.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,V.jsx)(o,{tone:e.tone,"aria-hidden":!0,children:(0,V.jsx)(n,{})}),(0,V.jsx)(f,{as:`span`,size:`sm`,"data-tone":e.tone,className:`text-tone`,children:`Step ${String(t+1)}`})]}),(0,V.jsx)(`h3`,{className:`mb-2.5 text-title font-label`,children:e.title}),(0,V.jsx)(`p`,{className:`text-body text-muted-foreground`,children:e.body})]},e.title)})})]})}),(0,V.jsx)(Ce,{sectionRef:n(`integrations`)}),(0,V.jsx)(Oe,{sectionRef:n(`platforms`)}),(0,V.jsx)(R,{padding:`md`,ref:n(`final_cta`),"data-section":`final_cta`,children:(0,V.jsxs)(c,{className:`mx-auto max-w-6xl rounded-band px-6 py-20 text-center shadow-lift sm:rounded-band-lg sm:px-12 md:py-24`,children:[(0,V.jsx)(`h2`,{className:`mx-auto mb-5 max-w-3xl text-balance text-display`,children:`Stop paying for AI your people aren't using.`}),(0,V.jsx)(`p`,{className:`mx-auto mb-9 max-w-xl leading-relaxed text-muted-foreground`,children:`Run a pilot with one team in about a week. See the data, then expand across the org.`}),(0,V.jsxs)(`div`,{className:`flex flex-col items-stretch justify-center gap-3 sm:flex-row sm:items-center`,children:[(0,V.jsx)(L,{location:`homepage_final_cta`,children:`Book a demo`}),(0,V.jsx)(i,{size:`lg`,variant:`outline`,asChild:!0,children:(0,V.jsx)(j,{to:`/sign-in/`,onClick:()=>{A(`click_start_free`,{location:`homepage_final_cta`})},children:`Start free`})})]})]})})]})]})}function et(){return(0,V.jsx)(he,{children:(0,V.jsx)($e,{})})}export{et as component};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.