{"version":3,"file":"script_main.o9o7bgF9.mjs","names":["N","useFonts","FONTS","useStill","useLive","useState","onTick","fontsOf","stack","wOf","readCMS","useCMS","useRef","SW_BUILD","useSite","SEED","colorsOf","T","linkList","cssVars","CSS_BASE","HD","famOf","famCss","DEF","COLOR_CONTROLS","FONT_CONTROLS","BP_CONTROL","BtnArrow","_Fragment","useIso","useEffect","useLayoutEffect","useFonts","FONTS","useStill","useLive","useState","fontsOf","stack","wOf","readCMS","useCMS","useRef","SW_BUILD","useSite","SEED","colorsOf","useId","pick","cssVars","HD","famOf","famCss","DEF","COLOR_CONTROLS","FONT_CONTROLS","BP_CONTROL","useIso","useEffect","useLayoutEffect","useLive","useState","useRef","_Fragment","DEF","useEffect","useLayoutEffect","useState","t","v","p","y","m","I","B","E","_","j","D","C","J","r","W","$","z","K","G","V","H","X","Q","Y","Z","tt","te","tr","ti","tn","ts","to","ta","tu","tl","th","tc","tf","td","tg","tv","ty","tp","tm","tw","tb","tI","tS","tU","tk","tL","tB","tF","tP","tN","tO","tx","tA","tq","tj","tD","i","n","s","o","a","u","l","h","c","d","w","b","e","T","x","F","N","A","R","tM","tT","tR","g","tC","p","l","d","x","T","g","s","n","t","r","o","y","a","h","f","t","v","p","y","m","I","B","E","q","_","j","D","C","J","r","W","$","z","K","G","V","H","X","Q","Y","Z","tt","te","tr","ti","tn","ts","to","ta","tu","tl","th","tc","tf","td","tg","tv","ty","tp","tm","tw","tb","tI","tS","tU","tk","tL","tB","tF","tP","tN","tO","tx","tA","tq","tj","tD","i","n","s","o","a","u","l","h","c","d","w","b","e","M","P","T","x","F","N","A","O","R","tE","tM","tT","t_","U","S","tR","g","tC","p","l","d","x","T","g","s","n","t","r","o","y","a","h","f","t","v","p","y","m","I","B","E","_","j","D","C","J","r","W","$","z","K","G","V","H","X","Q","Y","Z","tt","te","tr","ti","tn","ts","to","ta","tu","tl","th","tc","tf","td","tg","tv","ty","tp","tm","tw","tb","tI","tS","tU","tk","tL","tB","tF","tP","tN","tO","tx","tA","tq","tj","tD","i","n","s","o","a","u","l","h","c","d","w","b","e","T","x","F","N","A","R","tM","tT","tR","g","tC","p","l","d","x","T","g","s","n","t","r","o","y","a","h","f","t","v","p","y","m","I","B","E","_","j","D","C","J","r","W","$","z","K","G","V","H","X","Q","Y","Z","tt","te","tr","ti","tn","ts","to","ta","tu","tl","th","tc","tf","td","tg","tv","ty","tp","tm","tw","tb","tI","tS","tU","tk","tL","tB","tF","tP","tN","tO","tx","tA","tq","tj","tD","i","n","s","o","a","u","l","h","c","d","w","b","e","T","x","F","N","A","R","tM","tT","U","S","tR","g","tC","p","l","d","x","T","g","s","n","t","r","o","y","a","h","f","p","y","r","n","a","u","l","h","c","d","T","x","g","p","d","s","n","t","r","o","Faq","Posts","Reviews","Tools","Results","Industries","Workflows","Site","useRef","React.useId","PropertyOverrides","_Fragment","React.createElement","SiteLayout","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","Framer.patchRoutesForABTesting","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder","React.Suspense","React.lazy"],"sources":["https:/framerusercontent.com/modules/TWXQ8clIEqG8RslMvsDW/uqmUWjz6tEvRAzt51w5t/RbCmsRow.js","https:/framerusercontent.com/modules/ZijuNvReQsLvlnSJ1QBe/ktkxS65Ehc54fVGA8p7R/RbFooter.js","https:/framerusercontent.com/modules/OCKYu1NQXuNOdG7CczMq/gqSoOlyzNPrzAwXrIT4I/RbHeader.js","https:/framerusercontent.com/modules/IghyyQbL8OoxrqED4h4s/fLWUOXsKRFGTzdZx3Bxj/RbLoader.js","https:/framerusercontent.com/modules/DtpimAxZd4ShJm28l0bq/Tt5O8bA7xUVXhspGlWRx/RbSmooth.js","https:/framerusercontent.com/modules/YoORyKb1QF8tmzSlczI4/blKmaWmk9WH9xt1KMsCZ/hxDaj92Q0-0.js","https:/framerusercontent.com/modules/YoORyKb1QF8tmzSlczI4/blKmaWmk9WH9xt1KMsCZ/hxDaj92Q0-1.js","https:/framerusercontent.com/modules/YoORyKb1QF8tmzSlczI4/blKmaWmk9WH9xt1KMsCZ/hxDaj92Q0.js","https:/framerusercontent.com/modules/c2O1RpRzOuIl57dxxqvb/PCW5oAlONzkBYDblbEIo/PgloSUgqG-0.js","https:/framerusercontent.com/modules/c2O1RpRzOuIl57dxxqvb/PCW5oAlONzkBYDblbEIo/PgloSUgqG-1.js","https:/framerusercontent.com/modules/c2O1RpRzOuIl57dxxqvb/PCW5oAlONzkBYDblbEIo/PgloSUgqG.js","https:/framerusercontent.com/modules/bZzNMJLYqC3J3zGNLAEy/mZQ8jd50h21NzqFaxCDd/PkU8yZwyo-0.js","https:/framerusercontent.com/modules/bZzNMJLYqC3J3zGNLAEy/mZQ8jd50h21NzqFaxCDd/PkU8yZwyo-1.js","https:/framerusercontent.com/modules/bZzNMJLYqC3J3zGNLAEy/mZQ8jd50h21NzqFaxCDd/PkU8yZwyo.js","https:/framerusercontent.com/modules/6XEfoYLr4Mg3fBb7Pshv/a4xWlETbUBDQTcj9Fcq6/pSwsSrCbE-0.js","https:/framerusercontent.com/modules/6XEfoYLr4Mg3fBb7Pshv/a4xWlETbUBDQTcj9Fcq6/pSwsSrCbE-1.js","https:/framerusercontent.com/modules/6XEfoYLr4Mg3fBb7Pshv/a4xWlETbUBDQTcj9Fcq6/pSwsSrCbE.js","https:/framerusercontent.com/modules/12EPUswHnFJIfN6zjg9u/RwR4fGGugdeB9nZlMCdI/XjoOiDtHB-0.js","https:/framerusercontent.com/modules/12EPUswHnFJIfN6zjg9u/RwR4fGGugdeB9nZlMCdI/XjoOiDtHB-1.js","https:/framerusercontent.com/modules/12EPUswHnFJIfN6zjg9u/RwR4fGGugdeB9nZlMCdI/XjoOiDtHB.js","https:/framerusercontent.com/modules/j6mWQXlEHTa4PoMfjZHb/8dDfIoyCR3heaAZUrWez/yQiAzaYaH.js","framer:toplevel/main"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const src=v=>v&&typeof v===\"object\"?String(v.src||\"\"):typeof v===\"string\"?v:\"\";/**\n * RUNBOOK — CMS bridge row (kinds: site · services = Workflows · industries · cases = Results · machines = Tools · reviews · posts · faq; slots f1…f28, n1 = Order, img = Picture: see seed.py). One renders per CMS item inside a hidden Collection List in the Site Layout, so every page carries the live CMS and the sections read these rows. Do not place it by hand or delete the \"CMS Bridge\" layers.\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 1\n * @framerIntrinsicHeight 1\n */export default function RbCmsRow(props){const{kind=\"\",slug=\"\",f1=\"\",f2=\"\",f3=\"\",f4=\"\",f5=\"\",f6=\"\",f7=\"\",f8=\"\",f9=\"\",f10=\"\",f11=\"\",f12=\"\",f13=\"\",f14=\"\",f15=\"\",f16=\"\",f17=\"\",f18=\"\",f19=\"\",f20=\"\",f21=\"\",f22=\"\",f23=\"\",f24=\"\",f25=\"\",f26=\"\",f27=\"\",f28=\"\",n1=0,n2=0,img,img2,img3,img4}=props;let cv=false;try{cv=RenderTarget.current()===RenderTarget.canvas;}catch(e){}if(cv&&kind===\"bridge\")return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",left:8,top:56,font:\"500 11px/1.5 ui-monospace, Menlo, monospace\",padding:\"3px 8px\",borderRadius:4,background:\"#0B0C12\",color:\"#F7F8FC\",whiteSpace:\"nowrap\",pointerEvents:\"none\"},children:\"CMS Bridge: hidden lists that feed every section. Keep these layers, do not edit or delete them.\"});return /*#__PURE__*/_jsx(\"span\",{\"data-rb-row\":kind,\"data-slug\":slug,\"data-f1\":f1,\"data-f2\":f2,\"data-f3\":f3,\"data-f4\":f4,\"data-f5\":f5,\"data-f6\":f6,\"data-f7\":f7,\"data-f8\":f8,\"data-f9\":f9,\"data-f10\":f10,\"data-f11\":f11,\"data-f12\":f12,\"data-f13\":f13,\"data-f14\":f14,\"data-f15\":f15,\"data-f16\":f16,\"data-f17\":f17,\"data-f18\":f18,\"data-f19\":f19,\"data-f20\":f20,\"data-f21\":f21,\"data-f22\":f22,\"data-f23\":f23,\"data-f24\":f24,\"data-f25\":f25,\"data-f26\":f26,\"data-f27\":f27,\"data-f28\":f28,\"data-n1\":String(n1),\"data-n2\":String(n2),\"data-img\":src(img),\"data-img2\":src(img2),\"data-img3\":src(img3),\"data-img4\":src(img4),\"aria-hidden\":true,style:{...props.style,display:\"block\",width:1,height:1,overflow:\"hidden\",opacity:0,pointerEvents:\"none\"}});}const N=t=>({type:ControlType.Number,title:t,defaultValue:0,min:-1e6,max:1e6,step:.01});const F_=t=>({type:ControlType.String,title:t,defaultValue:\"\"});addPropertyControls(RbCmsRow,{kind:F_(\"Kind\"),slug:F_(\"Slug\"),f1:F_(\"F1\"),f2:F_(\"F2\"),f3:F_(\"F3\"),f4:F_(\"F4\"),f5:F_(\"F5\"),f6:F_(\"F6\"),f7:F_(\"F7\"),f8:F_(\"F8\"),f9:F_(\"F9\"),f10:F_(\"F10\"),f11:F_(\"F11\"),f12:F_(\"F12\"),f13:F_(\"F13\"),f14:F_(\"F14\"),f15:F_(\"F15\"),f16:F_(\"F16\"),f17:F_(\"F17\"),f18:F_(\"F18\"),f19:F_(\"F19\"),f20:F_(\"F20\"),f21:F_(\"F21\"),f22:F_(\"F22\"),f23:F_(\"F23\"),f24:F_(\"F24\"),f25:F_(\"F25\"),f26:F_(\"F26\"),f27:F_(\"F27\"),f28:F_(\"F28\"),n1:N(\"N1\"),n2:N(\"N2\"),img:{type:ControlType.ResponsiveImage,title:\"Img\"},img2:{type:ControlType.ResponsiveImage,title:\"Img2\"},img3:{type:ControlType.ResponsiveImage,title:\"Img3\"},img4:{type:ControlType.ResponsiveImage,title:\"Img4\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RbCmsRow\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"1\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RbCmsRow.map","// ===== RUNBOOK shared scaffold (design language «THE NIGHT SHIFT»: a dark page (--rb-night #0B0D10) with full-bleed office / ops photographs, timestamped task pins, mono caps labels, thin drawn rules; ONE paper band (RbReviews); ONE accent = ACID LIME #D4F542 (--rb-brass) as dots, marks, mono labels and LIME WORDS in headlines on dark — never lime text on light (--rb-acc there); Inter Tight 600 display, Inter body, JetBrains Mono labels; PILL buttons (radius 999) with a lime arrow seat that floods the pill on hover, glass ghost pill with a live lime lamp; chips = soft pills, plates / frames radius 8) (inlined by mk.py; each Framer code file must be self-contained) =====\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useLayoutEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";const FONTS=\"https://fonts.googleapis.com/css2?family=Inter+Tight:wght@500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap\";// Token-safe alpha: Styles-bound colours arrive as var(--token-…) so hex-alpha breaks; color-mix keeps a palette flip working. Never 0% (hue drops) — floor at 0.4%.\nconst A=(c,a)=>`color-mix(in srgb, ${c} ${Math.max(.4,Math.round(a*1e3)/10)}%, transparent)`;const MIX=(a,b,t)=>`color-mix(in srgb, ${a} ${Math.round((1-t)*100)}%, ${b})`;const srcOf=(v,fallback)=>v&&typeof v===\"object\"&&v.src?String(v.src).split(\"?\")[0]:typeof v===\"string\"&&v.trim()?v.trim().split(\"?\")[0]:fallback;const T=(s,fb)=>s&&s.trim()?s.trim():fb;// ink or white text on a CMS brand colour (luminance test; the brand colour is data, not a palette token)\nconst onBrand=hex=>{const m=String(hex||\"\").replace(\"#\",\"\").match(/^([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);if(!m)return\"var(--rb-cloud)\";const[r,g,b]=[m[1],m[2],m[3]].map(x=>{const v=parseInt(x,16)/255;return v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4);});const L=.2126*r+.7152*g+.0722*b;return L>.18?\"var(--rb-ink)\":\"var(--rb-cloud)\";};const cleanTel=s=>s.replace(/[^\\d+]/g,\"\");// Premium layout band (measured 09-13): container 1340 @1440 / 1520 @1920, body 16, button label 12–13.\nconst MAXW=\"clamp(1280px, 92vw, 1520px)\";// Responsive delivery: Framer's resizer serves any upload at ?scale-down-to=N (longest side). The query is stripped first so one file never downloads twice.\n// Responsive delivery. Framer uploads: the resizer serves ?scale-down-to=N. Unsplash stand-ins: ?w=N. The src is already the smallest width that covers the slot (a 52px avatar never pulls a 1600px photo), so a big image is never decoded for a small box — decode is what stalls scrolling.\nconst RS_W=[160,320,480,800,1200,1600];const rsTarget=sizes=>{const t=String(sizes||\"\").trim().split(\",\").pop()||\"\";const px=t.match(/(\\d+(?:\\.\\d+)?)px/);const vw=t.match(/(\\d+(?:\\.\\d+)?)vw/);const want=px?parseFloat(px[1])*2:vw?parseFloat(vw[1])/100*1600*1.25:1600;return RS_W.find(w=>w>=want)||1600;};// tall = height / width of a PORTRAIT picture (9:16 → 1.78). Framer's scale-down-to caps the LONG edge, so a 512 step of a 9:16 file is only 288 px wide: the w descriptors are divided by tall so the browser picks a step that is really wide enough.\n// Framer merges the `sizes` of the three breakpoint copies by prefixing each with its own media query; a sizes string that already holds media queries comes out broken\n// (\"(min-width: 1200px) (max-width: 1099px) 100vw, 45vw, …\") and the browser falls back to the LAST value on every screen → phones downloaded the 512 px variant. So media queries are rewritten as one length:\n// \"(max-width: 1099px) 100vw, 45vw\" → \"max(45vw, min(100vw, calc((1100px - 100vw) * 9999)))\". Same slot at every width (checked in Chromium + WebKit); anything it cannot parse is passed through.\nconst rsSizes=sz=>{const parts=String(sz||\"\").split(\",\").map(p=>p.trim());if(parts.length<2)return sz;const steps=[];for(const p of parts.slice(0,-1)){const m=p.match(/^\\(max-width:\\s*(\\d+)px\\)\\s*(\\d+)vw$/);if(!m)return sz;steps.push([+m[1],+m[2]]);}const zm=parts[parts.length-1].match(/^(\\d+)vw$/);if(!zm)return sz;const z=+zm[1];if(steps.length===1&&steps[0][1]<z)return`min(${z}vw, max(${steps[0][1]}vw, calc((100vw - ${steps[0][0]}px) * 9999)))`;for(let i=0;i<steps.length;i++)if(steps[i][1]<(i+1<steps.length?steps[i+1][1]:z))return sz;return`max(${[`${z}vw`].concat(steps.map(([b,x])=>`min(${x}vw, calc((${b+1}px - 100vw) * 9999))`)).join(\", \")})`;};const RS=(u,sizes,tall=1)=>{const s=String(u||\"\");const b=s.split(\"?\")[0];const tl=Math.max(1,tall||1);if(/framerusercontent\\.com\\/images\\//.test(s)){const w=rsTarget(sizes)*tl;const d=w<=512?512:w<=1024?1024:2048;const dw=n=>Math.round(n/tl);return{src:`${b}?scale-down-to=${d}`,srcSet:`${b}?scale-down-to=512 ${dw(512)}w, ${b}?scale-down-to=1024 ${dw(1024)}w, ${b}?scale-down-to=2048 ${dw(2048)}w`,sizes:rsSizes(sizes)};}if(/images\\.unsplash\\.com\\//.test(s)){const w=rsTarget(sizes);const q=n=>`${b}?w=${n}&q=70&fm=jpg&auto=format`;return{src:q(w),srcSet:RS_W.filter(n=>n<=Math.max(w*2,480)).map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}// Wikimedia Commons stand-ins from media/standins.json (thumb urls …/1280px-Name.jpg): only the standard thumb steps exist. A 1920px url (the hero photo) is passed through untouched.\nconst wm=s.match(/wikimedia\\.org\\/.*\\/(\\d+)px-/);if(wm&&+wm[1]<=1280){const w=rsTarget(sizes);const q=n=>b.replace(/\\/\\d+px-/,`/${n}px-`);const st=[500,960,1280].filter(n=>n<=+wm[1]);return{src:q(st.find(n=>n>=w)||st[st.length-1]),srcSet:st.map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}return{src:s};};// A Framer Font control stores a selector (GF;Family-700), not a CSS family — derive one, reject anything with ';'\nconst famOf=f=>{if(!f)return\"\";if(typeof f===\"string\")return f.includes(\";\")?\"\":f;if(f.fontFamily&&!String(f.fontFamily).includes(\";\"))return String(f.fontFamily);const sel=String(f.fontSelector||\"\");if(!sel)return\"\";const n=sel.split(\";\").pop()||\"\";return n.replace(/-(regular|italic|bold|\\d{3}(italic)?)$/i,\"\").replace(/-/g,\" \");};const wOf=(f,fb)=>{if(!f)return fb;if(f.fontWeight)return Number(f.fontWeight)||fb;const m=String(f.fontSelector||\"\").match(/-(\\d{3})/);return m?Number(m[1]):fb;};// famCss: Framer's Font `fontFamily` is ALREADY a stack — never wrap it in quotes (one fake family → fallback renders). A bare name gets quoted.\nconst famCss=f=>{const fa=famOf(f).replace(/\"/g,\"'\").trim();if(!fa)return\"\";return fa.includes(\",\")||fa.startsWith(\"'\")?fa:`'${fa}'`;};const stack=(custom,f,fb,tail)=>{const fam=custom?famCss(f):\"\";return`${fam?`${fam}, `:\"\"}${fb}, ${tail}`;};function useFonts(){useEffect(()=>{if(typeof document===\"undefined\"||document.getElementById(\"rb-fonts\"))return;const l=document.createElement(\"link\");l.id=\"rb-fonts\";l.rel=\"stylesheet\";l.href=FONTS;document.head.appendChild(l);},[]);}// live = client after hydration and not on the canvas. SSR and the first client render share the same markup.\n// TRUE on the Framer canvas AND in its export / thumbnail / screenshot renderers (anything that is not the running preview): no scroll and no hydration there, so every reveal / pinned stage must draw its FINAL state or the editor shows empty blocks.\nfunction useStill(){const isStatic=useIsStaticRenderer();let t=null;try{t=RenderTarget.current();}catch(e){}return isStatic||t!==null&&t!==RenderTarget.preview;}function useLive(){const isStatic=useIsStaticRenderer();const[live,setLive]=useState(false);useEffect(()=>{if(!isStatic&&RenderTarget.current()!==RenderTarget.canvas&&typeof window!==\"undefined\")setLive(true);},[isStatic]);return live;}// Width/height of the root + viewport height. SSR starts from the breakpoint hint (Framer renders the Tablet/Phone copies with the same code and no width).\nfunction useSize(root,hint){const ov=String(hint||\"\").toLowerCase();const[w,setW]=useState(ov===\"phone\"?390:ov===\"tablet\"?810:1440),[vh,setVh]=useState(ov===\"phone\"?844:ov===\"tablet\"?1080:900);useLayoutEffect(()=>{const el=root.current;if(!el)return;const ro=new ResizeObserver(([e])=>{const x=Math.round((e.borderBoxSize&&e.borderBoxSize[0]?e.borderBoxSize[0].inlineSize:0)||el.offsetWidth);if(x>0)setW(x);});ro.observe(el);const vv=()=>setVh(window.innerHeight);vv();const read=()=>{const x=Math.round(el.offsetWidth);if(x>0)setW(x);};const t1=window.setTimeout(read,150),t2=window.setTimeout(read,700),t3=window.setTimeout(read,1600);window.addEventListener(\"resize\",vv);window.addEventListener(\"load\",read);return()=>{ro.disconnect();window.clearTimeout(t1);window.clearTimeout(t2);window.clearTimeout(t3);window.removeEventListener(\"resize\",vv);window.removeEventListener(\"load\",read);};},[]);return{w,vh};}const useReduced=()=>{const[rm,setRm]=useState(false);useLayoutEffect(()=>{setRm(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches);},[]);return rm;};// One shared rAF for every section. Each frame runs ALL reads first (layout reads: getBoundingClientRect, offsetHeight), then ALL writes (CSS vars, transforms).\n// Interleaving read → write → read made the browser recalc the whole page's style once per section per frame (layout thrashing: 20+ recalcs a frame).\nfunction onTick(fn,read,pre){if(typeof window===\"undefined\")return()=>{};const w=window;if(!w.__ovTick){w.__ovTick={pre:new Set,subs:new Set,reads:new Set,raf:0};const loop=t=>{const T=w.__ovTick;T.pre.forEach(r=>r(t));T.reads.forEach(r=>r(t));T.subs.forEach(s=>s(t));T.raf=requestAnimationFrame(loop);};w.__ovTick.raf=requestAnimationFrame(loop);}w.__ovTick.subs.add(fn);if(read)w.__ovTick.reads.add(read);if(pre)w.__ovTick.pre.add(pre);return()=>{w.__ovTick.subs.delete(fn);if(read)w.__ovTick.reads.delete(read);if(pre)w.__ovTick.pre.delete(pre);};}const clamp01=v=>Math.min(1,Math.max(0,v));const easeIO=t=>{const x=clamp01(t);return x<.5?4*x*x*x:1-Math.pow(-2*x+2,3)/2;};// RUNBOOK tokens (the 8 names are shared with every kit, only the values change): Paper(bone) #F2F3EE · Ink #0B0D10 · Accent(brass) = ACID LIME #D4F542 (a FILL behind ink text, dots, marks, mono labels on dark; never text on light → --rb-acc) · Signal(pine) = deep lime #5E7A0C (fills / light-ground accent text) · Line(fog) #D8DAD3 · Muted(stone) #6E7370 · White(cloud) #F2F3EE · Dark(night) #0B0D10.\nconst DEF={bone:\"#F2F3EE\",ink:\"#0B0D10\",brass:\"#D4F542\",pine:\"#5E7A0C\",fog:\"#D8DAD3\",stone:\"#6E7370\",cloud:\"#F2F3EE\",night:\"#0B0D10\"};const colorsOf=p=>({bone:p.bone||DEF.bone,ink:p.ink||DEF.ink,brass:p.brass||DEF.brass,pine:p.pine||DEF.pine,fog:p.fog||DEF.fog,stone:p.stone||DEF.stone,cloud:p.cloud||DEF.cloud,night:p.night||DEF.night});// a Style-bound colour arrives as var(--token-…, #hex): let the browser resolve it to r,g,b for canvas drawing\nconst cssRgb=(el,col,fb)=>{if(!el||typeof window===\"undefined\")return fb;const p=document.createElement(\"i\");p.style.display=\"none\";p.style.color=col;el.appendChild(p);const v=getComputedStyle(p).color;p.remove();const m=v.match(/(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?)/);return m?`${Math.round(+m[1])},${Math.round(+m[2])},${Math.round(+m[3])}`:fb;};const cssVars=c=>({\"--rb-bone\":c.bone,\"--rb-ink\":c.ink,\"--rb-brass\":c.brass,\"--rb-pine\":c.pine,\"--rb-fog\":c.fog,\"--rb-stone\":c.stone,\"--rb-cloud\":c.cloud,\"--rb-night\":c.night});const COLOR_CONTROLS={bone:{type:ControlType.Color,title:\"Paper\",defaultValue:DEF.bone},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:DEF.ink},brass:{type:ControlType.Color,title:\"Accent\",description:\"Acid lime: lime words in headlines on dark, dots, button arrow seats, lamps, mono labels on dark. Never small lime text on a light ground\",defaultValue:DEF.brass},pine:{type:ControlType.Color,title:\"Signal\",description:\"Deep lime: the small accent text on light grounds (the paper band) is mixed from it\",defaultValue:DEF.pine},fog:{type:ControlType.Color,title:\"Line\",defaultValue:DEF.fog},stone:{type:ControlType.Color,title:\"Muted\",defaultValue:DEF.stone},cloud:{type:ControlType.Color,title:\"White\",description:\"Plates, cards and the type on dark\",defaultValue:DEF.cloud},night:{type:ControlType.Color,title:\"Dark\",defaultValue:DEF.night}};// ---- Fonts: Custom Fonts toggle → Font controls; off = Inter Tight 600 / Inter / JetBrains Mono ----\nconst FONT_CONTROLS={customFonts:{type:ControlType.Boolean,title:\"Custom Fonts\",description:\"Off = the site fonts (set once on the Header in the Site Layout). On = different fonts for this section only\",defaultValue:false},displayFont:{type:ControlType.Font,title:\"Display Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},bodyFont:{type:ControlType.Font,title:\"Body Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},monoFont:{type:ControlType.Font,title:\"Mono Font\",defaultFontType:\"monospace\",hidden:p=>!p.customFonts}};const NUMF=\"var(--rb-font-m, 'JetBrains Mono'), ui-monospace, Menlo, monospace\";// Site-wide fonts: the Header (Site Layout, every page) writes --rb-font-d/b/m (+ weights) on :root when its Custom Fonts is on. A section uses them unless its own Custom Fonts is on.\nconst siteFontCss=p=>{if(!p||!p.customFonts)return\"\";const v=[];const put=(k,f,w)=>{const fam=famCss(f);if(fam){v.push(`--rb-font-${k}:${fam}`);v.push(`--rb-font-${k}w:${wOf(f,w)}`);}};put(\"d\",p.displayFont,400);put(\"b\",p.bodyFont,400);put(\"m\",p.monoFont,400);put(\"a\",p.accentFont,400);return v.length?`:root{${v.join(\";\")}}`:\"\";};function fontsOf(p){const on=!!p.customFonts;const D={fontFamily:stack(on,p.displayFont,\"var(--rb-font-d, 'Inter Tight')\",\"'Helvetica Neue', Arial, sans-serif\"),fontWeight:on?wOf(p.displayFont,600):\"var(--rb-font-dw, 600)\",fontStyle:on&&p.displayFont&&p.displayFont.fontStyle?p.displayFont.fontStyle:\"normal\"};const B={fontFamily:stack(on,p.bodyFont,\"var(--rb-font-b, 'Inter')\",\"system-ui, -apple-system, Arial, sans-serif\"),fontWeight:on?wOf(p.bodyFont,400):\"var(--rb-font-bw, 400)\"};const M={fontFamily:stack(on,p.monoFont,\"var(--rb-font-m, 'JetBrains Mono')\",\"ui-monospace, 'SF Mono', Menlo, monospace\"),fontWeight:on?wOf(p.monoFont,500):\"var(--rb-font-mw, 500)\"};return{D,B,M};}const BP_CONTROL={bpHint:{type:ControlType.Enum,title:\"Breakpoint Hint\",description:\"Set per breakpoint copy so the server render starts at the right width\",options:[\"auto\",\"desktop\",\"tablet\",\"phone\"],optionTitles:[\"Auto\",\"Desktop\",\"Tablet\",\"Phone\"],defaultValue:\"auto\",hidden:()=>true}};// In-page CTA jumps (\"#demo\", \"/#demo\"): scroll to the section when it is on this page, otherwise go to it on the home page.\nfunction jumpTo(e,href){try{const m=String(href||\"\").match(/^\\/?#([\\w-]+)$/);if(!m)return;const el=document.getElementById(m[1]);if(el){e.preventDefault();const W=window;const L=W.__ltLenis||W.__vcLenis||W.lenis;if(L&&L.scrollTo)L.scrollTo(el,{offset:-20});else el.scrollIntoView({behavior:\"smooth\",block:\"start\"});try{history.replaceState(null,\"\",\"#\"+m[1]);}catch(x){}}else if(href.startsWith(\"#\")){e.preventDefault();window.location.href=\"/\"+href;}}catch(x){}}// display text (section headlines, card h3): Inter Tight 600, tight (-.04em). With a section's Custom Fonts on, the picked font is used as is.\nconst HD=D=>({...D,letterSpacing:\"-.04em\"});// numbers in display type keep their columns (counters never jiggle)\nconst NUM={fontVariantNumeric:\"tabular-nums lining-nums\"};// ---- Button system: PILLS (radius 999), the same two the hero draws (.rbh-btn-p / .rbh-btn-g).\n// kinds: solid = the pill (ink face on light grounds, light face on dark ones) with a round LIME ARROW SEAT on the right that floods the whole pill on hover / focus, the label stays ink · ghost = a glass pill (night veil + blur + hairline on dark; outline on light) with a round lime LAMP that glows, fills white / ink on hover · quiet = a small ghost (42px) · ink = alias of solid.\n// Defaults: solid → arrow, no lamp · ghost / quiet → lamp, no arrow. Pass arrow / lamp to override. `sub` = a small second line above the label. Without href (or as=\"button\") it renders a <button>.\nconst BtnArrow=()=>/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const Btn=({href,label,kind=\"solid\",arrow,lamp,style,className,onClick,ariaLabel,cur,sub,as,state})=>{const kd=kind===\"ink\"?\"solid\":kind;const ar=arrow===undefined?kd===\"solid\":arrow;const lp=lamp===undefined?kd!==\"solid\":lamp;const inner=/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-face\",children:[lp&&/*#__PURE__*/_jsx(\"i\",{className:\"rb-btn-lamp\",\"aria-hidden\":true}),/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-l\",children:[sub?/*#__PURE__*/_jsx(\"span\",{className:\"rb-sub\",children:sub}):null,/*#__PURE__*/_jsx(\"span\",{className:\"rb-mark\",children:label})]}),ar&&/*#__PURE__*/_jsx(\"span\",{className:\"rb-btn-a\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(BtnArrow,{})})]});const cls=`rb-btn rb-${kd}${ar?\" rb-has-a\":\"\"}${sub?\" rb-two\":\"\"}${state===\"ok\"?\" is-ok\":\"\"}${className?\" \"+className:\"\"}`;if(as===\"button\"||!href)return /*#__PURE__*/_jsx(\"button\",{type:onClick?\"button\":\"submit\",className:cls,\"data-cur\":cur||\"go\",onClick:onClick,\"aria-label\":ariaLabel,style:style,children:inner});return /*#__PURE__*/_jsx(\"a\",{className:cls,\"data-cur\":cur||\"go\",href:href,target:/^https?:\\/\\//.test(href||\"\")?\"_blank\":undefined,rel:/^https?:\\/\\//.test(href||\"\")?\"noopener\":undefined,onClick:onClick||(e=>jumpTo(e,href)),\"aria-label\":ariaLabel,style:style,children:inner});};function useNearFocus(root,live){useEffect(()=>{if(!live||!root.current)return;const el=root.current;const f=e=>{const t=e.target;const sc=t.closest?.(\".rb-inring\");if(!sc)return;try{t.scrollIntoView({block:\"nearest\",inline:\"nearest\"});}catch(x){}};el.addEventListener(\"focusin\",f);return()=>el.removeEventListener(\"focusin\",f);},[live]);}// Roll — a rolling mono number: every digit is a 0–9 column that slides to its value; separators stay put. rm = no transition.\nconst Roll=({text,rm=false,cls})=>/*#__PURE__*/_jsx(\"span\",{className:`rb-roll${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,\"aria-hidden\":true,children:String(text).split(\"\").map((ch,i)=>/\\d/.test(ch)?/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg\",children:/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg-c\",style:{[\"--d\"]:+ch},children:[0,1,2,3,4,5,6,7,8,9].map(d=>/*#__PURE__*/_jsx(\"i\",{children:d},d))})},i):/*#__PURE__*/_jsx(\"span\",{className:\"rb-sep\",children:ch},i))});const Count=({to,on,rm=false,ms=1400,cls,style})=>{const v=useCount(to,on,rm,ms);return /*#__PURE__*/_jsx(\"span\",{className:`rb-count rb-num${cls?\" \"+cls:\"\"}`,style:style,\"aria-label\":String(to||\"\"),children:/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,children:v})});};// Md — mini markdown for CMS bodies: blank line = paragraph, \"## \" = h3, \"- \" = list item, \"> \" = quote, **bold**. Never dangerouslySetInnerHTML.\nconst mdInline=t=>String(t).split(/\\*\\*([^*]+)\\*\\*/g).map((x,i)=>i%2?/*#__PURE__*/_jsx(\"strong\",{children:x},i):x);const Md=({text,D,cls})=>{const lines=String(text||\"\").split(/\\n+/).map(l=>l.trim()).filter(Boolean);const out=[];let list=[];const flush=()=>{if(list.length){out.push(/*#__PURE__*/_jsx(\"ul\",{children:list.map((x,i)=>/*#__PURE__*/_jsx(\"li\",{children:mdInline(x)},i))},\"u\"+out.length));list=[];}};lines.forEach(l=>{if(l.startsWith(\"- \")){list.push(l.slice(2));return;}flush();if(l.startsWith(\"## \"))out.push(/*#__PURE__*/_jsx(\"h3\",{style:D?HD(D):undefined,children:l.slice(3)},out.length));else if(l.startsWith(\"> \"))out.push(/*#__PURE__*/_jsx(\"blockquote\",{children:mdInline(l.slice(2))},out.length));else out.push(/*#__PURE__*/_jsx(\"p\",{children:mdInline(l)},out.length));});flush();return /*#__PURE__*/_jsx(\"div\",{className:`rb-md${cls?\" \"+cls:\"\"}`,children:out});};const Rule=({on,dir=\"x\",delay=0,rm=false,style,cls})=>/*#__PURE__*/_jsx(\"i\",{className:`rb-rule-${dir}${on?\" is-on\":\"\"}${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,style:{[\"--dl\"]:`${delay}ms`,...style||{}},\"aria-hidden\":true});const IcoArrow=({s=15})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const IcoCheck=({s=12})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"3.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12.5l4.5 4.5L19 7.5\"})});const CSS_BASE=`\n:where(.mw){position:relative;z-index:10} .mw,.mw *{box-sizing:border-box;min-width:0} .rb-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;padding:0!important;margin:-1px!important;border:0!important} :where(.mw) a{color:inherit} html,body{overflow-x:clip}\n/* focus: a 3px ink ring with a light band (reads on paper, on plates and over a picture); inside dark boxes (.rb-dark / .rb-dk) the ring is paper */\n:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"]),[role=\"button\"]):focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--rb-cloud,#F8F8F5)!important}\n:where(.rb-dark,.rb-dk) :where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"])):focus-visible{outline-color:var(--rb-cloud,#F8F8F5)!important;box-shadow:0 0 0 2px var(--rb-night,#14161A)!important}\n:where(.rb-inring) :where(a[href],button,input,summary,[tabindex]):focus-visible,:where(a[href],button,input,summary,[tabindex]).rb-inring:focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:-3px!important;box-shadow:inset 0 0 0 5px var(--rb-cloud,#F8F8F5)!important}\n:where(.mw) :focus-visible{outline:3px solid var(--rb-ink,#14161A);outline-offset:2px}\n/* Stage 7: a control that takes focus never lands under the fixed header */\n:where(.mw) :where(a[href],button,input,select,textarea,summary,[tabindex]){scroll-margin-top:116px}\n/* TEXT-SAFE values per ground. --rb-mut = muted text (≥4.5:1 on paper, deeper paper and plates). --rb-acc = the accent as SMALL TEXT: deep lime mixed with ink on light grounds (the paper band), lime mixed with white on dark ones. The raw --rb-brass (acid lime #D4F542) is lime words / mono labels / dots on DARK and a fill behind ink text (seats, pills); never text on a light ground (1.4:1); --rb-pine (deep lime) is for fills. */\n.mw{--rb-bone2:color-mix(in srgb,var(--rb-bone) 90%,var(--rb-stone));--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent)}\n.rb-dark,.mw.rb-dark,.mw .rb-dk{--rb-mut:color-mix(in srgb,var(--rb-stone) 36%,var(--rb-cloud));--rb-acc:color-mix(in srgb,var(--rb-brass) 78%,var(--rb-cloud));--rb-ok:color-mix(in srgb,var(--rb-pine) 45%,var(--rb-cloud));--rb-hair:color-mix(in srgb,var(--rb-cloud) 16%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-cloud) 30%,transparent)}\n.mw.rb-dark .rb-lt,.mw .rb-dk .rb-lt{--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent);color:var(--rb-ink)}\n/* section grounds: rb-dark = night (--rb-night, the whole page) \\xb7 paper (default, the one RbReviews band) \\xb7 rb-paper2 = deeper paper (--rb-bone2) */\n.rb-sec{background:var(--rb-bone);color:var(--rb-ink)} .rb-sec.rb-paper2{background:var(--rb-bone2)} .rb-sec.rb-dark{background:var(--rb-night);color:var(--rb-cloud)}\n/* ---- Buttons: PILLS, radius 999, 56px high, label 14px / 600. Colours: --kf face \\xb7 --kl label \\xb7 --kh the fill on hover \\xb7 --klh label on hover \\xb7 --kr outline. */\n.rb-btn{position:relative;display:inline-flex;height:56px;padding:0;border:0;border-radius:999px;background:none;text-decoration:none;white-space:nowrap;font:inherit;line-height:1;cursor:pointer;-webkit-appearance:none;appearance:none;color:var(--kl)!important;-webkit-tap-highlight-color:transparent;--lamp:var(--rb-brass)}\n.rb-btn-face{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;width:100%;height:100%;padding:0 22px;border-radius:999px;overflow:hidden;isolation:isolate;background:var(--kf);color:var(--kl);box-shadow:var(--kr,none);font-size:14px;font-weight:600;letter-spacing:.005em;transition:background .4s,color .4s,box-shadow .4s,transform .18s}\n.rb-btn:hover .rb-btn-face,.rb-btn:focus-visible .rb-btn-face{background:var(--kh);color:var(--klh);box-shadow:var(--krh,var(--kr,none))} .rb-btn:active .rb-btn-face{transform:scale(.965);transition-duration:.06s}\n.rb-btn-l{position:relative;z-index:1;display:inline-flex;flex-direction:column;justify-content:center;line-height:1.15} .rb-sub{display:block;font-size:10.5px;font-weight:500;letter-spacing:.04em;opacity:.78;margin-bottom:1px} .rb-mark{display:inline-block}\n/* the arrow seat: a round LIME seat inside the right end (= the hero's .rbh-btn-p); on hover / focus it floods the whole pill (one clip-path on a button-size layer) and the arrow turns from north-east to east */\n.rb-btn.rb-has-a .rb-btn-face{padding:0 8px 0 22px;transition:color .3s,box-shadow .4s,transform .18s} .rb-btn.rb-has-a:hover .rb-btn-face,.rb-btn.rb-has-a:focus-visible .rb-btn-face{background:var(--kf);color:var(--rb-ink)}\n.rb-btn.rb-has-a .rb-btn-face::before{content:\"\";position:absolute;inset:0;z-index:0;background:var(--rb-brass);clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px);transition:clip-path .55s cubic-bezier(.2,.8,.2,1)} .rb-btn.rb-has-a:hover .rb-btn-face::before,.rb-btn.rb-has-a:focus-visible .rb-btn-face::before{clip-path:inset(0 0 0 0 round 999px)}\n.rb-btn .rb-btn-a{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:40px;height:40px;color:var(--rb-ink)} .rb-btn .rb-btn-a svg{display:block;width:15px;height:15px;transform:rotate(-45deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)} .rb-btn:hover .rb-btn-a svg,.rb-btn:focus-visible .rb-btn-a svg{transform:none}\n/* the lamp: a small round LIME lamp that glows, with a round ping (ghost / quiet) = the hero's .rbh-lamp */\n.rb-btn-lamp{position:relative;z-index:1;flex:none;width:8px;height:8px;border-radius:50%;background:var(--lamp);box-shadow:0 0 10px var(--lamp)} .rb-btn-lamp::after{content:\"\";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--lamp);opacity:0;animation:rb-ping 2.6s ease-out infinite} @keyframes rb-ping{0%{opacity:.9;transform:scale(.5)}70%,100%{opacity:0;transform:scale(1.5)}}\n/* solid: ink pill + light label on light grounds; light pill + ink label on dark grounds (= the hero's main button). Without an arrow the whole pill turns lime. Label on lime is always ink (15:1). */\n.rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud);--kh:var(--rb-brass);--klh:var(--rb-ink)}\n.rb-dark .rb-btn.rb-solid,.mw .rb-dk .rb-btn.rb-solid{--kf:var(--rb-cloud);--kl:var(--rb-ink)} .rb-dark .rb-btn.rb-solid .rb-btn-face,.mw .rb-dk .rb-btn.rb-solid .rb-btn-face{box-shadow:0 12px 30px -14px color-mix(in srgb,#000 80%,transparent)}\n.mw.rb-dark .rb-lt .rb-btn.rb-solid,.mw .rb-dk .rb-lt .rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud)}\n/* ghost / quiet: an outline pill on light grounds; on dark grounds a GLASS pill (night veil 45 % + blur + white hairline, = the hero's .rbh-btn-g); on hover it fills with ink (light) or with white (dark) */\n.rb-btn.rb-ghost,.rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-dark .rb-btn.rb-ghost,.mw .rb-dk .rb-btn.rb-ghost,.rb-dark .rb-btn.rb-quiet,.mw .rb-dk .rb-btn.rb-quiet{--kf:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 45%,transparent);--kl:var(--rb-cloud);--kh:var(--rb-cloud);--klh:var(--rb-ink);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 56%,transparent);--krh:inset 0 0 0 1px var(--rb-cloud)} .rb-dark .rb-btn.rb-ghost .rb-btn-face,.mw .rb-dk .rb-btn.rb-ghost .rb-btn-face,.rb-dark .rb-btn.rb-quiet .rb-btn-face,.mw .rb-dk .rb-btn.rb-quiet .rb-btn-face{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}\n.mw.rb-dark .rb-lt .rb-btn.rb-ghost,.mw .rb-dk .rb-lt .rb-btn.rb-ghost,.mw.rb-dark .rb-lt .rb-btn.rb-quiet,.mw .rb-dk .rb-lt .rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-btn.rb-ghost .rb-btn-face,.rb-btn.rb-quiet .rb-btn-face{justify-content:center;gap:10px} .rb-btn.rb-ghost.rb-has-a .rb-btn-face,.rb-btn.rb-quiet.rb-has-a .rb-btn-face{justify-content:space-between}\n.rb-btn.rb-quiet{height:42px;border-radius:999px} .rb-btn.rb-quiet .rb-btn-face{padding:0 16px;gap:9px;font-size:12.5px;border-radius:999px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face{padding:0 5px 0 14px} .rb-btn.rb-quiet .rb-btn-a{width:32px;height:32px} .rb-btn.rb-quiet .rb-btn-a svg{width:13px;height:13px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face::before{clip-path:inset(5px 5px 5px calc(100% - 37px) round 999px)}\n.rb-btn:disabled,.rb-btn[aria-disabled=\"true\"]{opacity:.55;pointer-events:none}\n@media (max-width:600px),(hover:none){.mw .rb-btn{max-width:100%}}\n.mw button,.mw input,.mw select,.mw textarea{font-family:inherit}\n/* mono data lines + numbers */\n.rb-mono{font-size:11.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;line-height:1.5;font-variant-numeric:tabular-nums} .rb-num{font-variant-numeric:tabular-nums lining-nums} .rb-lbl{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-mut)}\n/* a live lamp: a small round LIME dot that glows, with a slow round ping (.is-ok = steady deep lime) — the hero's pin dot in small */\n.rb-lit-dot{position:relative;display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--rb-brass);box-shadow:0 0 10px var(--rb-brass)} .rb-lit-dot::after{content:\"\";position:absolute;inset:-4px;border-radius:50%;box-shadow:0 0 0 1.5px var(--rb-brass);opacity:0;animation:rb-glow 2.6s ease-out infinite} @keyframes rb-glow{0%{opacity:.7;transform:scale(.5)}100%{opacity:0;transform:scale(1.5)}} .rb-lit-dot.is-ok{background:var(--rb-pine)} .rb-lit-dot.is-ok::after{animation:none}\n/* Plates: a plate over a photograph / on paper — soft, 8px radius, hairline, a soft drop so it lifts off a picture; on dark grounds use .rb-plate.rb-dark = the night-glass plate (veil + hairline, as the hero pins). .rb-frame = a picture frame (8px radius, clips its image; night ground on dark sections so nothing flashes paper). CASCADE-ORDER LAW: every component re-injects this base CSS, so a LATER component's .rb-plate beats an earlier component's single-class rule: a component that overrides a base class on the same element uses 2+ classes (.rbh-score.rb-plate{…}). */\n.rb-frame{position:relative;overflow:hidden;border-radius:8px;background:var(--rb-bone2)} .mw.rb-dark .rb-frame,.mw .rb-dk .rb-frame{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))} .rb-frame>img{display:block;width:100%;height:100%;object-fit:cover}\n.rb-plate{position:relative;border-radius:8px;background:var(--rb-cloud);color:var(--rb-ink);box-shadow:inset 0 0 0 1px var(--rb-hair),0 1px 2px color-mix(in srgb,var(--rb-ink) 8%,transparent),0 10px 28px -12px color-mix(in srgb,var(--rb-ink) 28%,transparent)}\n.rb-plate.rb-dark,.mw .rb-dk{background:var(--rb-night);color:var(--rb-cloud)} .rb-plate.rb-dark{background:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 78%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 18%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}\n/* Chips: small mono PILLS (radius 999; tool names, kinds, week labels). Add the mono font with style={M}.\n   .rb-chip = hairline outline \\xb7 .is-amb = THE LIME PILL (ink on lime: the kind chip, the week label, the unit) \\xb7 .is-plate = ink on white (over pictures / on dark) \\xb7 .is-ink = white on ink (flips to ink on white on dark grounds) \\xb7 .is-acc = accent text (AA) \\xb7 button.rb-chip / a.rb-chip = a filter / brief chip: hover fills ink (white on dark), [aria-pressed=\"true\"] / .is-on = lime pill */\n.rb-chip{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px;border:0;border-radius:999px;background:none;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap;text-decoration:none;box-shadow:inset 0 0 0 1px var(--rb-hair2);color:inherit} .rb-chip.is-acc{color:var(--rb-acc)} .rb-chip.is-ok{color:var(--rb-ok)}\n.rb-chip.is-amb,.rb-dark .rb-chip.is-amb,.mw .rb-dk .rb-chip.is-amb{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none} .rb-chip.is-plate,.rb-dark .rb-chip.is-plate,.mw .rb-dk .rb-chip.is-plate{background:var(--rb-cloud);color:var(--rb-ink);box-shadow:none} .rb-chip.is-ink{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark .rb-chip.is-ink,.mw .rb-dk .rb-chip.is-ink{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip,a.rb-chip{height:34px;padding:0 14px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .3s,color .3s,box-shadow .3s} button.rb-chip:hover,a.rb-chip:hover{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark button.rb-chip:hover,.mw .rb-dk button.rb-chip:hover,.rb-dark a.rb-chip:hover,.mw .rb-dk a.rb-chip:hover{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip[aria-pressed=\"true\"],button.rb-chip.is-on,a.rb-chip.is-on,.rb-dark button.rb-chip[aria-pressed=\"true\"],.mw .rb-dk button.rb-chip[aria-pressed=\"true\"]{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none}\n/* LIME WORDS as an inline mark (lime text on dark, deep lime on the paper band — never a plate) and the step number (\\xab01\\xbb, \\xabStep 02 / 05\\xbb; add style={M}) */\n.rb-amb{font-style:normal;color:var(--rb-acc)} .mw.rb-dark .rb-amb,.mw .rb-dk .rb-amb{color:var(--rb-brass)} .mw.rb-dark .rb-lt .rb-amb,.mw .rb-dk .rb-lt .rb-amb{color:var(--rb-acc)}\n.rb-stn{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--rb-mut)} .rb-stn b{font-weight:inherit;color:var(--rb-acc)}\n/* Roll */ .rb-roll{display:inline-flex;align-items:flex-start;white-space:nowrap;font-variant-numeric:tabular-nums} .rb-dg{display:inline-block;height:1em;overflow:hidden;vertical-align:top} .rb-dg-c{display:flex;flex-direction:column;transform:translateY(calc(var(--d) * -1em));transition:transform .55s cubic-bezier(.3,.9,.3,1)} .rb-dg-c i{display:block;height:1em;line-height:1em;font-style:normal} .rb-sep{display:inline-block;height:1em;line-height:1em} .rb-roll.is-rm .rb-dg-c,.mw[data-kb] .rb-dg-c{transition:none}\n/* Rules */ .rb-rule-x,.rb-rule-y{display:block;background:var(--rb-hair);transform-origin:0 0;transition:transform 1.1s cubic-bezier(.2,.8,.2,1) var(--dl,0ms)} .rb-rule-x{width:100%;height:1px;transform:scaleX(0)} .rb-rule-y{width:1px;height:100%;transform:scaleY(0)} .rb-rule-x.is-on{transform:scaleX(1)} .rb-rule-y.is-on{transform:scaleY(1)} .rb-rule-x.is-rm,.rb-rule-y.is-rm,.mw[data-kb] .rb-rule-x,.mw[data-kb] .rb-rule-y{transition:none}\n/* Count */ .rb-count{display:inline-block;white-space:nowrap}\n/* Md */ .rb-md{display:grid;gap:14px;font-size:16.5px;line-height:1.6} .rb-md p,.rb-md ul,.rb-md h3,.rb-md blockquote{margin:0} .rb-md h3{margin-top:14px;font-size:clamp(24px,2vw,30px);line-height:1.15} .rb-md ul{padding-left:1.1em;display:grid;gap:6px} .rb-md strong{font-weight:600} .rb-md blockquote{padding-left:16px;border-left:3px solid var(--rb-brass);font-size:1.1em}\n/* HEIGHT LAW: a block whose content swaps stacks all items in ONE grid cell so the tallest reserves the height */ .rb-swap{display:grid} .rb-swap>*{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s} .rb-swap>.is-on{opacity:1;visibility:visible;transition:opacity .5s ease}\n@media (prefers-reduced-motion:reduce){.rb-btn-lamp::after,.rb-lit-dot::after{animation:none!important} .mw *,.sth *{animation-duration:.01ms!important;transition-duration:.01ms!important}}\n`;// ===== RUNBOOK motion layer (composed by mk.py after _common) =====\n// One shared rAF (onTick). Sections write --sp (0 = top edge enters the viewport bottom → 1 = bottom edge leaves the top) and,\n// for tall pinned wrappers, --pp (0 = wrapper top hits the viewport top → 1 = wrapper bottom hits the viewport bottom). IO-gated.\nconst SCRUB_K=.18;// Decode a section's photos while it is still a screen and a half away, so the first frame it is on screen never waits for a decode.\nfunction usePre(el){try{const io=new IntersectionObserver(es=>{if(!es[0].isIntersecting)return;io.disconnect();el.querySelectorAll(\"img\").forEach(im=>{try{im.loading=\"eager\";im.decode().catch(()=>{});}catch(e){}});},{rootMargin:\"150% 0px 150% 0px\"});io.observe(el);}catch(e){}}function focusTo(el,frac){if(!el||typeof window===\"undefined\")return;if(window.innerWidth<810)return;const r=el.getBoundingClientRect();const vh=window.innerHeight;if(r.height<=vh*1.05)return;const y=r.top+window.scrollY+(r.height-vh)*Math.min(1,Math.max(0,frac));if(Math.abs(window.scrollY-y)<8)return;const w=window;if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}function useScrollVars(ref,live,rm,cb){useEffect(()=>{if(!live||rm||!ref.current)return;const el=ref.current;let vis=true,last=-9,cs=-1,cp=-1,settled=false;usePre(el);const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"25% 0px 25% 0px\"});io.observe(el);// eased scrub: the values glide toward the true scroll position (K per frame), so wheel steps never jump a pinned scene\nlet rt=0,rh=0,vh=1,fresh=false;const read=()=>{if(!vis&&settled){fresh=false;return;}const r=el.getBoundingClientRect();rt=r.top;rh=r.height;vh=window.innerHeight||1;fresh=true;};const off=onTick(()=>{if(!fresh)return;const sp=clamp01((vh-rt)/(vh+rh));const pp=rh>vh*1.05?clamp01(-rt/(rh-vh)):sp;if(cs<0){cs=sp;cp=pp;}else{cs+=(sp-cs)*SCRUB_K;cp+=(pp-cp)*SCRUB_K;if(Math.abs(sp-cs)<5e-4)cs=sp;if(Math.abs(pp-cp)<5e-4)cp=pp;}settled=cs===sp&&cp===pp;if(Math.abs(cs+cp-last)<3e-4)return;last=cs+cp;el.style.setProperty(\"--sp\",cs.toFixed(4));el.style.setProperty(\"--pp\",cp.toFixed(4));if(cb)cb(cs,cp);},read);return()=>{off();io.disconnect();};},[live,rm]);}// STAGE — false while the loader or the page-transition cover is on screen (html.rb-hold-*), so first-screen intros play AFTER the cover lifts, never under it. 9 s safety.\nfunction useStage(live){const[r,setR]=useState(false);useEffect(()=>{if(!live)return;const h=document.documentElement;const ok=()=>!/(^|\\s)rb-hold/.test(h.className);if(ok()){setR(true);return;}const mo=new MutationObserver(()=>{if(ok()){mo.disconnect();setR(true);}});mo.observe(h,{attributes:true,attributeFilter:[\"class\"]});const t=window.setTimeout(()=>{mo.disconnect();setR(true);},9e3);return()=>{mo.disconnect();window.clearTimeout(t);};},[live]);return r;}// true once the element has entered the viewport (stays true) — and only once the stage is clear. Reduced motion = true at once.\nfunction useOn(ref,live,rm,amount=.16){const[on,setOn]=useState(false);const still=useStill();const ready=useStage(live);useEffect(()=>{if(!live)return;if(rm){setOn(true);return;}if(!ready)return;const el=ref.current;if(!el)return;let off=()=>{};// keyboard focus: mark the section FIRST and flush styles, so the reveal that follows runs with instant transitions (a transition keeps the timing it started with)\nconst fin=e=>{try{if(e.target.matches(\":focus-visible\")){el.setAttribute(\"data-kb\",\"\");void el.offsetWidth;}}catch(x){}setOn(true);};const fout=e=>{if(!el.contains(e.relatedTarget))el.removeAttribute(\"data-kb\");};el.addEventListener(\"focusin\",fin);el.addEventListener(\"focusout\",fout);const io=new IntersectionObserver(es=>{for(const e of es)if(e.isIntersecting){io.disconnect();// IO ignores occlusion: under a curtain (Reveal) wait until about a quarter of it is uncovered\noff=onTick(()=>{const rev=el.closest(\".rb-rev.is-act\");const rv=rev?parseFloat(rev.style.getPropertyValue(\"--rv\")||\"0\"):1;if(rv>.24){setOn(true);off();}});}},{threshold:Math.min(amount,Math.max(.005,window.innerHeight*.3/Math.max(1,el.offsetHeight))),rootMargin:\"0px 0px -6% 0px\"});io.observe(el);return()=>{io.disconnect();off();el.removeEventListener(\"focusin\",fin);el.removeEventListener(\"focusout\",fout);};},[live,rm,ready]);return on||still;}// CURTAIN REVEAL — the section is pinned BEHIND the one above it and is uncovered as that one lifts away (the footer movement, for any section).\n// Wrapper = section + a spacer of T, pulled up by T (page length unchanged); the section is sticky for exactly T of scroll. T = min(section height, 100svh):\n// a tall section pins at the top, a short one sits on the bottom edge of the viewport. The section ABOVE needs a higher Layer (z-index).\nfunction Reveal({on,layer=9,style,children}){const live=useLive();const rm=useReduced();const wrap=useRef(null);const inner=useRef(null);const sp=useRef(null);const[h,setH]=useState(0);const[kb,setKb]=useState(false);// keyboard users get the footer as a normal section: a curtain taller than the screen hides its top row under the page above / the fixed header\nconst act=on&&live&&!rm&&h>0&&!kb;useEffect(()=>{if(!on||!live||rm||!inner.current)return;const el=inner.current;const m=()=>setH(el.offsetHeight);m();const ro=new ResizeObserver(m);ro.observe(el);return()=>ro.disconnect();},[on,live,rm]);useEffect(()=>{if(!act||!wrap.current)return;const el=wrap.current;let vis=true,last=-1;const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"30% 0px 30% 0px\"});io.observe(el);let cur=-1,T=0,vh=1,top=0,fresh=false;const read=()=>{if(!vis){fresh=false;return;}T=sp.current?sp.current.offsetHeight:0;vh=window.innerHeight;top=el.getBoundingClientRect().top;fresh=true;};const off=onTick(()=>{if(!fresh||!T)return;const rv=clamp01((vh-T-top)/T);if(cur<0||el.dataset.snap){cur=rv;delete el.dataset.snap;}else{cur+=(rv-cur)*SCRUB_K;if(Math.abs(rv-cur)<5e-4)cur=rv;}if(Math.abs(cur-last)<4e-4)return;last=cur;el.style.setProperty(\"--rv\",cur.toFixed(4));},read);return()=>{off();io.disconnect();};},[act]);return /*#__PURE__*/_jsxs(\"div\",{ref:wrap,className:`rb-rev${act?\" is-act\":\"\"}`,style:{...style||{},[\"--h\"]:`${h}px`,[\"--layer\"]:layer},onFocusCapture:e=>{if(!act||!wrap.current)return;try{if(e.target.matches(\":focus-visible\")){const t0=e.target;setKb(true);requestAnimationFrame(()=>requestAnimationFrame(()=>{try{t0.scrollIntoView({block:\"center\"});}catch(x){}}));return;}}catch(x){}const t=e.target;const w=window;const r=wrap.current.getBoundingClientRect();const T=sp.current?sp.current.offsetHeight:0;const y=Math.max(0,Math.min(document.documentElement.scrollHeight-window.innerHeight,r.top+window.scrollY-window.innerHeight+2*T));if(Math.abs(window.scrollY-y)>4){if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}wrap.current.dataset.snap=\"1\";requestAnimationFrame(()=>{try{const q=t.getBoundingClientRect();if(q.top<0||q.bottom>window.innerHeight)t.scrollIntoView({block:\"nearest\"});}catch(x){}});},children:[/*#__PURE__*/_jsx(\"div\",{ref:inner,className:\"rb-rev-in\",children:children}),/*#__PURE__*/_jsx(\"div\",{ref:sp,className:\"rb-rev-sp\",\"aria-hidden\":true})]});}const REVEAL_CONTROLS={reveal:{type:ControlType.Boolean,title:\"Reveal\",description:\"Curtain: this section waits behind the one above and is uncovered as that one lifts away\",enabledTitle:\"Curtain\",disabledTitle:\"Off\",defaultValue:true},layer:{type:ControlType.Number,title:\"Layer\",description:\"Stacking order. Must be LOWER than the section above (sections default to 10)\",min:0,max:20,step:1,displayStepper:true,defaultValue:9,hidden:p=>p.reveal===false}};const splitWords=s=>String(s||\"\").replace(/\\*([^*]+)\\*/g,(_m,g)=>g.trim().split(/\\s+/).map(w=>{const m=w.match(/^(.*?)([.,!?;:’']*)$/);return m&&m[1]?`*${m[1]}*${m[2]}`:w;}).join(\" \")).split(/\\s+/).filter(Boolean).map(t=>{const m=t.match(/^\\*(.+?)\\*([.,!?;:’']*)$/);return m?{t:m[1],tail:m[2],acc:true}:{t:t.replace(/\\*/g,\"\"),tail:\"\",acc:false};});const plainOf=s=>String(s||\"\").replace(/\\*/g,\"\").replace(/\\s*\\|\\s*/g,\" \").replace(/\\s+/g,\" \").trim();// Head — the section headline (Inter Tight 600, -.04em): its words rise out of masks. \"|\" forces a line break, *stars* around a phrase = LIME WORDS (color var(--rb-brass) on dark, --rb-acc on the paper band; no plate — the same mark as the hero headline «running *itself.*»).\nconst Head=({text,on,D,tag=\"h2\",size=\"clamp(40px,4.3vw,64px)\",lh=1.04,delay=0,step=55,style,className})=>{const Tag=tag;let k=0;if(!String(text||\"\").trim())return null;return /*#__PURE__*/_jsx(Tag,{className:`rb-hd${on?\" is-on\":\"\"}${tag===\"h1\"?\" is-ssr\":\"\"}${className?\" \"+className:\"\"}`,\"aria-label\":plainOf(text),style:{...HD(D),fontSize:size,lineHeight:lh,...style||{}},children:String(text).split(\"|\").map((line,li)=>/*#__PURE__*/_jsx(\"span\",{className:\"rb-hd-l\",\"aria-hidden\":true,children:splitWords(line).map((w,i)=>{const d=delay+k++*step;return /*#__PURE__*/_jsxs(\"span\",{className:`rb-hd-w${w.acc?\" is-accw\":\"\"}`,children:[/*#__PURE__*/_jsx(\"span\",{className:`rb-hd-i${w.acc?\" is-acc\":\"\"}`,style:{transitionDelay:`${d}ms`,[\"--pd\"]:`${d+500}ms`,[\"--dl\"]:`${d}ms`},children:w.acc?/*#__PURE__*/_jsxs(\"span\",{className:\"rb-it\",children:[w.t,w.tail,/*#__PURE__*/_jsx(\"svg\",{className:\"rb-spark\",viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5C12.9 8 16 11.1 22.5 12 16 12.9 12.9 16 12 22.5 11.1 16 8 12.9 1.5 12 8 11.1 11.1 8 12 1.5Z\"})})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[w.t,w.tail]})}),\" \"]},i);})},li))});};const Eyebrow=({text,on,M,delay=0,style})=>text&&String(text).trim()?/*#__PURE__*/_jsxs(\"p\",{className:`rb-eb${on?\" is-on\":\"\"}`,style:{...M,transitionDelay:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"i\",{className:\"rb-lit-dot\",\"aria-hidden\":true}),text]}):null;// COME TO LIGHT — a photo box that enters under a dark grade and clears when `on` (or an ancestor .is-on), on hover and on keyboard focus of a wrapping link. Children (caption plates) sit above the grade.\nconst Lit=({src,alt=\"\",on,ratio=\"4/5\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",focus=\"50% 50%\",delay=0,hold=false,eager=false,className,style,children})=>{const im=RS(src,sizes);return /*#__PURE__*/_jsxs(\"span\",{className:`rb-dusk${on?\" is-on\":\"\"}${hold?\" is-hold\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,[\"--dd\"]:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus}}),children]});};// count-up for a stat (\"2,140\", \"91¢\", \"$184,200\", \"38\"): keeps prefix, suffix and thousands commas; SSR and reduced motion show the final value.\nfunction useCount(target,on,rm,ms=1400){const m=String(target||\"\").match(/^([^\\d-]*)(-?[\\d,]*\\.?\\d+)(.*)$/);const[v,setV]=useState(1);useEffect(()=>{if(!m||rm||!on){setV(1);return;}let raf=0,t0=0;setV(0);const step=t=>{if(!t0)t0=t;const k=clamp01((t-t0)/ms);setV(1-Math.pow(1-k,3));if(k<1)raf=requestAnimationFrame(step);};raf=requestAnimationFrame(step);return()=>cancelAnimationFrame(raf);},[on,rm,target]);if(!m)return String(target||\"\");const num=parseFloat(m[2].replace(/,/g,\"\"));const dec=(m[2].split(\".\")[1]||\"\").length;const cur=num*v;const txt=dec?cur.toFixed(dec):String(Math.round(cur));const withC=/,/.test(m[2])?txt.replace(/\\B(?=(\\d{3})+(?!\\d))/g,\",\"):txt;return m[1]+withC+m[3];}// one-shot rise for copy / rows\nconst rise=(on,d=0,y=22)=>({opacity:on?1:0,translate:on?\"0 0\":`0 ${y}px`,transition:`opacity .9s ease ${d}ms, translate 1s cubic-bezier(.2,.8,.2,1) ${d}ms`});// Image that UNMASKS through a shape as it enters, settles from a zoom, then drifts with scroll (needs --sp on an ancestor).\nconst SHAPES={up:[\"inset(100% 0 0 0)\",\"inset(0 0 0 0)\"],down:[\"inset(0 0 100% 0)\",\"inset(0 0 0 0)\"],left:[\"inset(0 100% 0 0)\",\"inset(0 0 0 0)\"],right:[\"inset(0 0 0 100%)\",\"inset(0 0 0 0)\"],diag:[\"polygon(0 100%,0 100%,0 100%,0 100%)\",\"polygon(0 -160%,260% 100%,0 100%,0 100%)\"],iris:[\"circle(0% at 50% 55%)\",\"circle(85% at 50% 55%)\"],slit:[\"inset(0 50% 0 50%)\",\"inset(0 0 0 0)\"]};const Um=({src,alt=\"\",on,shape=\"up\",ratio=\"4/5\",delay=0,par=1,focus=\"50% 40%\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",style,className,eager=false})=>{const sh=SHAPES[shape]||SHAPES.up;const im=RS(src,sizes);return /*#__PURE__*/_jsx(\"div\",{className:`rb-um${on?\" is-on\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,clipPath:on?sh[1]:sh[0],WebkitClipPath:on?sh[1]:sh[0],transitionDelay:`${delay}ms`,[\"--par\"]:par,...style||{}},children:/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus,transitionDelay:`${delay}ms`}})});};const CSS_MOTION=`\n.mw[data-kb] *,.mw[data-kb] *::before,.mw[data-kb] *::after,.mw [data-kb],.mw [data-kb] *,.mw [data-kb] *::before,.mw [data-kb] *::after{transition:none!important}\n.rb-sec{position:relative;z-index:10;display:block;width:100%;--sp:.5;--pp:0}\n.rb-rev{position:relative;width:100%;--rv:1} .rb-rev-in{position:relative} .rb-rev-sp{height:0}\n.rb-rev.is-act{--rv:0;--t:min(var(--h),100vh);--t:min(var(--h),100svh);z-index:var(--layer,9);margin-top:calc(var(--t)*-1)}\n.rb-rev.is-act>.rb-rev-in{position:sticky;top:calc(100vh - var(--t));top:calc(100svh - var(--t))} .rb-rev.is-act>.rb-rev-sp{height:var(--t)}\n/* the lifting edge throws a shadow on the section beneath, and that section comes out of the dark as it is uncovered */\n.rb-rev.is-act>.rb-rev-in::before{content:\"\";position:absolute;z-index:40;left:0;right:0;top:0;height:120px;translate:0 calc((1 - var(--rv))*var(--t));background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0));opacity:min(1,calc(var(--rv)*(1 - var(--rv))*9));pointer-events:none}\n.rb-rev.is-act>.rb-rev-in::after{content:\"\";position:absolute;z-index:39;left:0;right:0;top:0;height:var(--t);background:#000;opacity:calc((1 - var(--rv))*.16);pointer-events:none}\n.rb-wrap{--pad:56px;width:100%;max-width:calc(${MAXW} + var(--pad)*2);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}\n.rb-eb{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;margin:0;padding:0;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;color:var(--rb-acc);opacity:0;translate:0 10px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.8,.2,1)} .rb-eb.is-on{opacity:1;translate:0 0}\n.rb-eb i{order:-1;margin-right:2px}\n.mw .rb-eb{color:var(--rb-ink)} .mw.rb-dark .rb-eb,.mw .rb-dk .rb-eb{color:var(--rb-cloud)} .mw.rb-dark .rb-lt .rb-eb,.mw .rb-dk .rb-lt .rb-eb{color:var(--rb-ink)}\n.rb-band .rb-eb{padding:6px 14px 6px 12px;border-radius:999px;background:var(--rb-ink);color:var(--rb-bone)} .rb-band .rb-eb .rb-lit-dot{background:var(--rb-brass)} .rb-band .rb-eb .rb-lit-dot::after{background:radial-gradient(circle,color-mix(in srgb,var(--rb-brass) 70%,transparent),transparent 70%)} .rb-band .rb-lt .rb-eb{padding:0;background:none;color:var(--rb-acc)}\n.rb-hd{margin:0;letter-spacing:-.02em;text-wrap:balance} .rb-hd-l{display:block}\n.rb-hd-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .04em .2em;margin:-.06em -.04em -.2em;white-space:pre} .rb-hd-w.is-accw{padding-left:.07em;padding-right:.1em;margin-left:-.07em;margin-right:-.1em}\n.rb-hd-i{position:relative;display:inline-block;translate:0 108%;transition:translate 1.05s cubic-bezier(.2,.85,.15,1)}\n.rb-hd.is-on .rb-hd-i{translate:0 0}\n/* page h1: rises by CSS from the server HTML (no wait for hydration); paused only while a loader / transition cover holds the page */\n@keyframes rb-hd-rise{from{translate:0 108%}to{translate:0 0}}\n.rb-hd.is-ssr .rb-hd-i{animation:rb-hd-rise .8s cubic-bezier(.2,.85,.15,1) var(--dl,0ms) both}\nhtml[class*=\"rb-hold\"] .rb-hd.is-ssr .rb-hd-i{animation-play-state:paused}\n.rb-hd-w.is-accw{overflow:hidden}\n/* the starred words: LIME TEXT, no plate (a body may re-colour them with --rb-capfg) */\n.rb-it{position:relative;display:inline-block;font-style:normal;padding:0;margin:0;border-radius:0;background:none;color:var(--rb-capfg,var(--rb-acc))}\n.mw.rb-dark .rb-it,.mw .rb-dk .rb-it{color:var(--rb-capfg,var(--rb-brass))} .mw.rb-dark .rb-lt .rb-it,.mw .rb-dk .rb-lt .rb-it{color:var(--rb-capfg,var(--rb-acc))}\n.rb-spark{display:none}\n\n.rb-um{position:relative;overflow:hidden;transition:clip-path 1.35s cubic-bezier(.7,0,.2,1);background:var(--rb-bone2)} .mw.rb-dark .rb-um,.mw .rb-dk .rb-um{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))}\n.rb-um img{position:absolute;left:0;top:-9%;width:100%;height:118%;display:block;object-fit:cover;scale:1.04;translate:0 calc((var(--sp,.5) - .5)*var(--par,1)*-7%);transition:scale 1.9s cubic-bezier(.16,.84,.24,1);user-select:none}\n.rb-um.is-on img{scale:1}\n/* diagonal cuts: the section hangs over its neighbour and is cut on a slope (clip-path, so the neighbour shows through) */\n.rb-cut-t{margin-top:calc(var(--cut,7vw)*-1);clip-path:polygon(0 var(--cut,7vw),100% 0,100% 100%,0 100%);padding-top:var(--cut,7vw)}\n.rb-cut-b{margin-bottom:calc(var(--cut,7vw)*-1);padding-bottom:var(--cut,7vw)}\n.rb-cut-t.rb-cut-b{clip-path:polygon(0 var(--cut,7vw),100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n.rb-cut-b:not(.rb-cut-t){clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n@media (max-width:1099px){.rb-wrap{--pad:40px}}\n@media (max-width:699px){.rb-wrap{--pad:20px}}\n@media (prefers-reduced-motion:reduce){.rb-hd-i{translate:0 0!important} .rb-hd.is-ssr .rb-hd-i{animation:none!important} .rb-spark{scale:1!important;rotate:0deg!important;animation:none!important} .rb-um{clip-path:none!important} .rb-um img{scale:1!important;translate:0 0!important}}\n`;const SEED={site:[{\"slug\":\"site\",\"f1\":\"Runbook\",\"f2\":\"Business automation agency\",\"f3\":\"We wire your CRM, invoicing, onboarding and support into workflows that run while the office sleeps.\",\"f4\":\"hello@runbook.agency\",\"f5\":\"/book\",\"f6\":\"/results\",\"f7\":\"Business automation agency \\xb7 Since 2019\",\"f8\":\"1,284 tasks ran for our clients last night\",\"f9\":\"/workflows\",\"img\":\"https://framerusercontent.com/images/kltvaH90N1EBZgMRovsYhy45bk0.webp\",\"f10\":\"An open-plan office at dusk, screens still lit\"}]};const SW_BUILD=\"RbFooter@cms1\";// An override control wins only when it holds real text; empty (or a single space) inherits from the CMS.\nconst pick=(o,fb)=>o!==undefined&&o!==null&&String(o).trim()?String(o).trim():fb;const imgOf=(r,k=\"img\")=>String(r&&r[k]||\"\").split(\"?\")[0];// A cleared CMS image draws this quiet placeholder — never a stock photo, and list positions stay aligned with their rows.\nconst EMPTY_IMG=\"data:image/svg+xml;utf8,\"+encodeURIComponent(\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 500' preserveAspectRatio='xMidYMid slice'><rect width='400' height='500' fill='#DDDFD9'/><rect x='120' y='170' width='160' height='160' rx='3' fill='none' stroke='#8A8E90' stroke-width='1.5'/><rect x='100' y='150' width='200' height='200' rx='4' fill='none' stroke='#B9BCB6' stroke-width='1' stroke-dasharray='2 6'/></svg>\");const imgOr=(r,k=\"img\")=>imgOf(r,k)||EMPTY_IMG;const cmsNum=(r,k,fb=0)=>{const v=parseFloat(String((r&&r[k])??\"\"));return isFinite(v)?v:fb;};const useIso=typeof window===\"undefined\"?useEffect:useLayoutEffect;function readCMS(kind){if(typeof document===\"undefined\")return null;if(!document.querySelector('[data-rb-row=\"bridge\"]'))return null;const seen=new Set;const out=[];document.querySelectorAll(`[data-rb-row=\"${kind}\"]`).forEach(el=>{const o={};for(const a of Array.from(el.attributes))if(a.name.startsWith(\"data-\"))o[a.name.slice(5)]=a.value;const key=o.slug||JSON.stringify(o);if(seen.has(key))return;seen.add(key);out.push(o);});return out.sort((a,b)=>(parseFloat(a.n1)||0)-(parseFloat(b.n1)||0));}function useCMS(kind,fallback){const[rows,setRows]=useState(fallback);const sig=useRef(\"\");useIso(()=>{let n=0,t=0,ok=0;try{const w=window;if(!w.__ltCms||typeof w.__ltCms!==\"object\")w.__ltCms={};w.__ltCms[SW_BUILD]=1;}catch(e){}const pull=()=>{const r=readCMS(kind);if(!r)return false;const s=JSON.stringify(r);if(s!==sig.current){sig.current=s;setRows(r);}return true;};const mo=new MutationObserver(()=>{if(pull()){ok++;if(ok>2)mo.disconnect();}});mo.observe(document.body,{childList:true,subtree:true});if(pull())ok++;const poll=()=>{if(n++<30){pull();t=window.setTimeout(poll,150);}};t=window.setTimeout(poll,150);return()=>{mo.disconnect();window.clearTimeout(t);};},[kind]);return rows;}// Row counts in headings: {workflows} {industries} {results} {tools} {posts} {reviews} {faq} = the live number of rows as digits (the kinds work too: {services} = Workflows, {cases} = Results, {machines} = Tools); a capital first letter ({Services}) = the number as a word (One … Twelve, digits above that). Server render = the shipped counts. A component may add its own list ({Steps}, {Pins}, {Values}).\nconst CMS_COUNT_FB={\"services\":5,\"industries\":6,\"cases\":6,\"machines\":6,\"reviews\":5,\"posts\":6,\"faq\":8};const CMS_NWORDS=\"Zero;One;Two;Three;Four;Five;Six;Seven;Eight;Nine;Ten;Eleven;Twelve\";function useCounts(extra){const[c,setC]=useState(CMS_COUNT_FB);const sig=useRef(\"\");useIso(()=>{let n=0,t=0;const pull=()=>{const o={};let any=false;for(const k of Object.keys(CMS_COUNT_FB)){const r=readCMS(k);if(r){o[k]=r.length;any=true;}else o[k]=CMS_COUNT_FB[k];}if(!any)return;const s=JSON.stringify(o);if(s!==sig.current){sig.current=s;setC(o);}};pull();const poll=()=>{if(n++<12){pull();t=window.setTimeout(poll,250);}};t=window.setTimeout(poll,250);return()=>window.clearTimeout(t);},[]);return extra?{...c,...extra}:c;}const CMS_ALIAS={workflows:\"services\",results:\"cases\",tools:\"machines\"};const countText=(s,c,words=CMS_NWORDS)=>{const W=String(words||CMS_NWORDS).split(\";\").map(x=>x.trim());return String(s==null?\"\":s).replace(/\\{([A-Za-z]+)\\}/g,(m,k)=>{const lk=String(k).toLowerCase();const n=c[lk]??c[CMS_ALIAS[lk]];if(typeof n!==\"number\")return m;const cap=k[0]!==k[0].toLowerCase();return cap&&W[n]?W[n]:String(n);});};// The one-row Site collection holds every site-wide fact. A section's \"… Override\" control only replaces it on that one section.\n// Site: f1 Name (Runbook) · f2 Descriptor · f3 Tagline · f4 Email · f5 Book Link (/book) · f6 Work Link (/results) · f7 Eyebrow · f8 Proof Line · f9 Services Link (/workflows) · img Picture (the hero office photograph H1, also social / about) · f10 Picture Alt\nfunction useSite(){const r=useCMS(\"site\",SEED.site||[]);const s=r[0]||(SEED.site||[])[0]||{};const g=k=>String(s[k]??\"\").trim();const im=k=>String(s[k]||\"\").split(\"?\")[0];return{name:g(\"f1\"),descriptor:g(\"f2\"),tagline:g(\"f3\"),email:g(\"f4\"),book:g(\"f5\")||\"/quote\",work:g(\"f6\")||\"/projects\",eyebrow:g(\"f7\"),proof:g(\"f8\"),services:g(\"f9\")||\"/capabilities\",picture:im(\"img\"),pictureAlt:g(\"f10\")};}// ---- Row readers (slots are fixed: see seed.py). Every reader takes an undefined row and returns empty strings, never throws.\nconst S_=(r,k)=>String(r&&r[k]||\"\").trim();const numOf=(v,fb=0)=>{const n=parseFloat(String(v??\"\").replace(/[^\\d.-]/g,\"\"));return isFinite(n)?n:fb;};const listOf=s=>String(s||\"\").split(\";\").map(x=>x.trim()).filter(Boolean);const linkList=s=>String(s||\"\").split(\",\").map(x=>x.trim()).filter(Boolean).map(x=>{const i=x.indexOf(\":\");return{l:i<0?x:x.slice(0,i).trim(),h:i<0?\"/\":x.slice(i+1).trim()};});const bySlug=(rows,slug)=>{const k=String(slug||\"\").trim();return k?rows.find(r=>r.slug===k):undefined;};// Workflows (kind \"services\"): f1 Name · f2 Line · f3 Body · f4 Tools it runs on (a; b; c → items[]) · f5 Event line («Invoice #4821 sent», the hero pin) · f6 Clock («02:14», the pin's mono time) · img Picture · n1 Order → /workflows/:slug\n// spec = EVENT (f5), lead = CLOCK (f6); question / price are the same two slots under their old names (the hero reads those).\nconst serviceOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),body:S_(r,\"f3\"),items:listOf(S_(r,\"f4\")),spec:S_(r,\"f5\"),lead:S_(r,\"f6\"),question:S_(r,\"f5\"),price:S_(r,\"f6\"),img:imgOr(r)});// Industries: f1 Name (Clinics, Agencies, E-commerce, Logistics, Legal, Real estate) · f2 Line · f3 Typical workflows (a, b, c → parts) · f4 Share of our clients (e.g. 24 %) · img Picture · n1 Order → /industries\nconst industryOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),parts:S_(r,\"f3\"),share:S_(r,\"f4\"),img:imgOr(r)});// Tools (kind \"machines\"): f1 Name = the tool CATEGORY we connect (CRM, Invoicing, Inbox, Helpdesk, Docs, Reporting) · f2 Category group (Sales / Finance / Comms / Support / Data = the filter chip → type) · f3 Line · f4 Connects to (product names a, b, c → envelope) · f5 Used in n workflows (→ tolerance) · f6 Since 2021 (→ count) · img Picture · n1 Order → /tools\nconst machineOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),type:S_(r,\"f2\"),line:S_(r,\"f3\"),envelope:S_(r,\"f4\"),tolerance:S_(r,\"f5\"),count:S_(r,\"f6\"),img:imgOr(r)});// Results (kind \"cases\"): f1 Client · f2 Sector (an Industries name) · f3 Workflow (a Workflows name → service) · f4 Number (−62 %) · f5 Unit (missed appointments, on the lime pill) · f6 Line · f7 Body · img Picture · f8 Year · n1 Order → /results/:slug\nconst caseOf=r=>({slug:S_(r,\"slug\"),client:S_(r,\"f1\"),sector:S_(r,\"f2\"),service:S_(r,\"f3\"),number:S_(r,\"f4\"),unit:S_(r,\"f5\"),line:S_(r,\"f6\"),body:S_(r,\"f7\"),img:imgOr(r),year:S_(r,\"f8\")});// Reviews: f1 Quote · f2 Person · f3 Role · f4 Company · img Picture · n1 Order\nconst reviewOf=r=>({slug:S_(r,\"slug\"),quote:S_(r,\"f1\"),person:S_(r,\"f2\"),role:S_(r,\"f3\"),company:S_(r,\"f4\"),img:imgOr(r)});// Posts: f1 Title · f2 Kind (Guide / Insight / Report) · f3 Line · f4 Body (mini markdown, see Md) · img Picture · f5 Date · f6 Read · n1 Order → /insights/:slug\nconst postOf=r=>({slug:S_(r,\"slug\"),title:S_(r,\"f1\"),kind:S_(r,\"f2\"),line:S_(r,\"f3\"),body:S_(r,\"f4\"),img:imgOr(r),date:S_(r,\"f5\"),read:S_(r,\"f6\")});// Faq: f1 Question · f2 Answer · n1 Order\nconst faqOf=r=>({slug:S_(r,\"slug\"),q:S_(r,\"f1\"),a:S_(r,\"f2\")});// ---- A seeded generator (mulberry32) so the server and the first client render draw the SAME shape.\nconst mulberry=a=>()=>{a|=0;a=a+1831565813|0;let t=Math.imul(a^a>>>15,1|a);t=t+Math.imul(t^t>>>7,61|t)^t;return((t^t>>>14)>>>0)/4294967296;};// The row a CMS detail page is about: the bound Slug control wins (server render included), else the last URL segment, else the first row.\nfunction useRow(kind,fallback,slug){const rows=useCMS(kind,fallback);const[path,setPath]=useState(\"\");useEffect(()=>{try{setPath(decodeURIComponent(window.location.pathname.split(\"/\").filter(Boolean).pop()||\"\"));}catch(e){}},[]);const want=String(slug||\"\").trim()||path;const row=rows.find(r=>r.slug===want)||rows[0]||{};return{row,rows};}// ===== RbFooter =====\n// RbFooter (Runbook) — the night footer. Top: a closing line (lime starred words) with the book pill, then the link columns (two control lists: Agency = Workflows · Industries ·\n// Results · Tools · Process, Company = About · Insights · Contact) and a contact column: the Site Email as mailto:, an optional address line, socials as text.\n// Stage: the big Inter Tight wordmark with the lime round dot (the Site Name), beside one photograph with the LOCAL-TIME pin on it (KitLocalTime mechanics, carried here:\n// city · a live HH:MM clock in the agency's time zone · «3 workflows running», a lime dot pulsing while the clock runs; the clock updates every 10 s, never off-screen).\n// Hover or focus the wordmark and a lime plate wipes across it (two counter-moving transforms, no clip-path animation) and the name turns ink. Base: © year + name, legal links\n// (Privacy · Terms · Cookies), a closing mono line. The wordmark is a link home, not a heading.\n// `.is-bar` (the Bottom bar room control, or set by itself while an element with id sf-demo-bar exists) adds room so the legal links stay clear of the fixed demo bar.\n// KitCurtain (copied core, re-tokened, unchanged from the proven version): the footer waits pinned to the bottom of the screen BEHIND the page and the section above lifts off\n// it. Pure CSS for the pin: the outer wrapper keeps the footer's measured height in the flow (page length unchanged) and carries clip-path:inset(0), which clips its\n// position:fixed child without becoming its containing block. A soft shade lies on the footer until it is uncovered and the footer drifts up into place (one CSS variable,\n// written on the shared rAF only while the wrapper is near the screen; opacity + translate only). At the end of the page the fixed footer and its wrapper coincide.\n// Two fits: when the WHOLE footer is no taller than the screen, the whole footer is the pinned layer. When it is taller (most laptops), only its lower part — the wordmark\n// stage and the legal row — is pinned and the footer's own link block lifts off it, so nothing is ever out of reach.\n// A normal static footer: on phones, with reduced motion, on the canvas, with Curtain off, and whenever even the lower part is taller than the screen.\n// Keyboard: focusing a footer link scrolls the page to its end, so a focused link is never behind the page.\nconst MEDIA={ST1:\"https://framerusercontent.com/images/WdrqpkqkdQydKHAttqUUyrCLsXw.webp\",ST2:\"https://framerusercontent.com/images/Nu1GACeUIbAimzLP1tMyRd8ya3I.webp\",ST3:\"https://framerusercontent.com/images/6rQWcxhqtvAWbafIwZ4oqMm7FSU.webp\",ST4:\"https://framerusercontent.com/images/YlBb9K0a6Nm6mnXq1PphZhDqP4w.webp\",ST5:\"https://framerusercontent.com/images/N78TBGG1jHuLBqMnVorIQo188.webp\",HS1:\"https://framerusercontent.com/images/fJ72jHS6r0IekBil7gGblqJE.webp\",HS2:\"https://framerusercontent.com/images/w3rBfPOnAp9z18Tx9QhYT4sJM.webp\",HS3:\"https://framerusercontent.com/images/b0DS4enPAccIRWkCrRO2oZFhiY.webp\",HS4:\"https://framerusercontent.com/images/N2W1CeTkygOyJudluhA0HpglM.webp\",HS5:\"https://framerusercontent.com/images/ryrU7uOd1Wm2otAVNI2qJeHZC0Q.webp\",PF1:\"https://framerusercontent.com/images/ycGdT58vzuZkZf1qTQY9cYoIhc.webp\",PR1:\"https://framerusercontent.com/images/YIExqfW95lYL06qfHJsvAQYxR3Q.webp\",PR2:\"https://framerusercontent.com/images/gL8YwCzYwSCuF5xVfVZTkj0hqjk.webp\",PR3:\"https://framerusercontent.com/images/wpafQXWdQJCRrKXIWCks9bdMc.webp\",PR4:\"https://framerusercontent.com/images/XwXhHNBcyj1p6pAUtOL4YPr50s.webp\",PR5:\"https://framerusercontent.com/images/mDldpEEr36RAiQQ7KZnIDf7wCEA.webp\",QL1:\"https://framerusercontent.com/images/D5vywc1iZWqwCmhbjYFnlcV21C0.webp\",QT1:\"https://framerusercontent.com/images/JJflO5xu8NJQVvkkGaBKMUeQLq0.webp\",FQ1:\"https://framerusercontent.com/images/ew4caIZBC0hfSFxdD0ucoPuk3RQ.webp\",IN1:\"https://framerusercontent.com/images/Ipd1OdZy3UujHmso0gjVGcE40NU.webp\",IN2:\"https://framerusercontent.com/images/ktwtu0dpZXUMs31t1enDMcWFU.webp\",IN3:\"https://framerusercontent.com/images/aoErHlFYiUnyzKB686oyX5rUGs.webp\",IN4:\"https://framerusercontent.com/images/TaIDKHX8ISJEURlV9Zgmj2zSCc0.webp\",IN5:\"https://framerusercontent.com/images/onXQ0otj7R1BKYT65U3Jv3ZQlQw.webp\",IN6:\"https://framerusercontent.com/images/jnLeHUDtRqkA2Do7bR7Pdpbvt0.webp\",CS1:\"https://framerusercontent.com/images/ebfSzi5tFdorm6qYvjV7Cn6TwU.webp\",CS2:\"https://framerusercontent.com/images/4iGWBEdWkI8zuDBId0adCzFVOY.webp\",CS3:\"https://framerusercontent.com/images/gaZLHpiGYkHEWNSOiCCfsBw9XI.webp\",CS4:\"https://framerusercontent.com/images/dSJ3F1xH9tuv4rm3IJDkSnFdUro.webp\",CS5:\"https://framerusercontent.com/images/dg14zEcSyKlDPoirlhlJdGgNhMo.webp\",CS6:\"https://framerusercontent.com/images/BHTk3cgMWMfEYA7RYXnRk2xkI.webp\",MC1:\"https://framerusercontent.com/images/1shXhBLYOQkE0JlArKw27nqHD8.webp\",MC2:\"https://framerusercontent.com/images/fJ72jHS6r0IekBil7gGblqJE.webp\",MC3:\"https://framerusercontent.com/images/BRNEtwQvMAaieUXexQJ3MrM6E4.webp\",MC4:\"https://framerusercontent.com/images/1wbwzRq2lv1EvCkh9FlqPnM2N4I.webp\",MC5:\"https://framerusercontent.com/images/PqR2qlx3Q1giPYnfVP3QtJU1JU.webp\",MC6:\"https://framerusercontent.com/images/5yRqVRDKXyVaooFDqNo6vSyI.webp\",RV1:\"https://framerusercontent.com/images/gtCsnjITh4FJZxvR6mJl8ITbA.webp\",RV2:\"https://framerusercontent.com/images/rYF6VrXEAAW6zGsmEsPDhvtAY.webp\",RV3:\"https://framerusercontent.com/images/py9KhPBZwCXd1QM59jPco86fIk.webp\",RV4:\"https://framerusercontent.com/images/AN3J79LdNmBN2sL5osuX3cTIPw.webp\",RV5:\"https://framerusercontent.com/images/tbKfoU4sf8kUohplyzin5oZI8.webp\",PO1:\"https://framerusercontent.com/images/cYs8F5LBZmepNfUf2snm7RACtw.webp\",PO2:\"https://framerusercontent.com/images/Jxu37NxDNOIaWeaS5R0LXCHC4BI.webp\",PO3:\"https://framerusercontent.com/images/AxCkb9fHLjrXXGlXS7BA23JaGc.webp\",PO4:\"https://framerusercontent.com/images/m9emPuCxxggvbxwlNI25zVMWXFo.webp\",PO5:\"https://framerusercontent.com/images/BMzg4wiZMd9yOBMKASZyugRzXzw.webp\",PO6:\"https://framerusercontent.com/images/LiCBiNwb5jmxHXAO7e8ytqOuhG0.webp\",AX1:\"https://framerusercontent.com/images/QLLHtGo1YLStp9b7IzuycUikueU.webp\",AX2:\"https://framerusercontent.com/images/prDaqrl5ObIZGMbIE0DCSWAT7Dw.webp\",CS4_old:\"https://framerusercontent.com/images/8AevWoTdzGy2ST0NagDiUEr6Gaw.webp\",CS5_old:\"https://framerusercontent.com/images/6WmAaZrDYBXZ2Hp2jrCgj9b4Gs.webp\",PO1_old:\"https://framerusercontent.com/images/gYWwbqY1wNkZAKmBJlMMjxfXgc.webp\",PO6_old:\"https://framerusercontent.com/images/a2kMC2ju3jWGPwgWb270Nzo1J84.webp\",PR3_old:\"https://framerusercontent.com/images/IiWye5YtqY3ywg7a0Kp7Gu0SKc.webp\",AX1_old:\"https://framerusercontent.com/images/xyqFhKOmjWuzRddj9cgB5pYg1Y.webp\",AX2_old:\"https://framerusercontent.com/images/p8iV29jEso3b2VT22J8YNhQ2Y.webp\",CS6_old:\"https://framerusercontent.com/images/bVZNL7CGWtYtru36NQpEchijnaE.webp\",HS1_old:\"https://framerusercontent.com/images/DHEgqkIOsDkBgplGHXDZ4ensFh8.webp\",HS2_old:\"https://framerusercontent.com/images/zwOHonicbOUgdjeFsTWVNRcAjM.webp\",HS3_old:\"https://framerusercontent.com/images/qIo99yt6lnZ8zv5E9NDYBd2kXRo.webp\",HS4_old:\"https://framerusercontent.com/images/8mMPMwzKbyAj2lhSFflnyKOeL1s.webp\",HS5_old:\"https://framerusercontent.com/images/iqJlCbohiDpN8sYGDGHZwhoY4.webp\",IN1_old:\"https://framerusercontent.com/images/6gHIK9gRCezzqCgiixkaLIYU0.webp\",IN2_old:\"https://framerusercontent.com/images/V8rbeLIoPWDtYA8Ywy5j33Tc9w0.webp\",IN4_old:\"https://framerusercontent.com/images/GXbiHpup7QF7F3AU6a2r6uyWAs8.webp\",IN5_old:\"https://framerusercontent.com/images/28OUwhu715htRS8FR26dS6587E.webp\",MC3_old:\"https://framerusercontent.com/images/kT6V2NaTvPWbX8uFnjnYI0Q41JE.webp\",MC4_old:\"https://framerusercontent.com/images/NeaaNKaAU4FedfbcgdHan8EP1SM.webp\",MC5_old:\"https://framerusercontent.com/images/HYrfdQqRz57pzJj4sizR5Jxwvew.webp\",PO3_old:\"https://framerusercontent.com/images/EKnhGzqfi3ndVcKReGdyjaCCQ.webp\",PR1_old:\"https://framerusercontent.com/images/xTgbFsmvvwoUvny1IV7gzDVYCpc.webp\",PR2_old:\"https://framerusercontent.com/images/eZOdOaiLvdDUjXy3me09V8Q6tqY.webp\",PR5_old:\"https://framerusercontent.com/images/GUdaUHS9I6Smz3Gif9pNKxWY33g.webp\",QL1_old:\"https://framerusercontent.com/images/GwqAhoE7toP1pStnufTO5uKcewo.webp\",TM1:\"https://framerusercontent.com/images/7HOQi8O1UhCN7nA4Enh6UBATwo.webp\",TM2:\"https://framerusercontent.com/images/k3l37JDDWHe7QbkXL5Sil2T2HOQ.webp\",TM3:\"https://framerusercontent.com/images/3QkTVZa9UQt4hQdhxnEIPMoA.webp\",TM4:\"https://framerusercontent.com/images/mTkl5k9JPVOgAxwY4UaxWZYUDM.webp\",TM5:\"https://framerusercontent.com/images/vxmdrHya3zbxZjPp0hWRTIwjg4.webp\",MC1_old:\"https://framerusercontent.com/images/9yGk1Smfg8n0KI5vsGTt3CTmUOs.webp\",IN3_old:\"https://framerusercontent.com/images/8e5zWrge9YPMDLG3PVrjoVsOVHQ.webp\",IN6_old:\"https://framerusercontent.com/images/TOftSMSuNEwaVwZK9HfCIotenjM.webp\",CS2_old:\"https://framerusercontent.com/images/wa9wysMYEMY85FWnqZpHF0NR0.webp\",CS3_old:\"https://framerusercontent.com/images/jAKzHzE4miUSfOwLLCPDLZq9P6Q.webp\",MC2_old:\"https://framerusercontent.com/images/DrIR4wYvSocs6k5kUaWxAh91MjQ.webp\",MC6_old:\"https://framerusercontent.com/images/8e5zWrge9YPMDLG3PVrjoVsOVHQ.webp\",PO2_old:\"https://framerusercontent.com/images/hD5wZsOVhNEE55I84IfTXcYBw8.webp\",PO4_old:\"https://framerusercontent.com/images/1hXOp975S6wxm2WcDKfp7ZHUtk.webp\",PO5_old:\"https://framerusercontent.com/images/chGS2DgAu8QaqFYQC2yrvuVI.webp\",PR4_old:\"https://framerusercontent.com/images/NeaaNKaAU4FedfbcgdHan8EP1SM.webp\",H1:\"https://framerusercontent.com/images/kltvaH90N1EBZgMRovsYhy45bk0.webp\",TL1:\"https://framerusercontent.com/images/1RRozVJo6j9BUUQiWVOOruiGIKg.webp\",BK1:\"https://framerusercontent.com/images/o9ITAJgXIoSkR7WSBLyUKwhA1PI.webp\",RV4_old:\"https://framerusercontent.com/images/XT5N6Bk5PQbTuoHws65uS9MpCY.webp\",TL1_old:\"https://framerusercontent.com/images/IYgkiyg2RVjKZVS6HibuALDrkvw.webp\",WF1:\"https://framerusercontent.com/images/pt55hjmji8LIjNGhQZtIvdoJdI.webp\",WF2:\"https://framerusercontent.com/images/WuDZGegUoTc2fQRZKz75LuQHKw.webp\",WF3:\"https://framerusercontent.com/images/HeKgtQJLUH23dS8vPa7TY3fGvjM.webp\",WF4:\"https://framerusercontent.com/images/LxpPJti5vuqwnKxo3nXTj9scvM.webp\",WF5:\"https://framerusercontent.com/images/unJzb8Yad2e1lOvu0QXxo4v80ik.webp\",PW1:\"https://framerusercontent.com/images/xTgbFsmvvwoUvny1IV7gzDVYCpc.webp\",PW2:\"https://framerusercontent.com/images/eZOdOaiLvdDUjXy3me09V8Q6tqY.webp\",PW3:\"https://framerusercontent.com/images/IiWye5YtqY3ywg7a0Kp7Gu0SKc.webp\"};const rbftPct=(v,fb)=>{const n=Number(v);return isFinite(n)?Math.max(0,Math.min(100,n)):fb;};// the wordmark's width in em BEFORE it can be measured (server render, first paint): per-letter estimate for Inter Tight 600, so the footer keeps its height when the measured value arrives\nconst rbftEm=name=>.8+Array.from(String(name||\"\")).reduce((t,ch)=>t+(/[MW]/.test(ch)?.82:/[mw]/.test(ch)?.78:/[iljI.,:;'!| ]/.test(ch)?.22:/[rtf1]/.test(ch)?.33:/[A-Z]/.test(ch)?.62:.52),0);// ---- KitLocalTime: HH:MM in a time zone, refreshed every 10 s while live; \"--:--\" on the server and the canvas\nfunction useRbftClock(live,tz){const[t,setT]=useState(\"\");useEffect(()=>{if(!live)return;let id=0;const tick=()=>{try{setT(new Intl.DateTimeFormat(\"en-GB\",{timeZone:tz||undefined,hour:\"2-digit\",minute:\"2-digit\",hour12:false}).format(new Date));}catch(e){try{setT(new Intl.DateTimeFormat(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\",hour12:false}).format(new Date));}catch(x){}}};tick();id=window.setInterval(()=>{if(!document.hidden)tick();},1e4);return()=>window.clearInterval(id);},[live,tz]);return t;}export default function RbFooter(props){const{line=\"Your business,|*running itself.*\",button=\"Book a call\",buttonLink=\"\",col1=\"Agency\",links1=\"Workflows:/workflows, Industries:/industries, Results:/results, Tools:/tools, Process:/process\",col2=\"Company\",links2=\"About:/about, Insights:/insights, Contact:/contact\",col3=\"Contact\",address=\"London \\xb7 remote-first\",showEmail=true,socials=\"LinkedIn:https://www.linkedin.com/, X:https://x.com/, YouTube:https://www.youtube.com/\",wordmark=\"\",homeLabel=\"home\",showPicture=true,picture,pictureAlt=\"\",focusX=50,focusY=50,city=\"London\",tz=\"Europe/London\",running=\"3 workflows running\",legalLinks=\"Privacy:/privacy, Terms:/terms, Cookies:/cookies\",legalLine=\"\",closing=\"Runs on Zapier \\xb7 Make \\xb7 n8n \\xb7 custom agents\",bar=false,curtain=true,navLabel=\"Footer\",bpHint=\"auto\"}=props;const c=colorsOf(props);const{D,B,M}=fontsOf(props);useFonts();const live=useLive();const rm=useReduced();const still=useStill();const site=useSite();const wrap=useRef(null);const root=useRef(null);const{w,vh}=useSize(wrap,bpHint);const bp=w<700?\"p\":w<1100?\"t\":\"d\";const seen=useOn(wrap,live,rm,.08);const on=seen||still;// ---- KitCurtain: measure the pinned layer so its wrapper reserves exactly its height (a fixed child takes no space)\nconst low=useRef(null);const lowIn=useRef(null);const[h,setH]=useState(0);const[lh,setLh]=useState(0);useLayoutEffect(()=>{const el=root.current,lo=lowIn.current;if(!el||!lo||typeof ResizeObserver===\"undefined\")return;const m=()=>{const x=Math.round(el.getBoundingClientRect().height*100)/100,y=Math.round(lo.getBoundingClientRect().height*100)/100;if(x>0)setH(p0=>p0===x?p0:x);if(y>0)setLh(p0=>p0===y?p0:y);};m();const ro=new ResizeObserver(m);ro.observe(el);ro.observe(lo);return()=>ro.disconnect();},[]);const can=curtain&&live&&!rm&&!still&&bp!==\"p\"&&vh>0;// \"a\" = the whole footer is pinned · \"b\" = its lower part is pinned · \"\" = a normal footer\nconst mode=!can?\"\":h>0&&h<=vh?\"a\":lh>0&&lh<=vh?\"b\":\"\";const ch=mode===\"a\"?h:lh;useEffect(()=>{const el=mode===\"a\"?wrap.current:mode===\"b\"?low.current:null;if(!el)return;let vis=false,top=0,H=1,fresh=false,last=-1;const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"20% 0px 20% 0px\"});io.observe(el);const off=onTick(()=>{if(!fresh)return;let k=clamp01((H-top)/Math.max(1,ch));if(k>.996)k=1;if(k===last||Math.abs(k-last)<.002&&k!==1&&k!==0)return;last=k;el.style.setProperty(\"--cv\",k.toFixed(3));},()=>{if(!vis){fresh=false;return;}top=el.getBoundingClientRect().top;H=window.innerHeight||1;fresh=true;});return()=>{off();io.disconnect();el.style.removeProperty(\"--cv\");};},[mode,ch]);// keyboard: a focused link inside the pinned layer brings the page to its end, where the layer is fully uncovered\nconst toEnd=e=>{const el=mode===\"a\"?wrap.current:mode===\"b\"?low.current:null;if(!el)return;try{const t=e.target;if(!t.matches(\":focus-visible\")||!el.contains(t))return;}catch(x){return;}requestAnimationFrame(()=>{const d=el.getBoundingClientRect().bottom-window.innerHeight;if(Math.abs(d)<=1)return;const y=window.scrollY+d;const W=window;const L=W.__ltLenis||W.__vcLenis||W.lenis;try{if(L&&L.scrollTo)L.scrollTo(y,{immediate:true,force:true});}catch(x){}window.scrollTo(0,y);});};const[sfBar,setSfBar]=useState(false);useEffect(()=>{if(typeof document===\"undefined\")return;let n=0;const t=setInterval(()=>{n++;if(document.getElementById(\"sf-demo-bar\")){setSfBar(true);clearInterval(t);}else if(n>20)clearInterval(t);},400);return()=>clearInterval(t);},[]);const name=T(wordmark,site.name||\"Runbook\");const year=new Date().getFullYear();// the wordmark fills the stage: its font size = free width / its own width in em. The estimate serves the server render; the measured value replaces it once the face has loaded.\nconst w0=useRef(null);const[em,setEm]=useState(0);useLayoutEffect(()=>{const el=w0.current;if(!el||typeof window===\"undefined\")return;let dead=false;const read=()=>{if(dead||!el.isConnected)return;const fs=parseFloat(getComputedStyle(el).fontSize)||0;const ww=el.getBoundingClientRect().width;if(fs>4&&ww>4){const v=Math.round(ww/fs*1e3)/1e3;setEm(p=>Math.abs(p-v)>.004?v:p);}};read();const t=window.setTimeout(read,600);try{document.fonts&&document.fonts.ready.then(read);}catch(e){}return()=>{dead=true;window.clearTimeout(t);};},[name]);const clock=useRbftClock(live,tz);const cols=[[col1,linkList(links1)],[col2,linkList(links2)]].filter(x=>x[1].length);const addr=String(address||\"\").split(\"|\").map(x=>x.trim()).filter(Boolean);const soc=linkList(socials);const mail=showEmail&&site.email?site.email:\"\";const hasContact=!!(addr.length||mail||soc.length);const nCols=cols.length+(hasContact?1:0);const legal=linkList(legalLinks);const img=srcOf(picture,MEDIA.AX1||site.picture||EMPTY_IMG);const im=RS(img,\"(max-width: 1099px) 100vw, 34vw\");const alt=T(pictureAlt,site.pictureAlt);const ext=h=>/^https?:\\/\\//.test(h)?{target:\"_blank\",rel:\"noopener\"}:{};const bHref=T(buttonLink,site.book);const hasTime=!!(city.trim()||running.trim());const timeLine=hasTime?/*#__PURE__*/_jsxs(\"p\",{className:\"rbft-lt\",style:M,children:[/*#__PURE__*/_jsx(\"i\",{className:`rbft-lt-dot${clock?\" is-live\":\"\"}`,\"aria-hidden\":true}),city.trim()?/*#__PURE__*/_jsx(\"span\",{children:city}):null,city.trim()?/*#__PURE__*/_jsx(\"b\",{\"aria-hidden\":true,children:\"\\xb7\"}):null,/*#__PURE__*/_jsx(\"time\",{className:\"rb-num\",children:clock||\"--:--\"}),running.trim()?/*#__PURE__*/_jsx(\"b\",{\"aria-hidden\":true,children:\"\\xb7\"}):null,running.trim()?/*#__PURE__*/_jsx(\"span\",{children:running}):null]}):null;return /*#__PURE__*/_jsx(\"div\",{ref:wrap,\"data-rb-footer-wrap\":true,\"data-cur\":mode,onFocusCapture:toEnd,className:`mw rbft-cw${mode===\"a\"?\" is-cur\":\"\"}`,style:{...cssVars(c),...props.style||{},height:mode===\"a\"?h:undefined},children:/*#__PURE__*/_jsxs(\"footer\",{ref:root,\"data-rb-footer\":true,\"data-rb-top\":\"dark\",\"data-bp\":bpHint,className:`mw rb-sec rb-dark rbft is-${bp}${on?\" is-on\":\"\"}${bar||sfBar?\" is-bar\":\"\"}${showPicture?\"\":\" no-pic\"}${mode===\"a\"?\" is-cur\":\"\"}`,style:{...cssVars(c),...B,[\"--em\"]:em||rbftEm(name)},children:[/*#__PURE__*/_jsx(\"link\",{rel:\"stylesheet\",href:FONTS}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:CSS_BASE+CSS_MOTION+RBFT_CSS}}),/*#__PURE__*/_jsx(\"div\",{className:\"rb-wrap rbft-in\",children:/*#__PURE__*/_jsxs(\"div\",{className:`rbft-top${line.trim()||button.trim()?\"\":\" no-brand\"}`,children:[line.trim()||button.trim()?/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-brand\",children:[line.trim()?/*#__PURE__*/_jsx(Head,{text:line,on:on,D:D,tag:\"p\",size:bp===\"p\"?\"clamp(36px,10.4vw,44px)\":\"clamp(40px,3.6vw,56px)\",lh:1,className:\"rbft-line\"}):null,button.trim()?/*#__PURE__*/_jsx(Btn,{href:bHref,label:button,className:\"rbft-btn\",style:rise(on,200)}):null]}):null,nCols?/*#__PURE__*/_jsxs(\"nav\",{className:\"rbft-cols\",\"aria-label\":navLabel,style:{[\"--cols\"]:nCols},children:[cols.map(([t,ls],i)=>/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-col\",style:rise(on,140+i*70),children:[String(t).trim()?/*#__PURE__*/_jsx(\"p\",{className:\"rbft-ct\",style:M,children:t}):null,/*#__PURE__*/_jsx(\"ul\",{children:ls.map((l,k)=>/*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(\"a\",{href:l.h,...ext(l.h),children:l.l})},k))})]},i)),hasContact?/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-col rbft-contact\",style:rise(on,140+cols.length*70),children:[col3.trim()?/*#__PURE__*/_jsx(\"p\",{className:\"rbft-ct\",style:M,children:col3}):null,mail?/*#__PURE__*/_jsx(\"ul\",{children:/*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(\"a\",{href:`mailto:${mail}`,children:mail})})}):null,addr.length?/*#__PURE__*/_jsx(\"address\",{className:\"rbft-addr\",children:addr.map((x,k)=>/*#__PURE__*/_jsx(\"span\",{children:x},k))}):null,soc.length?/*#__PURE__*/_jsx(\"ul\",{className:\"rbft-soc\",style:M,children:soc.map((l,k)=>/*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(\"a\",{href:l.h,...ext(l.h),children:l.l})},k))}):null]}):null]}):null]})}),/*#__PURE__*/_jsx(\"div\",{ref:low,className:`rbft-low${mode===\"b\"?\" is-cur\":\"\"}`,style:{height:mode===\"b\"?lh:undefined},children:/*#__PURE__*/_jsxs(\"div\",{ref:lowIn,className:\"rbft-lowin\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"rb-wrap rbft-in2\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-stage\",style:rise(on,260,30),children:[/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-wm\",children:[/*#__PURE__*/_jsxs(\"a\",{className:\"rbft-word\",href:\"/\",\"aria-label\":`${name} ${homeLabel}`.trim(),style:HD(D),children:[/*#__PURE__*/_jsxs(\"span\",{ref:w0,className:\"rbft-w0\",children:[/*#__PURE__*/_jsx(\"i\",{\"aria-hidden\":true}),name]}),/*#__PURE__*/_jsx(\"span\",{className:\"rbft-mk\",\"aria-hidden\":true,children:/*#__PURE__*/_jsxs(\"span\",{className:\"rbft-mk-in\",children:[/*#__PURE__*/_jsx(\"i\",{}),name]})})]}),!showPicture?timeLine:null]}),showPicture?/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-pic\",children:[/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,width:2400,height:1340,loading:\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:`${rbftPct(focusX,50)}% ${rbftPct(focusY,50)}%`}}),/*#__PURE__*/_jsx(\"i\",{className:\"rbft-pv\",\"aria-hidden\":true}),timeLine]}):null]}),/*#__PURE__*/_jsxs(\"div\",{className:\"rbft-base\",children:[/*#__PURE__*/_jsxs(\"p\",{className:\"rbft-legal\",children:[\"\\xa9 \",year,\" \",T(legalLine,name)]}),legal.length?/*#__PURE__*/_jsx(\"ul\",{className:\"rbft-ll\",children:legal.map((l,k)=>/*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(\"a\",{href:l.h,...ext(l.h),children:l.l})},k))}):null,closing.trim()?/*#__PURE__*/_jsx(\"p\",{className:\"rbft-made\",style:M,children:closing}):null]})]}),/*#__PURE__*/_jsx(\"i\",{className:\"rbft-shade is-b\",\"aria-hidden\":true})]})}),/*#__PURE__*/_jsx(\"i\",{className:\"rbft-shade is-a\",\"aria-hidden\":true})]})});}const RBFT_CSS=`\n.mw.rbft{--e:cubic-bezier(.2,.8,.2,1);--lime:var(--rb-brass);--veil:color-mix(in srgb,var(--rb-night) 90%,#000);display:block;overflow:hidden;font-size:16px;line-height:1.5;background:var(--rb-night);color:var(--rb-cloud)}\n.mw.rbft .rb-wrap{--pad:56px;--res:480px;container-type:inline-size;padding-top:clamp(80px,7vw,120px);padding-bottom:0} .mw.rbft .rbft-in2{padding-top:0;padding-bottom:34px}\n/* ---- THE NIGHT SHIFT register: pills, round dots, lime words in the line (no plate) ---- */\n.mw.rb-sec.rbft .rb-hd .rb-it,.mw.rb-sec.rbft .rb-hd-w.is-accw .rb-it{padding:0;margin:0;background:none;color:var(--lime)}\n.mw.rb-sec.rbft .rb-lit-dot,.mw.rb-sec.rbft .rb-lit-dot::after,.mw.rb-sec.rbft .rb-btn-lamp,.mw.rb-sec.rbft .rb-btn-lamp::after{border-radius:50%}\n.mw.rb-sec.rbft .rb-btn,.mw.rb-sec.rbft .rb-btn-face{border-radius:999px} .mw.rb-sec.rbft .rb-btn.rb-has-a .rb-btn-face::before{clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px)} .mw.rb-sec.rbft .rb-btn.rb-has-a:hover .rb-btn-face::before,.mw.rb-sec.rbft .rb-btn.rb-has-a:focus-visible .rb-btn-face::before{clip-path:inset(0 0 0 0 round 999px)}\n/* ---- KitCurtain: a wrapper holds the pinned layer's place and clips it; the layer is fixed to the bottom of the screen behind the page (a = the whole footer, b = its lower part) ---- */\n.mw.rbft-cw{display:block;width:100%;background:var(--rb-night)} .mw.rbft-cw.is-cur,.mw.rbft .rbft-low.is-cur{--cv:0;clip-path:inset(0 0 0 0);-webkit-clip-path:inset(0 0 0 0)}\n.mw.rbft.is-cur,.mw.rbft .rbft-low.is-cur>.rbft-lowin{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;z-index:0;translate:0 calc((1 - var(--cv,1))*72px)}\n.rbft-low{position:relative} .rbft-lowin{position:relative;background:var(--rb-night)}\n.rbft-shade{position:absolute;inset:0;z-index:60;pointer-events:none;background:black;opacity:0} .mw.rbft.is-cur>.rbft-shade.is-a,.mw.rbft .rbft-low.is-cur .rbft-shade.is-b{opacity:calc((1 - var(--cv,1))*.5)}\n/* ---- top: the closing line + the link columns ---- */\n.rbft-top{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:clamp(40px,5.4vw,96px);align-items:start} .rbft-top.no-brand{grid-template-columns:minmax(0,1fr)}\n.rbft-brand{display:flex;flex-direction:column;align-items:flex-start;gap:30px;max-width:480px}\n.mw.rbft .rbft-line{color:var(--rb-cloud)}\n.rbft-cols{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:36px clamp(20px,2.4vw,44px)}\n.rbft-ct{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--rb-hair2);font-size:11px;line-height:1.4;letter-spacing:.11em;text-transform:uppercase;color:var(--rb-mut)}\n.rbft-col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px;justify-items:start}\n.rbft-col a{display:inline-block;max-width:100%;padding:5px 0;font-size:16.5px;line-height:1.35;text-decoration:none;color:var(--rb-cloud);overflow-wrap:anywhere;background:linear-gradient(var(--lime),var(--lime)) 0 calc(100% - 2px)/0 2px no-repeat;transition:background-size .45s var(--e)}\n.rbft-col a:hover,.rbft-col a:focus-visible{background-size:100% 2px}\n.rbft-addr{display:grid;gap:1px;margin:6px 0 0;padding:0;font-style:normal;font-size:15px;line-height:1.45;color:var(--rb-mut)} .rbft-addr span{display:block}\n.mw.rbft .rbft-soc{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:14px;padding-top:12px;border-top:1px solid var(--rb-hair)} .mw.rbft .rbft-soc a{font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;padding:8px 0}\n/* ---- the stage: the wordmark with the lime dot, beside the photograph with the local-time pin ---- */\n.rbft-stage{display:flex;align-items:flex-end;gap:clamp(28px,3.4vw,56px);margin-top:clamp(64px,6.4vw,112px);padding-top:clamp(36px,3.4vw,56px);border-top:1px solid var(--rb-hair2)}\n.rbft-wm{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:.08em;max-width:100%;font-size:min(calc((100cqi - var(--res)) / var(--em)),400px);line-height:.86;white-space:nowrap}\n.mw.rbft.no-pic .rb-wrap{--res:2px}\n.rbft-word{position:relative;flex:none;display:inline-block;border-radius:.06em;font-size:1em;line-height:.86;letter-spacing:-.05em!important;text-decoration:none;color:var(--rb-cloud)!important;overflow:hidden;-webkit-tap-highlight-color:transparent}\n.rbft-w0,.rbft-mk-in{display:flex;align-items:center;gap:.1em;padding:.07em .12em .14em .06em}\n.rbft-w0 i,.rbft-mk-in i{flex:none;width:.32em;height:.32em;margin-top:.08em;border-radius:50%;background:var(--lime);box-shadow:0 0 0 .035em color-mix(in srgb,var(--lime) 22%,transparent)}\n.rbft-mk{position:absolute;inset:0;overflow:hidden;transform:translate3d(-101%,0,0);transition:transform .8s cubic-bezier(.7,0,.2,1)}\n.rbft-mk-in{position:absolute;inset:0;background:var(--lime);color:var(--rb-ink);transform:translate3d(101%,0,0);transition:transform .8s cubic-bezier(.7,0,.2,1)} .rbft-mk-in i{background:var(--rb-ink);box-shadow:none}\n.rbft-word:hover .rbft-mk,.rbft-word:focus-visible .rbft-mk,.rbft-word:hover .rbft-mk-in,.rbft-word:focus-visible .rbft-mk-in{transform:none}\n.mw.rbft .rbft-pic{position:relative;flex:1 1 0;min-width:0;align-self:stretch;min-height:clamp(220px,19vw,300px);overflow:hidden;border-radius:8px;background:color-mix(in srgb,var(--rb-cloud) 6%,var(--rb-night))}\n.mw.rbft .rbft-pic>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;display:block;object-fit:cover;transition:scale 1.6s var(--e)} @media (hover:hover){ .rbft-pic:hover>img{scale:1.05} }\n.rbft-pv{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--veil) 70%,transparent) 100%)}\n/* the local-time pin: lime dot + night glass plate, mono */\n.mw.rbft .rbft-lt{display:inline-flex;align-items:center;gap:9px;margin:0;padding:9px 13px 9px 11px;border-radius:999px;font-size:11px;line-height:1.3;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;color:var(--rb-cloud);background:color-mix(in srgb,var(--veil) 78%,transparent);border:1px solid color-mix(in srgb,var(--rb-cloud) 18%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}\n.mw.rbft .rbft-pic .rbft-lt{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);white-space:normal}\n.rbft-lt time{color:var(--lime)} .rbft-lt b{font-weight:inherit;opacity:.6}\n.rbft-lt-dot{position:relative;flex:none;width:8px;height:8px;border-radius:50%;background:color-mix(in srgb,var(--rb-cloud) 50%,transparent)} .rbft-lt-dot.is-live{background:var(--lime);box-shadow:0 0 10px var(--lime)}\n.rbft-lt-dot.is-live::after{content:\"\";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--lime);opacity:0;animation:rbft-ping 2.6s ease-out infinite} @keyframes rbft-ping{0%{opacity:.9;transform:scale(.5)}70%,100%{opacity:0;transform:scale(1.6)}}\n/* ---- base: the legal line and links, the closing line ---- */\n.rbft-base{display:flex;flex-wrap:wrap;align-items:center;gap:10px 32px;margin-top:clamp(28px,2.6vw,40px);padding-top:22px;border-top:1px solid var(--rb-hair2);font-size:14px;line-height:1.5;color:var(--rb-cloud)}\n.rbft-legal,.rbft-made{margin:0} .rbft-made{margin-left:auto;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-mut)}\n.rbft-ll{display:flex;flex-wrap:wrap;gap:4px 22px;list-style:none;margin:0;padding:0}\n.rbft-ll a{display:inline-block;padding:6px 0;text-decoration:none;color:var(--rb-cloud);background:linear-gradient(var(--lime),var(--lime)) 0 calc(100% - 3px)/0 2px no-repeat;transition:background-size .45s var(--e)} .rbft-ll a:hover,.rbft-ll a:focus-visible{background-size:100% 2px}\n/* demo bar (206\\xd7128 stack, bottom right; a full-width bar on phones): keep the legal row clear of it */\n.mw.rbft.is-bar .rbft-in2{padding-bottom:124px} .mw.rbft.is-bar .rbft-base{padding-right:236px} .mw.rbft.is-bar .rbft-made{margin-left:0}\n/* ---- tablet ---- */\n.mw.rbft.is-t .rb-wrap{--pad:40px;--res:2px;padding-top:80px} .mw.rbft.is-t .rbft-in2{padding-top:0}\n.mw.rbft.is-t .rbft-top,.mw.rbft.is-p .rbft-top{grid-template-columns:minmax(0,1fr);gap:52px}\n.mw.rbft.is-t .rbft-stage,.mw.rbft.is-p .rbft-stage{flex-direction:column;align-items:stretch;gap:32px;margin-top:60px;padding-top:40px}\n.mw.rbft.is-t .rbft-pic,.mw.rbft.is-p .rbft-pic{order:-1;flex:none;min-height:0;aspect-ratio:16/8}\n/* ---- phone ---- */\n.mw.rbft.is-p .rb-wrap{--pad:20px;--res:2px;padding-top:64px} /* phones: the closing line ended under the \\xabMade in Framer\\xbb badge (140 \\xd7 38, 20 px from the corner) → the base row ends above it */ .mw.rbft.is-p .rbft-in2{padding-top:0;padding-bottom:68px}\n.mw.rbft.is-p .rbft-top{gap:44px}\n.mw.rbft.is-p .rbft-brand{gap:24px} .mw.rbft.is-p .rbft-btn{width:100%}\n.mw.rbft.is-p .rbft-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}\n.mw.rbft.is-p .rbft-col a{position:relative;min-width:44px;font-size:16px;padding:11.5px 0} .mw.rbft.is-p .rbft-addr{font-size:15px}\n.mw.rbft.is-p .rbft-soc{gap:0 14px} .mw.rbft.is-p .rbft-soc a{font-size:11.5px;padding:14px 0}\n.mw.rbft.is-p .rbft-ll{gap:4px 22px} .mw.rbft.is-p .rbft-ll a{padding:12px 0;min-width:44px}\n.mw.rbft.is-p .rbft-stage{gap:24px;margin-top:48px;padding-top:28px}\n.mw.rbft.is-p .rbft-pic{aspect-ratio:4/3}\n.mw.rbft.is-p .rbft-lt{font-size:10.5px;letter-spacing:.08em;padding:7px 11px 7px 9px}\n.mw.rbft.is-p .rbft-base{flex-direction:column;align-items:flex-start;gap:6px} .mw.rbft.is-p .rbft-made{margin-left:0;font-size:10.5px;letter-spacing:.07em}\n.mw.rbft.is-p.is-bar .rbft-in2{padding-bottom:204px} .mw.rbft.is-p.is-bar .rbft-base{padding-right:0}\n.mw.rbft.is-p .rbft-contact{grid-column:1 / -1}\n@media (max-width:349px){ .mw.rbft.is-p .rb-wrap{--pad:16px} }\n@media (prefers-reduced-motion:reduce){ .rbft-mk,.rbft-mk-in,.rbft-pic>img,.rbft-col a,.rbft-ll a{transition:none!important} .rbft-pic:hover>img{scale:1} .rbft-lt-dot.is-live::after{animation:none!important} }\n`;addPropertyControls(RbFooter,{...COLOR_CONTROLS,...FONT_CONTROLS,...BP_CONTROL,line:{type:ControlType.String,title:\"Line\",description:\"| starts a new line. Put *stars* around the lime words. Type a space to hide it\",defaultValue:\"Your business,|*running itself.*\",displayTextArea:true},button:{type:ControlType.String,title:\"Button\",description:\"Type a space to hide it\",defaultValue:\"Book a call\"},buttonLink:{type:ControlType.Link,title:\"Button link\",description:\"Empty = the Site Book Link\"},col1:{type:ControlType.String,title:\"Column 1 title\",defaultValue:\"Agency\"},links1:{type:ControlType.String,title:\"Column 1 links\",description:\"Label:/path, … Empty = no column\",defaultValue:\"Workflows:/workflows, Industries:/industries, Results:/results, Tools:/tools, Process:/process\",displayTextArea:true},col2:{type:ControlType.String,title:\"Column 2 title\",defaultValue:\"Company\"},links2:{type:ControlType.String,title:\"Column 2 links\",description:\"Label:/path, … Empty = no column\",defaultValue:\"About:/about, Insights:/insights, Contact:/contact\",displayTextArea:true},col3:{type:ControlType.String,title:\"Contact title\",defaultValue:\"Contact\"},showEmail:{type:ControlType.Boolean,title:\"Show the Site Email\",defaultValue:true},address:{type:ControlType.String,title:\"Address\",description:\"| starts a new line. Empty = no address\",defaultValue:\"London \\xb7 remote-first\",displayTextArea:true},socials:{type:ControlType.String,title:\"Socials\",description:\"Shown as text under the contact details. Label:https://…, …\",defaultValue:\"LinkedIn:https://www.linkedin.com/, X:https://x.com/, YouTube:https://www.youtube.com/\",displayTextArea:true},wordmark:{type:ControlType.String,title:\"Wordmark\",description:\"Empty = the Site Name\",defaultValue:\"\"},homeLabel:{type:ControlType.String,title:\"Wordmark link label\",description:\"Read by screen readers after the name\",defaultValue:\"home\"},showPicture:{type:ControlType.Boolean,title:\"Show picture\",defaultValue:true},picture:{type:ControlType.ResponsiveImage,title:\"Picture\",description:\"Empty = the Site Picture\",hidden:p=>!p.showPicture},pictureAlt:{type:ControlType.String,title:\"Picture description\",description:\"Empty = the Site Picture Alt\",defaultValue:\"\",hidden:p=>!p.showPicture},focusX:{type:ControlType.Number,title:\"Picture focus X\",defaultValue:50,min:0,max:100,step:1,unit:\"%\",hidden:p=>!p.showPicture},focusY:{type:ControlType.Number,title:\"Picture focus Y\",defaultValue:50,min:0,max:100,step:1,unit:\"%\",hidden:p=>!p.showPicture},city:{type:ControlType.String,title:\"Local time city\",description:\"The local-time line: city \\xb7 the live clock \\xb7 the running line. Type a space to hide the city\",defaultValue:\"London\"},tz:{type:ControlType.String,title:\"Time zone\",description:\"IANA name, e.g. Europe/London, America/New_York\",defaultValue:\"Europe/London\"},running:{type:ControlType.String,title:\"Running line\",description:\"After the clock. Type a space to hide it\",defaultValue:\"3 workflows running\"},legalLinks:{type:ControlType.String,title:\"Legal links\",description:\"Label:/path, …\",defaultValue:\"Privacy:/privacy, Terms:/terms, Cookies:/cookies\",displayTextArea:true},legalLine:{type:ControlType.String,title:\"Legal name\",description:\"After \\xa9 and the year. Empty = the wordmark\",defaultValue:\"\"},closing:{type:ControlType.String,title:\"Closing line\",description:\"Type a space to hide it\",defaultValue:\"Runs on Zapier \\xb7 Make \\xb7 n8n \\xb7 custom agents\"},bar:{type:ControlType.Boolean,title:\"Bottom bar room\",description:\"Adds space under the legal row when a fixed bar sits at the bottom of the screen\",defaultValue:false},curtain:{type:ControlType.Boolean,title:\"Curtain\",description:\"The footer waits behind the page and the section above lifts off it. Phones, reduced motion and screens shorter than the footer always get the normal footer\",enabledTitle:\"On\",disabledTitle:\"Off\",defaultValue:true},navLabel:{type:ControlType.String,title:\"Links label\",description:\"Read by screen readers\",defaultValue:\"Footer\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RbFooter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RbFooter.map","// ===== RUNBOOK shared scaffold (design language «THE NIGHT SHIFT»: a dark page (--rb-night #0B0D10) with full-bleed office / ops photographs, timestamped task pins, mono caps labels, thin drawn rules; ONE paper band (RbReviews); ONE accent = ACID LIME #D4F542 (--rb-brass) as dots, marks, mono labels and LIME WORDS in headlines on dark — never lime text on light (--rb-acc there); Inter Tight 600 display, Inter body, JetBrains Mono labels; PILL buttons (radius 999) with a lime arrow seat that floods the pill on hover, glass ghost pill with a live lime lamp; chips = soft pills, plates / frames radius 8) (inlined by mk.py; each Framer code file must be self-contained) =====\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useId,useLayoutEffect,useRef,useState}from\"react\";import{createPortal}from\"react-dom\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";const FONTS=\"https://fonts.googleapis.com/css2?family=Inter+Tight:wght@500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap\";// Token-safe alpha: Styles-bound colours arrive as var(--token-…) so hex-alpha breaks; color-mix keeps a palette flip working. Never 0% (hue drops) — floor at 0.4%.\nconst A=(c,a)=>`color-mix(in srgb, ${c} ${Math.max(.4,Math.round(a*1e3)/10)}%, transparent)`;const MIX=(a,b,t)=>`color-mix(in srgb, ${a} ${Math.round((1-t)*100)}%, ${b})`;const srcOf=(v,fallback)=>v&&typeof v===\"object\"&&v.src?String(v.src).split(\"?\")[0]:typeof v===\"string\"&&v.trim()?v.trim().split(\"?\")[0]:fallback;const T=(s,fb)=>s&&s.trim()?s.trim():fb;// ink or white text on a CMS brand colour (luminance test; the brand colour is data, not a palette token)\nconst onBrand=hex=>{const m=String(hex||\"\").replace(\"#\",\"\").match(/^([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);if(!m)return\"var(--rb-cloud)\";const[r,g,b]=[m[1],m[2],m[3]].map(x=>{const v=parseInt(x,16)/255;return v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4);});const L=.2126*r+.7152*g+.0722*b;return L>.18?\"var(--rb-ink)\":\"var(--rb-cloud)\";};const cleanTel=s=>s.replace(/[^\\d+]/g,\"\");// Premium layout band (measured 09-13): container 1340 @1440 / 1520 @1920, body 16, button label 12–13.\nconst MAXW=\"clamp(1280px, 92vw, 1520px)\";// Responsive delivery: Framer's resizer serves any upload at ?scale-down-to=N (longest side). The query is stripped first so one file never downloads twice.\n// Responsive delivery. Framer uploads: the resizer serves ?scale-down-to=N. Unsplash stand-ins: ?w=N. The src is already the smallest width that covers the slot (a 52px avatar never pulls a 1600px photo), so a big image is never decoded for a small box — decode is what stalls scrolling.\nconst RS_W=[160,320,480,800,1200,1600];const rsTarget=sizes=>{const t=String(sizes||\"\").trim().split(\",\").pop()||\"\";const px=t.match(/(\\d+(?:\\.\\d+)?)px/);const vw=t.match(/(\\d+(?:\\.\\d+)?)vw/);const want=px?parseFloat(px[1])*2:vw?parseFloat(vw[1])/100*1600*1.25:1600;return RS_W.find(w=>w>=want)||1600;};// tall = height / width of a PORTRAIT picture (9:16 → 1.78). Framer's scale-down-to caps the LONG edge, so a 512 step of a 9:16 file is only 288 px wide: the w descriptors are divided by tall so the browser picks a step that is really wide enough.\n// Framer merges the `sizes` of the three breakpoint copies by prefixing each with its own media query; a sizes string that already holds media queries comes out broken\n// (\"(min-width: 1200px) (max-width: 1099px) 100vw, 45vw, …\") and the browser falls back to the LAST value on every screen → phones downloaded the 512 px variant. So media queries are rewritten as one length:\n// \"(max-width: 1099px) 100vw, 45vw\" → \"max(45vw, min(100vw, calc((1100px - 100vw) * 9999)))\". Same slot at every width (checked in Chromium + WebKit); anything it cannot parse is passed through.\nconst rsSizes=sz=>{const parts=String(sz||\"\").split(\",\").map(p=>p.trim());if(parts.length<2)return sz;const steps=[];for(const p of parts.slice(0,-1)){const m=p.match(/^\\(max-width:\\s*(\\d+)px\\)\\s*(\\d+)vw$/);if(!m)return sz;steps.push([+m[1],+m[2]]);}const zm=parts[parts.length-1].match(/^(\\d+)vw$/);if(!zm)return sz;const z=+zm[1];if(steps.length===1&&steps[0][1]<z)return`min(${z}vw, max(${steps[0][1]}vw, calc((100vw - ${steps[0][0]}px) * 9999)))`;for(let i=0;i<steps.length;i++)if(steps[i][1]<(i+1<steps.length?steps[i+1][1]:z))return sz;return`max(${[`${z}vw`].concat(steps.map(([b,x])=>`min(${x}vw, calc((${b+1}px - 100vw) * 9999))`)).join(\", \")})`;};const RS=(u,sizes,tall=1)=>{const s=String(u||\"\");const b=s.split(\"?\")[0];const tl=Math.max(1,tall||1);if(/framerusercontent\\.com\\/images\\//.test(s)){const w=rsTarget(sizes)*tl;const d=w<=512?512:w<=1024?1024:2048;const dw=n=>Math.round(n/tl);return{src:`${b}?scale-down-to=${d}`,srcSet:`${b}?scale-down-to=512 ${dw(512)}w, ${b}?scale-down-to=1024 ${dw(1024)}w, ${b}?scale-down-to=2048 ${dw(2048)}w`,sizes:rsSizes(sizes)};}if(/images\\.unsplash\\.com\\//.test(s)){const w=rsTarget(sizes);const q=n=>`${b}?w=${n}&q=70&fm=jpg&auto=format`;return{src:q(w),srcSet:RS_W.filter(n=>n<=Math.max(w*2,480)).map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}// Wikimedia Commons stand-ins from media/standins.json (thumb urls …/1280px-Name.jpg): only the standard thumb steps exist. A 1920px url (the hero photo) is passed through untouched.\nconst wm=s.match(/wikimedia\\.org\\/.*\\/(\\d+)px-/);if(wm&&+wm[1]<=1280){const w=rsTarget(sizes);const q=n=>b.replace(/\\/\\d+px-/,`/${n}px-`);const st=[500,960,1280].filter(n=>n<=+wm[1]);return{src:q(st.find(n=>n>=w)||st[st.length-1]),srcSet:st.map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}return{src:s};};// A Framer Font control stores a selector (GF;Family-700), not a CSS family — derive one, reject anything with ';'\nconst famOf=f=>{if(!f)return\"\";if(typeof f===\"string\")return f.includes(\";\")?\"\":f;if(f.fontFamily&&!String(f.fontFamily).includes(\";\"))return String(f.fontFamily);const sel=String(f.fontSelector||\"\");if(!sel)return\"\";const n=sel.split(\";\").pop()||\"\";return n.replace(/-(regular|italic|bold|\\d{3}(italic)?)$/i,\"\").replace(/-/g,\" \");};const wOf=(f,fb)=>{if(!f)return fb;if(f.fontWeight)return Number(f.fontWeight)||fb;const m=String(f.fontSelector||\"\").match(/-(\\d{3})/);return m?Number(m[1]):fb;};// famCss: Framer's Font `fontFamily` is ALREADY a stack — never wrap it in quotes (one fake family → fallback renders). A bare name gets quoted.\nconst famCss=f=>{const fa=famOf(f).replace(/\"/g,\"'\").trim();if(!fa)return\"\";return fa.includes(\",\")||fa.startsWith(\"'\")?fa:`'${fa}'`;};const stack=(custom,f,fb,tail)=>{const fam=custom?famCss(f):\"\";return`${fam?`${fam}, `:\"\"}${fb}, ${tail}`;};function useFonts(){useEffect(()=>{if(typeof document===\"undefined\"||document.getElementById(\"rb-fonts\"))return;const l=document.createElement(\"link\");l.id=\"rb-fonts\";l.rel=\"stylesheet\";l.href=FONTS;document.head.appendChild(l);},[]);}// live = client after hydration and not on the canvas. SSR and the first client render share the same markup.\n// TRUE on the Framer canvas AND in its export / thumbnail / screenshot renderers (anything that is not the running preview): no scroll and no hydration there, so every reveal / pinned stage must draw its FINAL state or the editor shows empty blocks.\nfunction useStill(){const isStatic=useIsStaticRenderer();let t=null;try{t=RenderTarget.current();}catch(e){}return isStatic||t!==null&&t!==RenderTarget.preview;}function useLive(){const isStatic=useIsStaticRenderer();const[live,setLive]=useState(false);useEffect(()=>{if(!isStatic&&RenderTarget.current()!==RenderTarget.canvas&&typeof window!==\"undefined\")setLive(true);},[isStatic]);return live;}// Width/height of the root + viewport height. SSR starts from the breakpoint hint (Framer renders the Tablet/Phone copies with the same code and no width).\nfunction useSize(root,hint){const ov=String(hint||\"\").toLowerCase();const[w,setW]=useState(ov===\"phone\"?390:ov===\"tablet\"?810:1440),[vh,setVh]=useState(ov===\"phone\"?844:ov===\"tablet\"?1080:900);useLayoutEffect(()=>{const el=root.current;if(!el)return;const ro=new ResizeObserver(([e])=>{const x=Math.round((e.borderBoxSize&&e.borderBoxSize[0]?e.borderBoxSize[0].inlineSize:0)||el.offsetWidth);if(x>0)setW(x);});ro.observe(el);const vv=()=>setVh(window.innerHeight);vv();const read=()=>{const x=Math.round(el.offsetWidth);if(x>0)setW(x);};const t1=window.setTimeout(read,150),t2=window.setTimeout(read,700),t3=window.setTimeout(read,1600);window.addEventListener(\"resize\",vv);window.addEventListener(\"load\",read);return()=>{ro.disconnect();window.clearTimeout(t1);window.clearTimeout(t2);window.clearTimeout(t3);window.removeEventListener(\"resize\",vv);window.removeEventListener(\"load\",read);};},[]);return{w,vh};}const useReduced=()=>{const[rm,setRm]=useState(false);useLayoutEffect(()=>{setRm(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches);},[]);return rm;};// One shared rAF for every section. Each frame runs ALL reads first (layout reads: getBoundingClientRect, offsetHeight), then ALL writes (CSS vars, transforms).\n// Interleaving read → write → read made the browser recalc the whole page's style once per section per frame (layout thrashing: 20+ recalcs a frame).\nfunction onTick(fn,read,pre){if(typeof window===\"undefined\")return()=>{};const w=window;if(!w.__ovTick){w.__ovTick={pre:new Set,subs:new Set,reads:new Set,raf:0};const loop=t=>{const T=w.__ovTick;T.pre.forEach(r=>r(t));T.reads.forEach(r=>r(t));T.subs.forEach(s=>s(t));T.raf=requestAnimationFrame(loop);};w.__ovTick.raf=requestAnimationFrame(loop);}w.__ovTick.subs.add(fn);if(read)w.__ovTick.reads.add(read);if(pre)w.__ovTick.pre.add(pre);return()=>{w.__ovTick.subs.delete(fn);if(read)w.__ovTick.reads.delete(read);if(pre)w.__ovTick.pre.delete(pre);};}const clamp01=v=>Math.min(1,Math.max(0,v));const easeIO=t=>{const x=clamp01(t);return x<.5?4*x*x*x:1-Math.pow(-2*x+2,3)/2;};// RUNBOOK tokens (the 8 names are shared with every kit, only the values change): Paper(bone) #F2F3EE · Ink #0B0D10 · Accent(brass) = ACID LIME #D4F542 (a FILL behind ink text, dots, marks, mono labels on dark; never text on light → --rb-acc) · Signal(pine) = deep lime #5E7A0C (fills / light-ground accent text) · Line(fog) #D8DAD3 · Muted(stone) #6E7370 · White(cloud) #F2F3EE · Dark(night) #0B0D10.\nconst DEF={bone:\"#F2F3EE\",ink:\"#0B0D10\",brass:\"#D4F542\",pine:\"#5E7A0C\",fog:\"#D8DAD3\",stone:\"#6E7370\",cloud:\"#F2F3EE\",night:\"#0B0D10\"};const colorsOf=p=>({bone:p.bone||DEF.bone,ink:p.ink||DEF.ink,brass:p.brass||DEF.brass,pine:p.pine||DEF.pine,fog:p.fog||DEF.fog,stone:p.stone||DEF.stone,cloud:p.cloud||DEF.cloud,night:p.night||DEF.night});// a Style-bound colour arrives as var(--token-…, #hex): let the browser resolve it to r,g,b for canvas drawing\nconst cssRgb=(el,col,fb)=>{if(!el||typeof window===\"undefined\")return fb;const p=document.createElement(\"i\");p.style.display=\"none\";p.style.color=col;el.appendChild(p);const v=getComputedStyle(p).color;p.remove();const m=v.match(/(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?)/);return m?`${Math.round(+m[1])},${Math.round(+m[2])},${Math.round(+m[3])}`:fb;};const cssVars=c=>({\"--rb-bone\":c.bone,\"--rb-ink\":c.ink,\"--rb-brass\":c.brass,\"--rb-pine\":c.pine,\"--rb-fog\":c.fog,\"--rb-stone\":c.stone,\"--rb-cloud\":c.cloud,\"--rb-night\":c.night});const COLOR_CONTROLS={bone:{type:ControlType.Color,title:\"Paper\",defaultValue:DEF.bone},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:DEF.ink},brass:{type:ControlType.Color,title:\"Accent\",description:\"Acid lime: lime words in headlines on dark, dots, button arrow seats, lamps, mono labels on dark. Never small lime text on a light ground\",defaultValue:DEF.brass},pine:{type:ControlType.Color,title:\"Signal\",description:\"Deep lime: the small accent text on light grounds (the paper band) is mixed from it\",defaultValue:DEF.pine},fog:{type:ControlType.Color,title:\"Line\",defaultValue:DEF.fog},stone:{type:ControlType.Color,title:\"Muted\",defaultValue:DEF.stone},cloud:{type:ControlType.Color,title:\"White\",description:\"Plates, cards and the type on dark\",defaultValue:DEF.cloud},night:{type:ControlType.Color,title:\"Dark\",defaultValue:DEF.night}};// ---- Fonts: Custom Fonts toggle → Font controls; off = Inter Tight 600 / Inter / JetBrains Mono ----\nconst FONT_CONTROLS={customFonts:{type:ControlType.Boolean,title:\"Custom Fonts\",description:\"Off = the site fonts (set once on the Header in the Site Layout). On = different fonts for this section only\",defaultValue:false},displayFont:{type:ControlType.Font,title:\"Display Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},bodyFont:{type:ControlType.Font,title:\"Body Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},monoFont:{type:ControlType.Font,title:\"Mono Font\",defaultFontType:\"monospace\",hidden:p=>!p.customFonts}};const NUMF=\"var(--rb-font-m, 'JetBrains Mono'), ui-monospace, Menlo, monospace\";// Site-wide fonts: the Header (Site Layout, every page) writes --rb-font-d/b/m (+ weights) on :root when its Custom Fonts is on. A section uses them unless its own Custom Fonts is on.\nconst siteFontCss=p=>{if(!p||!p.customFonts)return\"\";const v=[];const put=(k,f,w)=>{const fam=famCss(f);if(fam){v.push(`--rb-font-${k}:${fam}`);v.push(`--rb-font-${k}w:${wOf(f,w)}`);}};put(\"d\",p.displayFont,400);put(\"b\",p.bodyFont,400);put(\"m\",p.monoFont,400);put(\"a\",p.accentFont,400);return v.length?`:root{${v.join(\";\")}}`:\"\";};function fontsOf(p){const on=!!p.customFonts;const D={fontFamily:stack(on,p.displayFont,\"var(--rb-font-d, 'Inter Tight')\",\"'Helvetica Neue', Arial, sans-serif\"),fontWeight:on?wOf(p.displayFont,600):\"var(--rb-font-dw, 600)\",fontStyle:on&&p.displayFont&&p.displayFont.fontStyle?p.displayFont.fontStyle:\"normal\"};const B={fontFamily:stack(on,p.bodyFont,\"var(--rb-font-b, 'Inter')\",\"system-ui, -apple-system, Arial, sans-serif\"),fontWeight:on?wOf(p.bodyFont,400):\"var(--rb-font-bw, 400)\"};const M={fontFamily:stack(on,p.monoFont,\"var(--rb-font-m, 'JetBrains Mono')\",\"ui-monospace, 'SF Mono', Menlo, monospace\"),fontWeight:on?wOf(p.monoFont,500):\"var(--rb-font-mw, 500)\"};return{D,B,M};}const BP_CONTROL={bpHint:{type:ControlType.Enum,title:\"Breakpoint Hint\",description:\"Set per breakpoint copy so the server render starts at the right width\",options:[\"auto\",\"desktop\",\"tablet\",\"phone\"],optionTitles:[\"Auto\",\"Desktop\",\"Tablet\",\"Phone\"],defaultValue:\"auto\",hidden:()=>true}};// In-page CTA jumps (\"#demo\", \"/#demo\"): scroll to the section when it is on this page, otherwise go to it on the home page.\nfunction jumpTo(e,href){try{const m=String(href||\"\").match(/^\\/?#([\\w-]+)$/);if(!m)return;const el=document.getElementById(m[1]);if(el){e.preventDefault();const W=window;const L=W.__ltLenis||W.__vcLenis||W.lenis;if(L&&L.scrollTo)L.scrollTo(el,{offset:-20});else el.scrollIntoView({behavior:\"smooth\",block:\"start\"});try{history.replaceState(null,\"\",\"#\"+m[1]);}catch(x){}}else if(href.startsWith(\"#\")){e.preventDefault();window.location.href=\"/\"+href;}}catch(x){}}// display text (section headlines, card h3): Inter Tight 600, tight (-.04em). With a section's Custom Fonts on, the picked font is used as is.\nconst HD=D=>({...D,letterSpacing:\"-.04em\"});// numbers in display type keep their columns (counters never jiggle)\nconst NUM={fontVariantNumeric:\"tabular-nums lining-nums\"};// ---- Button system: PILLS (radius 999), the same two the hero draws (.rbh-btn-p / .rbh-btn-g).\n// kinds: solid = the pill (ink face on light grounds, light face on dark ones) with a round LIME ARROW SEAT on the right that floods the whole pill on hover / focus, the label stays ink · ghost = a glass pill (night veil + blur + hairline on dark; outline on light) with a round lime LAMP that glows, fills white / ink on hover · quiet = a small ghost (42px) · ink = alias of solid.\n// Defaults: solid → arrow, no lamp · ghost / quiet → lamp, no arrow. Pass arrow / lamp to override. `sub` = a small second line above the label. Without href (or as=\"button\") it renders a <button>.\nconst BtnArrow=()=>/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const Btn=({href,label,kind=\"solid\",arrow,lamp,style,className,onClick,ariaLabel,cur,sub,as,state})=>{const kd=kind===\"ink\"?\"solid\":kind;const ar=arrow===undefined?kd===\"solid\":arrow;const lp=lamp===undefined?kd!==\"solid\":lamp;const inner=/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-face\",children:[lp&&/*#__PURE__*/_jsx(\"i\",{className:\"rb-btn-lamp\",\"aria-hidden\":true}),/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-l\",children:[sub?/*#__PURE__*/_jsx(\"span\",{className:\"rb-sub\",children:sub}):null,/*#__PURE__*/_jsx(\"span\",{className:\"rb-mark\",children:label})]}),ar&&/*#__PURE__*/_jsx(\"span\",{className:\"rb-btn-a\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(BtnArrow,{})})]});const cls=`rb-btn rb-${kd}${ar?\" rb-has-a\":\"\"}${sub?\" rb-two\":\"\"}${state===\"ok\"?\" is-ok\":\"\"}${className?\" \"+className:\"\"}`;if(as===\"button\"||!href)return /*#__PURE__*/_jsx(\"button\",{type:onClick?\"button\":\"submit\",className:cls,\"data-cur\":cur||\"go\",onClick:onClick,\"aria-label\":ariaLabel,style:style,children:inner});return /*#__PURE__*/_jsx(\"a\",{className:cls,\"data-cur\":cur||\"go\",href:href,target:/^https?:\\/\\//.test(href||\"\")?\"_blank\":undefined,rel:/^https?:\\/\\//.test(href||\"\")?\"noopener\":undefined,onClick:onClick||(e=>jumpTo(e,href)),\"aria-label\":ariaLabel,style:style,children:inner});};function useNearFocus(root,live){useEffect(()=>{if(!live||!root.current)return;const el=root.current;const f=e=>{const t=e.target;const sc=t.closest?.(\".rb-inring\");if(!sc)return;try{t.scrollIntoView({block:\"nearest\",inline:\"nearest\"});}catch(x){}};el.addEventListener(\"focusin\",f);return()=>el.removeEventListener(\"focusin\",f);},[live]);}// Roll — a rolling mono number: every digit is a 0–9 column that slides to its value; separators stay put. rm = no transition.\nconst Roll=({text,rm=false,cls})=>/*#__PURE__*/_jsx(\"span\",{className:`rb-roll${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,\"aria-hidden\":true,children:String(text).split(\"\").map((ch,i)=>/\\d/.test(ch)?/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg\",children:/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg-c\",style:{[\"--d\"]:+ch},children:[0,1,2,3,4,5,6,7,8,9].map(d=>/*#__PURE__*/_jsx(\"i\",{children:d},d))})},i):/*#__PURE__*/_jsx(\"span\",{className:\"rb-sep\",children:ch},i))});const Count=({to,on,rm=false,ms=1400,cls,style})=>{const v=useCount(to,on,rm,ms);return /*#__PURE__*/_jsx(\"span\",{className:`rb-count rb-num${cls?\" \"+cls:\"\"}`,style:style,\"aria-label\":String(to||\"\"),children:/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,children:v})});};// Md — mini markdown for CMS bodies: blank line = paragraph, \"## \" = h3, \"- \" = list item, \"> \" = quote, **bold**. Never dangerouslySetInnerHTML.\nconst mdInline=t=>String(t).split(/\\*\\*([^*]+)\\*\\*/g).map((x,i)=>i%2?/*#__PURE__*/_jsx(\"strong\",{children:x},i):x);const Md=({text,D,cls})=>{const lines=String(text||\"\").split(/\\n+/).map(l=>l.trim()).filter(Boolean);const out=[];let list=[];const flush=()=>{if(list.length){out.push(/*#__PURE__*/_jsx(\"ul\",{children:list.map((x,i)=>/*#__PURE__*/_jsx(\"li\",{children:mdInline(x)},i))},\"u\"+out.length));list=[];}};lines.forEach(l=>{if(l.startsWith(\"- \")){list.push(l.slice(2));return;}flush();if(l.startsWith(\"## \"))out.push(/*#__PURE__*/_jsx(\"h3\",{style:D?HD(D):undefined,children:l.slice(3)},out.length));else if(l.startsWith(\"> \"))out.push(/*#__PURE__*/_jsx(\"blockquote\",{children:mdInline(l.slice(2))},out.length));else out.push(/*#__PURE__*/_jsx(\"p\",{children:mdInline(l)},out.length));});flush();return /*#__PURE__*/_jsx(\"div\",{className:`rb-md${cls?\" \"+cls:\"\"}`,children:out});};const Rule=({on,dir=\"x\",delay=0,rm=false,style,cls})=>/*#__PURE__*/_jsx(\"i\",{className:`rb-rule-${dir}${on?\" is-on\":\"\"}${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,style:{[\"--dl\"]:`${delay}ms`,...style||{}},\"aria-hidden\":true});const IcoArrow=({s=15})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const IcoCheck=({s=12})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"3.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12.5l4.5 4.5L19 7.5\"})});const CSS_BASE=`\n:where(.mw){position:relative;z-index:10} .mw,.mw *{box-sizing:border-box;min-width:0} .rb-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;padding:0!important;margin:-1px!important;border:0!important} :where(.mw) a{color:inherit} html,body{overflow-x:clip}\n/* focus: a 3px ink ring with a light band (reads on paper, on plates and over a picture); inside dark boxes (.rb-dark / .rb-dk) the ring is paper */\n:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"]),[role=\"button\"]):focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--rb-cloud,#F8F8F5)!important}\n:where(.rb-dark,.rb-dk) :where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"])):focus-visible{outline-color:var(--rb-cloud,#F8F8F5)!important;box-shadow:0 0 0 2px var(--rb-night,#14161A)!important}\n:where(.rb-inring) :where(a[href],button,input,summary,[tabindex]):focus-visible,:where(a[href],button,input,summary,[tabindex]).rb-inring:focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:-3px!important;box-shadow:inset 0 0 0 5px var(--rb-cloud,#F8F8F5)!important}\n:where(.mw) :focus-visible{outline:3px solid var(--rb-ink,#14161A);outline-offset:2px}\n/* Stage 7: a control that takes focus never lands under the fixed header */\n:where(.mw) :where(a[href],button,input,select,textarea,summary,[tabindex]){scroll-margin-top:116px}\n/* TEXT-SAFE values per ground. --rb-mut = muted text (≥4.5:1 on paper, deeper paper and plates). --rb-acc = the accent as SMALL TEXT: deep lime mixed with ink on light grounds (the paper band), lime mixed with white on dark ones. The raw --rb-brass (acid lime #D4F542) is lime words / mono labels / dots on DARK and a fill behind ink text (seats, pills); never text on a light ground (1.4:1); --rb-pine (deep lime) is for fills. */\n.mw{--rb-bone2:color-mix(in srgb,var(--rb-bone) 90%,var(--rb-stone));--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent)}\n.rb-dark,.mw.rb-dark,.mw .rb-dk{--rb-mut:color-mix(in srgb,var(--rb-stone) 36%,var(--rb-cloud));--rb-acc:color-mix(in srgb,var(--rb-brass) 78%,var(--rb-cloud));--rb-ok:color-mix(in srgb,var(--rb-pine) 45%,var(--rb-cloud));--rb-hair:color-mix(in srgb,var(--rb-cloud) 16%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-cloud) 30%,transparent)}\n.mw.rb-dark .rb-lt,.mw .rb-dk .rb-lt{--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent);color:var(--rb-ink)}\n/* section grounds: rb-dark = night (--rb-night, the whole page) \\xb7 paper (default, the one RbReviews band) \\xb7 rb-paper2 = deeper paper (--rb-bone2) */\n.rb-sec{background:var(--rb-bone);color:var(--rb-ink)} .rb-sec.rb-paper2{background:var(--rb-bone2)} .rb-sec.rb-dark{background:var(--rb-night);color:var(--rb-cloud)}\n/* ---- Buttons: PILLS, radius 999, 56px high, label 14px / 600. Colours: --kf face \\xb7 --kl label \\xb7 --kh the fill on hover \\xb7 --klh label on hover \\xb7 --kr outline. */\n.rb-btn{position:relative;display:inline-flex;height:56px;padding:0;border:0;border-radius:999px;background:none;text-decoration:none;white-space:nowrap;font:inherit;line-height:1;cursor:pointer;-webkit-appearance:none;appearance:none;color:var(--kl)!important;-webkit-tap-highlight-color:transparent;--lamp:var(--rb-brass)}\n.rb-btn-face{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;width:100%;height:100%;padding:0 22px;border-radius:999px;overflow:hidden;isolation:isolate;background:var(--kf);color:var(--kl);box-shadow:var(--kr,none);font-size:14px;font-weight:600;letter-spacing:.005em;transition:background .4s,color .4s,box-shadow .4s,transform .18s}\n.rb-btn:hover .rb-btn-face,.rb-btn:focus-visible .rb-btn-face{background:var(--kh);color:var(--klh);box-shadow:var(--krh,var(--kr,none))} .rb-btn:active .rb-btn-face{transform:scale(.965);transition-duration:.06s}\n.rb-btn-l{position:relative;z-index:1;display:inline-flex;flex-direction:column;justify-content:center;line-height:1.15} .rb-sub{display:block;font-size:10.5px;font-weight:500;letter-spacing:.04em;opacity:.78;margin-bottom:1px} .rb-mark{display:inline-block}\n/* the arrow seat: a round LIME seat inside the right end (= the hero's .rbh-btn-p); on hover / focus it floods the whole pill (one clip-path on a button-size layer) and the arrow turns from north-east to east */\n.rb-btn.rb-has-a .rb-btn-face{padding:0 8px 0 22px;transition:color .3s,box-shadow .4s,transform .18s} .rb-btn.rb-has-a:hover .rb-btn-face,.rb-btn.rb-has-a:focus-visible .rb-btn-face{background:var(--kf);color:var(--rb-ink)}\n.rb-btn.rb-has-a .rb-btn-face::before{content:\"\";position:absolute;inset:0;z-index:0;background:var(--rb-brass);clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px);transition:clip-path .55s cubic-bezier(.2,.8,.2,1)} .rb-btn.rb-has-a:hover .rb-btn-face::before,.rb-btn.rb-has-a:focus-visible .rb-btn-face::before{clip-path:inset(0 0 0 0 round 999px)}\n.rb-btn .rb-btn-a{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:40px;height:40px;color:var(--rb-ink)} .rb-btn .rb-btn-a svg{display:block;width:15px;height:15px;transform:rotate(-45deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)} .rb-btn:hover .rb-btn-a svg,.rb-btn:focus-visible .rb-btn-a svg{transform:none}\n/* the lamp: a small round LIME lamp that glows, with a round ping (ghost / quiet) = the hero's .rbh-lamp */\n.rb-btn-lamp{position:relative;z-index:1;flex:none;width:8px;height:8px;border-radius:50%;background:var(--lamp);box-shadow:0 0 10px var(--lamp)} .rb-btn-lamp::after{content:\"\";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--lamp);opacity:0;animation:rb-ping 2.6s ease-out infinite} @keyframes rb-ping{0%{opacity:.9;transform:scale(.5)}70%,100%{opacity:0;transform:scale(1.5)}}\n/* solid: ink pill + light label on light grounds; light pill + ink label on dark grounds (= the hero's main button). Without an arrow the whole pill turns lime. Label on lime is always ink (15:1). */\n.rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud);--kh:var(--rb-brass);--klh:var(--rb-ink)}\n.rb-dark .rb-btn.rb-solid,.mw .rb-dk .rb-btn.rb-solid{--kf:var(--rb-cloud);--kl:var(--rb-ink)} .rb-dark .rb-btn.rb-solid .rb-btn-face,.mw .rb-dk .rb-btn.rb-solid .rb-btn-face{box-shadow:0 12px 30px -14px color-mix(in srgb,#000 80%,transparent)}\n.mw.rb-dark .rb-lt .rb-btn.rb-solid,.mw .rb-dk .rb-lt .rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud)}\n/* ghost / quiet: an outline pill on light grounds; on dark grounds a GLASS pill (night veil 45 % + blur + white hairline, = the hero's .rbh-btn-g); on hover it fills with ink (light) or with white (dark) */\n.rb-btn.rb-ghost,.rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-dark .rb-btn.rb-ghost,.mw .rb-dk .rb-btn.rb-ghost,.rb-dark .rb-btn.rb-quiet,.mw .rb-dk .rb-btn.rb-quiet{--kf:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 45%,transparent);--kl:var(--rb-cloud);--kh:var(--rb-cloud);--klh:var(--rb-ink);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 56%,transparent);--krh:inset 0 0 0 1px var(--rb-cloud)} .rb-dark .rb-btn.rb-ghost .rb-btn-face,.mw .rb-dk .rb-btn.rb-ghost .rb-btn-face,.rb-dark .rb-btn.rb-quiet .rb-btn-face,.mw .rb-dk .rb-btn.rb-quiet .rb-btn-face{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}\n.mw.rb-dark .rb-lt .rb-btn.rb-ghost,.mw .rb-dk .rb-lt .rb-btn.rb-ghost,.mw.rb-dark .rb-lt .rb-btn.rb-quiet,.mw .rb-dk .rb-lt .rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-btn.rb-ghost .rb-btn-face,.rb-btn.rb-quiet .rb-btn-face{justify-content:center;gap:10px} .rb-btn.rb-ghost.rb-has-a .rb-btn-face,.rb-btn.rb-quiet.rb-has-a .rb-btn-face{justify-content:space-between}\n.rb-btn.rb-quiet{height:42px;border-radius:999px} .rb-btn.rb-quiet .rb-btn-face{padding:0 16px;gap:9px;font-size:12.5px;border-radius:999px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face{padding:0 5px 0 14px} .rb-btn.rb-quiet .rb-btn-a{width:32px;height:32px} .rb-btn.rb-quiet .rb-btn-a svg{width:13px;height:13px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face::before{clip-path:inset(5px 5px 5px calc(100% - 37px) round 999px)}\n.rb-btn:disabled,.rb-btn[aria-disabled=\"true\"]{opacity:.55;pointer-events:none}\n@media (max-width:600px),(hover:none){.mw .rb-btn{max-width:100%}}\n.mw button,.mw input,.mw select,.mw textarea{font-family:inherit}\n/* mono data lines + numbers */\n.rb-mono{font-size:11.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;line-height:1.5;font-variant-numeric:tabular-nums} .rb-num{font-variant-numeric:tabular-nums lining-nums} .rb-lbl{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-mut)}\n/* a live lamp: a small round LIME dot that glows, with a slow round ping (.is-ok = steady deep lime) — the hero's pin dot in small */\n.rb-lit-dot{position:relative;display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--rb-brass);box-shadow:0 0 10px var(--rb-brass)} .rb-lit-dot::after{content:\"\";position:absolute;inset:-4px;border-radius:50%;box-shadow:0 0 0 1.5px var(--rb-brass);opacity:0;animation:rb-glow 2.6s ease-out infinite} @keyframes rb-glow{0%{opacity:.7;transform:scale(.5)}100%{opacity:0;transform:scale(1.5)}} .rb-lit-dot.is-ok{background:var(--rb-pine)} .rb-lit-dot.is-ok::after{animation:none}\n/* Plates: a plate over a photograph / on paper — soft, 8px radius, hairline, a soft drop so it lifts off a picture; on dark grounds use .rb-plate.rb-dark = the night-glass plate (veil + hairline, as the hero pins). .rb-frame = a picture frame (8px radius, clips its image; night ground on dark sections so nothing flashes paper). CASCADE-ORDER LAW: every component re-injects this base CSS, so a LATER component's .rb-plate beats an earlier component's single-class rule: a component that overrides a base class on the same element uses 2+ classes (.rbh-score.rb-plate{…}). */\n.rb-frame{position:relative;overflow:hidden;border-radius:8px;background:var(--rb-bone2)} .mw.rb-dark .rb-frame,.mw .rb-dk .rb-frame{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))} .rb-frame>img{display:block;width:100%;height:100%;object-fit:cover}\n.rb-plate{position:relative;border-radius:8px;background:var(--rb-cloud);color:var(--rb-ink);box-shadow:inset 0 0 0 1px var(--rb-hair),0 1px 2px color-mix(in srgb,var(--rb-ink) 8%,transparent),0 10px 28px -12px color-mix(in srgb,var(--rb-ink) 28%,transparent)}\n.rb-plate.rb-dark,.mw .rb-dk{background:var(--rb-night);color:var(--rb-cloud)} .rb-plate.rb-dark{background:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 78%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 18%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}\n/* Chips: small mono PILLS (radius 999; tool names, kinds, week labels). Add the mono font with style={M}.\n   .rb-chip = hairline outline \\xb7 .is-amb = THE LIME PILL (ink on lime: the kind chip, the week label, the unit) \\xb7 .is-plate = ink on white (over pictures / on dark) \\xb7 .is-ink = white on ink (flips to ink on white on dark grounds) \\xb7 .is-acc = accent text (AA) \\xb7 button.rb-chip / a.rb-chip = a filter / brief chip: hover fills ink (white on dark), [aria-pressed=\"true\"] / .is-on = lime pill */\n.rb-chip{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px;border:0;border-radius:999px;background:none;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap;text-decoration:none;box-shadow:inset 0 0 0 1px var(--rb-hair2);color:inherit} .rb-chip.is-acc{color:var(--rb-acc)} .rb-chip.is-ok{color:var(--rb-ok)}\n.rb-chip.is-amb,.rb-dark .rb-chip.is-amb,.mw .rb-dk .rb-chip.is-amb{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none} .rb-chip.is-plate,.rb-dark .rb-chip.is-plate,.mw .rb-dk .rb-chip.is-plate{background:var(--rb-cloud);color:var(--rb-ink);box-shadow:none} .rb-chip.is-ink{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark .rb-chip.is-ink,.mw .rb-dk .rb-chip.is-ink{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip,a.rb-chip{height:34px;padding:0 14px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .3s,color .3s,box-shadow .3s} button.rb-chip:hover,a.rb-chip:hover{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark button.rb-chip:hover,.mw .rb-dk button.rb-chip:hover,.rb-dark a.rb-chip:hover,.mw .rb-dk a.rb-chip:hover{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip[aria-pressed=\"true\"],button.rb-chip.is-on,a.rb-chip.is-on,.rb-dark button.rb-chip[aria-pressed=\"true\"],.mw .rb-dk button.rb-chip[aria-pressed=\"true\"]{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none}\n/* LIME WORDS as an inline mark (lime text on dark, deep lime on the paper band — never a plate) and the step number (\\xab01\\xbb, \\xabStep 02 / 05\\xbb; add style={M}) */\n.rb-amb{font-style:normal;color:var(--rb-acc)} .mw.rb-dark .rb-amb,.mw .rb-dk .rb-amb{color:var(--rb-brass)} .mw.rb-dark .rb-lt .rb-amb,.mw .rb-dk .rb-lt .rb-amb{color:var(--rb-acc)}\n.rb-stn{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--rb-mut)} .rb-stn b{font-weight:inherit;color:var(--rb-acc)}\n/* Roll */ .rb-roll{display:inline-flex;align-items:flex-start;white-space:nowrap;font-variant-numeric:tabular-nums} .rb-dg{display:inline-block;height:1em;overflow:hidden;vertical-align:top} .rb-dg-c{display:flex;flex-direction:column;transform:translateY(calc(var(--d) * -1em));transition:transform .55s cubic-bezier(.3,.9,.3,1)} .rb-dg-c i{display:block;height:1em;line-height:1em;font-style:normal} .rb-sep{display:inline-block;height:1em;line-height:1em} .rb-roll.is-rm .rb-dg-c,.mw[data-kb] .rb-dg-c{transition:none}\n/* Rules */ .rb-rule-x,.rb-rule-y{display:block;background:var(--rb-hair);transform-origin:0 0;transition:transform 1.1s cubic-bezier(.2,.8,.2,1) var(--dl,0ms)} .rb-rule-x{width:100%;height:1px;transform:scaleX(0)} .rb-rule-y{width:1px;height:100%;transform:scaleY(0)} .rb-rule-x.is-on{transform:scaleX(1)} .rb-rule-y.is-on{transform:scaleY(1)} .rb-rule-x.is-rm,.rb-rule-y.is-rm,.mw[data-kb] .rb-rule-x,.mw[data-kb] .rb-rule-y{transition:none}\n/* Count */ .rb-count{display:inline-block;white-space:nowrap}\n/* Md */ .rb-md{display:grid;gap:14px;font-size:16.5px;line-height:1.6} .rb-md p,.rb-md ul,.rb-md h3,.rb-md blockquote{margin:0} .rb-md h3{margin-top:14px;font-size:clamp(24px,2vw,30px);line-height:1.15} .rb-md ul{padding-left:1.1em;display:grid;gap:6px} .rb-md strong{font-weight:600} .rb-md blockquote{padding-left:16px;border-left:3px solid var(--rb-brass);font-size:1.1em}\n/* HEIGHT LAW: a block whose content swaps stacks all items in ONE grid cell so the tallest reserves the height */ .rb-swap{display:grid} .rb-swap>*{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s} .rb-swap>.is-on{opacity:1;visibility:visible;transition:opacity .5s ease}\n@media (prefers-reduced-motion:reduce){.rb-btn-lamp::after,.rb-lit-dot::after{animation:none!important} .mw *,.sth *{animation-duration:.01ms!important;transition-duration:.01ms!important}}\n`;// ===== RUNBOOK motion layer (composed by mk.py after _common) =====\n// One shared rAF (onTick). Sections write --sp (0 = top edge enters the viewport bottom → 1 = bottom edge leaves the top) and,\n// for tall pinned wrappers, --pp (0 = wrapper top hits the viewport top → 1 = wrapper bottom hits the viewport bottom). IO-gated.\nconst SCRUB_K=.18;// Decode a section's photos while it is still a screen and a half away, so the first frame it is on screen never waits for a decode.\nfunction usePre(el){try{const io=new IntersectionObserver(es=>{if(!es[0].isIntersecting)return;io.disconnect();el.querySelectorAll(\"img\").forEach(im=>{try{im.loading=\"eager\";im.decode().catch(()=>{});}catch(e){}});},{rootMargin:\"150% 0px 150% 0px\"});io.observe(el);}catch(e){}}function focusTo(el,frac){if(!el||typeof window===\"undefined\")return;if(window.innerWidth<810)return;const r=el.getBoundingClientRect();const vh=window.innerHeight;if(r.height<=vh*1.05)return;const y=r.top+window.scrollY+(r.height-vh)*Math.min(1,Math.max(0,frac));if(Math.abs(window.scrollY-y)<8)return;const w=window;if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}function useScrollVars(ref,live,rm,cb){useEffect(()=>{if(!live||rm||!ref.current)return;const el=ref.current;let vis=true,last=-9,cs=-1,cp=-1,settled=false;usePre(el);const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"25% 0px 25% 0px\"});io.observe(el);// eased scrub: the values glide toward the true scroll position (K per frame), so wheel steps never jump a pinned scene\nlet rt=0,rh=0,vh=1,fresh=false;const read=()=>{if(!vis&&settled){fresh=false;return;}const r=el.getBoundingClientRect();rt=r.top;rh=r.height;vh=window.innerHeight||1;fresh=true;};const off=onTick(()=>{if(!fresh)return;const sp=clamp01((vh-rt)/(vh+rh));const pp=rh>vh*1.05?clamp01(-rt/(rh-vh)):sp;if(cs<0){cs=sp;cp=pp;}else{cs+=(sp-cs)*SCRUB_K;cp+=(pp-cp)*SCRUB_K;if(Math.abs(sp-cs)<5e-4)cs=sp;if(Math.abs(pp-cp)<5e-4)cp=pp;}settled=cs===sp&&cp===pp;if(Math.abs(cs+cp-last)<3e-4)return;last=cs+cp;el.style.setProperty(\"--sp\",cs.toFixed(4));el.style.setProperty(\"--pp\",cp.toFixed(4));if(cb)cb(cs,cp);},read);return()=>{off();io.disconnect();};},[live,rm]);}// STAGE — false while the loader or the page-transition cover is on screen (html.rb-hold-*), so first-screen intros play AFTER the cover lifts, never under it. 9 s safety.\nfunction useStage(live){const[r,setR]=useState(false);useEffect(()=>{if(!live)return;const h=document.documentElement;const ok=()=>!/(^|\\s)rb-hold/.test(h.className);if(ok()){setR(true);return;}const mo=new MutationObserver(()=>{if(ok()){mo.disconnect();setR(true);}});mo.observe(h,{attributes:true,attributeFilter:[\"class\"]});const t=window.setTimeout(()=>{mo.disconnect();setR(true);},9e3);return()=>{mo.disconnect();window.clearTimeout(t);};},[live]);return r;}// true once the element has entered the viewport (stays true) — and only once the stage is clear. Reduced motion = true at once.\nfunction useOn(ref,live,rm,amount=.16){const[on,setOn]=useState(false);const still=useStill();const ready=useStage(live);useEffect(()=>{if(!live)return;if(rm){setOn(true);return;}if(!ready)return;const el=ref.current;if(!el)return;let off=()=>{};// keyboard focus: mark the section FIRST and flush styles, so the reveal that follows runs with instant transitions (a transition keeps the timing it started with)\nconst fin=e=>{try{if(e.target.matches(\":focus-visible\")){el.setAttribute(\"data-kb\",\"\");void el.offsetWidth;}}catch(x){}setOn(true);};const fout=e=>{if(!el.contains(e.relatedTarget))el.removeAttribute(\"data-kb\");};el.addEventListener(\"focusin\",fin);el.addEventListener(\"focusout\",fout);const io=new IntersectionObserver(es=>{for(const e of es)if(e.isIntersecting){io.disconnect();// IO ignores occlusion: under a curtain (Reveal) wait until about a quarter of it is uncovered\noff=onTick(()=>{const rev=el.closest(\".rb-rev.is-act\");const rv=rev?parseFloat(rev.style.getPropertyValue(\"--rv\")||\"0\"):1;if(rv>.24){setOn(true);off();}});}},{threshold:Math.min(amount,Math.max(.005,window.innerHeight*.3/Math.max(1,el.offsetHeight))),rootMargin:\"0px 0px -6% 0px\"});io.observe(el);return()=>{io.disconnect();off();el.removeEventListener(\"focusin\",fin);el.removeEventListener(\"focusout\",fout);};},[live,rm,ready]);return on||still;}// CURTAIN REVEAL — the section is pinned BEHIND the one above it and is uncovered as that one lifts away (the footer movement, for any section).\n// Wrapper = section + a spacer of T, pulled up by T (page length unchanged); the section is sticky for exactly T of scroll. T = min(section height, 100svh):\n// a tall section pins at the top, a short one sits on the bottom edge of the viewport. The section ABOVE needs a higher Layer (z-index).\nfunction Reveal({on,layer=9,style,children}){const live=useLive();const rm=useReduced();const wrap=useRef(null);const inner=useRef(null);const sp=useRef(null);const[h,setH]=useState(0);const[kb,setKb]=useState(false);// keyboard users get the footer as a normal section: a curtain taller than the screen hides its top row under the page above / the fixed header\nconst act=on&&live&&!rm&&h>0&&!kb;useEffect(()=>{if(!on||!live||rm||!inner.current)return;const el=inner.current;const m=()=>setH(el.offsetHeight);m();const ro=new ResizeObserver(m);ro.observe(el);return()=>ro.disconnect();},[on,live,rm]);useEffect(()=>{if(!act||!wrap.current)return;const el=wrap.current;let vis=true,last=-1;const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"30% 0px 30% 0px\"});io.observe(el);let cur=-1,T=0,vh=1,top=0,fresh=false;const read=()=>{if(!vis){fresh=false;return;}T=sp.current?sp.current.offsetHeight:0;vh=window.innerHeight;top=el.getBoundingClientRect().top;fresh=true;};const off=onTick(()=>{if(!fresh||!T)return;const rv=clamp01((vh-T-top)/T);if(cur<0||el.dataset.snap){cur=rv;delete el.dataset.snap;}else{cur+=(rv-cur)*SCRUB_K;if(Math.abs(rv-cur)<5e-4)cur=rv;}if(Math.abs(cur-last)<4e-4)return;last=cur;el.style.setProperty(\"--rv\",cur.toFixed(4));},read);return()=>{off();io.disconnect();};},[act]);return /*#__PURE__*/_jsxs(\"div\",{ref:wrap,className:`rb-rev${act?\" is-act\":\"\"}`,style:{...style||{},[\"--h\"]:`${h}px`,[\"--layer\"]:layer},onFocusCapture:e=>{if(!act||!wrap.current)return;try{if(e.target.matches(\":focus-visible\")){const t0=e.target;setKb(true);requestAnimationFrame(()=>requestAnimationFrame(()=>{try{t0.scrollIntoView({block:\"center\"});}catch(x){}}));return;}}catch(x){}const t=e.target;const w=window;const r=wrap.current.getBoundingClientRect();const T=sp.current?sp.current.offsetHeight:0;const y=Math.max(0,Math.min(document.documentElement.scrollHeight-window.innerHeight,r.top+window.scrollY-window.innerHeight+2*T));if(Math.abs(window.scrollY-y)>4){if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}wrap.current.dataset.snap=\"1\";requestAnimationFrame(()=>{try{const q=t.getBoundingClientRect();if(q.top<0||q.bottom>window.innerHeight)t.scrollIntoView({block:\"nearest\"});}catch(x){}});},children:[/*#__PURE__*/_jsx(\"div\",{ref:inner,className:\"rb-rev-in\",children:children}),/*#__PURE__*/_jsx(\"div\",{ref:sp,className:\"rb-rev-sp\",\"aria-hidden\":true})]});}const REVEAL_CONTROLS={reveal:{type:ControlType.Boolean,title:\"Reveal\",description:\"Curtain: this section waits behind the one above and is uncovered as that one lifts away\",enabledTitle:\"Curtain\",disabledTitle:\"Off\",defaultValue:true},layer:{type:ControlType.Number,title:\"Layer\",description:\"Stacking order. Must be LOWER than the section above (sections default to 10)\",min:0,max:20,step:1,displayStepper:true,defaultValue:9,hidden:p=>p.reveal===false}};const splitWords=s=>String(s||\"\").replace(/\\*([^*]+)\\*/g,(_m,g)=>g.trim().split(/\\s+/).map(w=>{const m=w.match(/^(.*?)([.,!?;:’']*)$/);return m&&m[1]?`*${m[1]}*${m[2]}`:w;}).join(\" \")).split(/\\s+/).filter(Boolean).map(t=>{const m=t.match(/^\\*(.+?)\\*([.,!?;:’']*)$/);return m?{t:m[1],tail:m[2],acc:true}:{t:t.replace(/\\*/g,\"\"),tail:\"\",acc:false};});const plainOf=s=>String(s||\"\").replace(/\\*/g,\"\").replace(/\\s*\\|\\s*/g,\" \").replace(/\\s+/g,\" \").trim();// Head — the section headline (Inter Tight 600, -.04em): its words rise out of masks. \"|\" forces a line break, *stars* around a phrase = LIME WORDS (color var(--rb-brass) on dark, --rb-acc on the paper band; no plate — the same mark as the hero headline «running *itself.*»).\nconst Head=({text,on,D,tag=\"h2\",size=\"clamp(40px,4.3vw,64px)\",lh=1.04,delay=0,step=55,style,className})=>{const Tag=tag;let k=0;if(!String(text||\"\").trim())return null;return /*#__PURE__*/_jsx(Tag,{className:`rb-hd${on?\" is-on\":\"\"}${tag===\"h1\"?\" is-ssr\":\"\"}${className?\" \"+className:\"\"}`,\"aria-label\":plainOf(text),style:{...HD(D),fontSize:size,lineHeight:lh,...style||{}},children:String(text).split(\"|\").map((line,li)=>/*#__PURE__*/_jsx(\"span\",{className:\"rb-hd-l\",\"aria-hidden\":true,children:splitWords(line).map((w,i)=>{const d=delay+k++*step;return /*#__PURE__*/_jsxs(\"span\",{className:`rb-hd-w${w.acc?\" is-accw\":\"\"}`,children:[/*#__PURE__*/_jsx(\"span\",{className:`rb-hd-i${w.acc?\" is-acc\":\"\"}`,style:{transitionDelay:`${d}ms`,[\"--pd\"]:`${d+500}ms`,[\"--dl\"]:`${d}ms`},children:w.acc?/*#__PURE__*/_jsxs(\"span\",{className:\"rb-it\",children:[w.t,w.tail,/*#__PURE__*/_jsx(\"svg\",{className:\"rb-spark\",viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5C12.9 8 16 11.1 22.5 12 16 12.9 12.9 16 12 22.5 11.1 16 8 12.9 1.5 12 8 11.1 11.1 8 12 1.5Z\"})})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[w.t,w.tail]})}),\" \"]},i);})},li))});};const Eyebrow=({text,on,M,delay=0,style})=>text&&String(text).trim()?/*#__PURE__*/_jsxs(\"p\",{className:`rb-eb${on?\" is-on\":\"\"}`,style:{...M,transitionDelay:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"i\",{className:\"rb-lit-dot\",\"aria-hidden\":true}),text]}):null;// COME TO LIGHT — a photo box that enters under a dark grade and clears when `on` (or an ancestor .is-on), on hover and on keyboard focus of a wrapping link. Children (caption plates) sit above the grade.\nconst Lit=({src,alt=\"\",on,ratio=\"4/5\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",focus=\"50% 50%\",delay=0,hold=false,eager=false,className,style,children})=>{const im=RS(src,sizes);return /*#__PURE__*/_jsxs(\"span\",{className:`rb-dusk${on?\" is-on\":\"\"}${hold?\" is-hold\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,[\"--dd\"]:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus}}),children]});};// count-up for a stat (\"2,140\", \"91¢\", \"$184,200\", \"38\"): keeps prefix, suffix and thousands commas; SSR and reduced motion show the final value.\nfunction useCount(target,on,rm,ms=1400){const m=String(target||\"\").match(/^([^\\d-]*)(-?[\\d,]*\\.?\\d+)(.*)$/);const[v,setV]=useState(1);useEffect(()=>{if(!m||rm||!on){setV(1);return;}let raf=0,t0=0;setV(0);const step=t=>{if(!t0)t0=t;const k=clamp01((t-t0)/ms);setV(1-Math.pow(1-k,3));if(k<1)raf=requestAnimationFrame(step);};raf=requestAnimationFrame(step);return()=>cancelAnimationFrame(raf);},[on,rm,target]);if(!m)return String(target||\"\");const num=parseFloat(m[2].replace(/,/g,\"\"));const dec=(m[2].split(\".\")[1]||\"\").length;const cur=num*v;const txt=dec?cur.toFixed(dec):String(Math.round(cur));const withC=/,/.test(m[2])?txt.replace(/\\B(?=(\\d{3})+(?!\\d))/g,\",\"):txt;return m[1]+withC+m[3];}// one-shot rise for copy / rows\nconst rise=(on,d=0,y=22)=>({opacity:on?1:0,translate:on?\"0 0\":`0 ${y}px`,transition:`opacity .9s ease ${d}ms, translate 1s cubic-bezier(.2,.8,.2,1) ${d}ms`});// Image that UNMASKS through a shape as it enters, settles from a zoom, then drifts with scroll (needs --sp on an ancestor).\nconst SHAPES={up:[\"inset(100% 0 0 0)\",\"inset(0 0 0 0)\"],down:[\"inset(0 0 100% 0)\",\"inset(0 0 0 0)\"],left:[\"inset(0 100% 0 0)\",\"inset(0 0 0 0)\"],right:[\"inset(0 0 0 100%)\",\"inset(0 0 0 0)\"],diag:[\"polygon(0 100%,0 100%,0 100%,0 100%)\",\"polygon(0 -160%,260% 100%,0 100%,0 100%)\"],iris:[\"circle(0% at 50% 55%)\",\"circle(85% at 50% 55%)\"],slit:[\"inset(0 50% 0 50%)\",\"inset(0 0 0 0)\"]};const Um=({src,alt=\"\",on,shape=\"up\",ratio=\"4/5\",delay=0,par=1,focus=\"50% 40%\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",style,className,eager=false})=>{const sh=SHAPES[shape]||SHAPES.up;const im=RS(src,sizes);return /*#__PURE__*/_jsx(\"div\",{className:`rb-um${on?\" is-on\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,clipPath:on?sh[1]:sh[0],WebkitClipPath:on?sh[1]:sh[0],transitionDelay:`${delay}ms`,[\"--par\"]:par,...style||{}},children:/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus,transitionDelay:`${delay}ms`}})});};const CSS_MOTION=`\n.mw[data-kb] *,.mw[data-kb] *::before,.mw[data-kb] *::after,.mw [data-kb],.mw [data-kb] *,.mw [data-kb] *::before,.mw [data-kb] *::after{transition:none!important}\n.rb-sec{position:relative;z-index:10;display:block;width:100%;--sp:.5;--pp:0}\n.rb-rev{position:relative;width:100%;--rv:1} .rb-rev-in{position:relative} .rb-rev-sp{height:0}\n.rb-rev.is-act{--rv:0;--t:min(var(--h),100vh);--t:min(var(--h),100svh);z-index:var(--layer,9);margin-top:calc(var(--t)*-1)}\n.rb-rev.is-act>.rb-rev-in{position:sticky;top:calc(100vh - var(--t));top:calc(100svh - var(--t))} .rb-rev.is-act>.rb-rev-sp{height:var(--t)}\n/* the lifting edge throws a shadow on the section beneath, and that section comes out of the dark as it is uncovered */\n.rb-rev.is-act>.rb-rev-in::before{content:\"\";position:absolute;z-index:40;left:0;right:0;top:0;height:120px;translate:0 calc((1 - var(--rv))*var(--t));background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0));opacity:min(1,calc(var(--rv)*(1 - var(--rv))*9));pointer-events:none}\n.rb-rev.is-act>.rb-rev-in::after{content:\"\";position:absolute;z-index:39;left:0;right:0;top:0;height:var(--t);background:#000;opacity:calc((1 - var(--rv))*.16);pointer-events:none}\n.rb-wrap{--pad:56px;width:100%;max-width:calc(${MAXW} + var(--pad)*2);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}\n.rb-eb{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;margin:0;padding:0;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;color:var(--rb-acc);opacity:0;translate:0 10px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.8,.2,1)} .rb-eb.is-on{opacity:1;translate:0 0}\n.rb-eb i{order:-1;margin-right:2px}\n.mw .rb-eb{color:var(--rb-ink)} .mw.rb-dark .rb-eb,.mw .rb-dk .rb-eb{color:var(--rb-cloud)} .mw.rb-dark .rb-lt .rb-eb,.mw .rb-dk .rb-lt .rb-eb{color:var(--rb-ink)}\n.rb-band .rb-eb{padding:6px 14px 6px 12px;border-radius:999px;background:var(--rb-ink);color:var(--rb-bone)} .rb-band .rb-eb .rb-lit-dot{background:var(--rb-brass)} .rb-band .rb-eb .rb-lit-dot::after{background:radial-gradient(circle,color-mix(in srgb,var(--rb-brass) 70%,transparent),transparent 70%)} .rb-band .rb-lt .rb-eb{padding:0;background:none;color:var(--rb-acc)}\n.rb-hd{margin:0;letter-spacing:-.02em;text-wrap:balance} .rb-hd-l{display:block}\n.rb-hd-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .04em .2em;margin:-.06em -.04em -.2em;white-space:pre} .rb-hd-w.is-accw{padding-left:.07em;padding-right:.1em;margin-left:-.07em;margin-right:-.1em}\n.rb-hd-i{position:relative;display:inline-block;translate:0 108%;transition:translate 1.05s cubic-bezier(.2,.85,.15,1)}\n.rb-hd.is-on .rb-hd-i{translate:0 0}\n/* page h1: rises by CSS from the server HTML (no wait for hydration); paused only while a loader / transition cover holds the page */\n@keyframes rb-hd-rise{from{translate:0 108%}to{translate:0 0}}\n.rb-hd.is-ssr .rb-hd-i{animation:rb-hd-rise .8s cubic-bezier(.2,.85,.15,1) var(--dl,0ms) both}\nhtml[class*=\"rb-hold\"] .rb-hd.is-ssr .rb-hd-i{animation-play-state:paused}\n.rb-hd-w.is-accw{overflow:hidden}\n/* the starred words: LIME TEXT, no plate (a body may re-colour them with --rb-capfg) */\n.rb-it{position:relative;display:inline-block;font-style:normal;padding:0;margin:0;border-radius:0;background:none;color:var(--rb-capfg,var(--rb-acc))}\n.mw.rb-dark .rb-it,.mw .rb-dk .rb-it{color:var(--rb-capfg,var(--rb-brass))} .mw.rb-dark .rb-lt .rb-it,.mw .rb-dk .rb-lt .rb-it{color:var(--rb-capfg,var(--rb-acc))}\n.rb-spark{display:none}\n\n.rb-um{position:relative;overflow:hidden;transition:clip-path 1.35s cubic-bezier(.7,0,.2,1);background:var(--rb-bone2)} .mw.rb-dark .rb-um,.mw .rb-dk .rb-um{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))}\n.rb-um img{position:absolute;left:0;top:-9%;width:100%;height:118%;display:block;object-fit:cover;scale:1.04;translate:0 calc((var(--sp,.5) - .5)*var(--par,1)*-7%);transition:scale 1.9s cubic-bezier(.16,.84,.24,1);user-select:none}\n.rb-um.is-on img{scale:1}\n/* diagonal cuts: the section hangs over its neighbour and is cut on a slope (clip-path, so the neighbour shows through) */\n.rb-cut-t{margin-top:calc(var(--cut,7vw)*-1);clip-path:polygon(0 var(--cut,7vw),100% 0,100% 100%,0 100%);padding-top:var(--cut,7vw)}\n.rb-cut-b{margin-bottom:calc(var(--cut,7vw)*-1);padding-bottom:var(--cut,7vw)}\n.rb-cut-t.rb-cut-b{clip-path:polygon(0 var(--cut,7vw),100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n.rb-cut-b:not(.rb-cut-t){clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n@media (max-width:1099px){.rb-wrap{--pad:40px}}\n@media (max-width:699px){.rb-wrap{--pad:20px}}\n@media (prefers-reduced-motion:reduce){.rb-hd-i{translate:0 0!important} .rb-hd.is-ssr .rb-hd-i{animation:none!important} .rb-spark{scale:1!important;rotate:0deg!important;animation:none!important} .rb-um{clip-path:none!important} .rb-um img{scale:1!important;translate:0 0!important}}\n`;const SEED={site:[{\"slug\":\"site\",\"f1\":\"Runbook\",\"f2\":\"Business automation agency\",\"f3\":\"We wire your CRM, invoicing, onboarding and support into workflows that run while the office sleeps.\",\"f4\":\"hello@runbook.agency\",\"f5\":\"/book\",\"f6\":\"/results\",\"f7\":\"Business automation agency \\xb7 Since 2019\",\"f8\":\"1,284 tasks ran for our clients last night\",\"f9\":\"/workflows\",\"img\":\"https://framerusercontent.com/images/kltvaH90N1EBZgMRovsYhy45bk0.webp\",\"f10\":\"An open-plan office at dusk, screens still lit\"}]};const SW_BUILD=\"RbHeader@cms1\";// An override control wins only when it holds real text; empty (or a single space) inherits from the CMS.\nconst pick=(o,fb)=>o!==undefined&&o!==null&&String(o).trim()?String(o).trim():fb;const imgOf=(r,k=\"img\")=>String(r&&r[k]||\"\").split(\"?\")[0];// A cleared CMS image draws this quiet placeholder — never a stock photo, and list positions stay aligned with their rows.\nconst EMPTY_IMG=\"data:image/svg+xml;utf8,\"+encodeURIComponent(\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 500' preserveAspectRatio='xMidYMid slice'><rect width='400' height='500' fill='#DDDFD9'/><rect x='120' y='170' width='160' height='160' rx='3' fill='none' stroke='#8A8E90' stroke-width='1.5'/><rect x='100' y='150' width='200' height='200' rx='4' fill='none' stroke='#B9BCB6' stroke-width='1' stroke-dasharray='2 6'/></svg>\");const imgOr=(r,k=\"img\")=>imgOf(r,k)||EMPTY_IMG;const cmsNum=(r,k,fb=0)=>{const v=parseFloat(String((r&&r[k])??\"\"));return isFinite(v)?v:fb;};const useIso=typeof window===\"undefined\"?useEffect:useLayoutEffect;function readCMS(kind){if(typeof document===\"undefined\")return null;if(!document.querySelector('[data-rb-row=\"bridge\"]'))return null;const seen=new Set;const out=[];document.querySelectorAll(`[data-rb-row=\"${kind}\"]`).forEach(el=>{const o={};for(const a of Array.from(el.attributes))if(a.name.startsWith(\"data-\"))o[a.name.slice(5)]=a.value;const key=o.slug||JSON.stringify(o);if(seen.has(key))return;seen.add(key);out.push(o);});return out.sort((a,b)=>(parseFloat(a.n1)||0)-(parseFloat(b.n1)||0));}function useCMS(kind,fallback){const[rows,setRows]=useState(fallback);const sig=useRef(\"\");useIso(()=>{let n=0,t=0,ok=0;try{const w=window;if(!w.__ltCms||typeof w.__ltCms!==\"object\")w.__ltCms={};w.__ltCms[SW_BUILD]=1;}catch(e){}const pull=()=>{const r=readCMS(kind);if(!r)return false;const s=JSON.stringify(r);if(s!==sig.current){sig.current=s;setRows(r);}return true;};const mo=new MutationObserver(()=>{if(pull()){ok++;if(ok>2)mo.disconnect();}});mo.observe(document.body,{childList:true,subtree:true});if(pull())ok++;const poll=()=>{if(n++<30){pull();t=window.setTimeout(poll,150);}};t=window.setTimeout(poll,150);return()=>{mo.disconnect();window.clearTimeout(t);};},[kind]);return rows;}// Row counts in headings: {workflows} {industries} {results} {tools} {posts} {reviews} {faq} = the live number of rows as digits (the kinds work too: {services} = Workflows, {cases} = Results, {machines} = Tools); a capital first letter ({Services}) = the number as a word (One … Twelve, digits above that). Server render = the shipped counts. A component may add its own list ({Steps}, {Pins}, {Values}).\nconst CMS_COUNT_FB={\"services\":5,\"industries\":6,\"cases\":6,\"machines\":6,\"reviews\":5,\"posts\":6,\"faq\":8};const CMS_NWORDS=\"Zero;One;Two;Three;Four;Five;Six;Seven;Eight;Nine;Ten;Eleven;Twelve\";function useCounts(extra){const[c,setC]=useState(CMS_COUNT_FB);const sig=useRef(\"\");useIso(()=>{let n=0,t=0;const pull=()=>{const o={};let any=false;for(const k of Object.keys(CMS_COUNT_FB)){const r=readCMS(k);if(r){o[k]=r.length;any=true;}else o[k]=CMS_COUNT_FB[k];}if(!any)return;const s=JSON.stringify(o);if(s!==sig.current){sig.current=s;setC(o);}};pull();const poll=()=>{if(n++<12){pull();t=window.setTimeout(poll,250);}};t=window.setTimeout(poll,250);return()=>window.clearTimeout(t);},[]);return extra?{...c,...extra}:c;}const CMS_ALIAS={workflows:\"services\",results:\"cases\",tools:\"machines\"};const countText=(s,c,words=CMS_NWORDS)=>{const W=String(words||CMS_NWORDS).split(\";\").map(x=>x.trim());return String(s==null?\"\":s).replace(/\\{([A-Za-z]+)\\}/g,(m,k)=>{const lk=String(k).toLowerCase();const n=c[lk]??c[CMS_ALIAS[lk]];if(typeof n!==\"number\")return m;const cap=k[0]!==k[0].toLowerCase();return cap&&W[n]?W[n]:String(n);});};// The one-row Site collection holds every site-wide fact. A section's \"… Override\" control only replaces it on that one section.\n// Site: f1 Name (Runbook) · f2 Descriptor · f3 Tagline · f4 Email · f5 Book Link (/book) · f6 Work Link (/results) · f7 Eyebrow · f8 Proof Line · f9 Services Link (/workflows) · img Picture (the hero office photograph H1, also social / about) · f10 Picture Alt\nfunction useSite(){const r=useCMS(\"site\",SEED.site||[]);const s=r[0]||(SEED.site||[])[0]||{};const g=k=>String(s[k]??\"\").trim();const im=k=>String(s[k]||\"\").split(\"?\")[0];return{name:g(\"f1\"),descriptor:g(\"f2\"),tagline:g(\"f3\"),email:g(\"f4\"),book:g(\"f5\")||\"/quote\",work:g(\"f6\")||\"/projects\",eyebrow:g(\"f7\"),proof:g(\"f8\"),services:g(\"f9\")||\"/capabilities\",picture:im(\"img\"),pictureAlt:g(\"f10\")};}// ---- Row readers (slots are fixed: see seed.py). Every reader takes an undefined row and returns empty strings, never throws.\nconst S_=(r,k)=>String(r&&r[k]||\"\").trim();const numOf=(v,fb=0)=>{const n=parseFloat(String(v??\"\").replace(/[^\\d.-]/g,\"\"));return isFinite(n)?n:fb;};const listOf=s=>String(s||\"\").split(\";\").map(x=>x.trim()).filter(Boolean);const linkList=s=>String(s||\"\").split(\",\").map(x=>x.trim()).filter(Boolean).map(x=>{const i=x.indexOf(\":\");return{l:i<0?x:x.slice(0,i).trim(),h:i<0?\"/\":x.slice(i+1).trim()};});const bySlug=(rows,slug)=>{const k=String(slug||\"\").trim();return k?rows.find(r=>r.slug===k):undefined;};// Workflows (kind \"services\"): f1 Name · f2 Line · f3 Body · f4 Tools it runs on (a; b; c → items[]) · f5 Event line («Invoice #4821 sent», the hero pin) · f6 Clock («02:14», the pin's mono time) · img Picture · n1 Order → /workflows/:slug\n// spec = EVENT (f5), lead = CLOCK (f6); question / price are the same two slots under their old names (the hero reads those).\nconst serviceOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),body:S_(r,\"f3\"),items:listOf(S_(r,\"f4\")),spec:S_(r,\"f5\"),lead:S_(r,\"f6\"),question:S_(r,\"f5\"),price:S_(r,\"f6\"),img:imgOr(r)});// Industries: f1 Name (Clinics, Agencies, E-commerce, Logistics, Legal, Real estate) · f2 Line · f3 Typical workflows (a, b, c → parts) · f4 Share of our clients (e.g. 24 %) · img Picture · n1 Order → /industries\nconst industryOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),parts:S_(r,\"f3\"),share:S_(r,\"f4\"),img:imgOr(r)});// Tools (kind \"machines\"): f1 Name = the tool CATEGORY we connect (CRM, Invoicing, Inbox, Helpdesk, Docs, Reporting) · f2 Category group (Sales / Finance / Comms / Support / Data = the filter chip → type) · f3 Line · f4 Connects to (product names a, b, c → envelope) · f5 Used in n workflows (→ tolerance) · f6 Since 2021 (→ count) · img Picture · n1 Order → /tools\nconst machineOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),type:S_(r,\"f2\"),line:S_(r,\"f3\"),envelope:S_(r,\"f4\"),tolerance:S_(r,\"f5\"),count:S_(r,\"f6\"),img:imgOr(r)});// Results (kind \"cases\"): f1 Client · f2 Sector (an Industries name) · f3 Workflow (a Workflows name → service) · f4 Number (−62 %) · f5 Unit (missed appointments, on the lime pill) · f6 Line · f7 Body · img Picture · f8 Year · n1 Order → /results/:slug\nconst caseOf=r=>({slug:S_(r,\"slug\"),client:S_(r,\"f1\"),sector:S_(r,\"f2\"),service:S_(r,\"f3\"),number:S_(r,\"f4\"),unit:S_(r,\"f5\"),line:S_(r,\"f6\"),body:S_(r,\"f7\"),img:imgOr(r),year:S_(r,\"f8\")});// Reviews: f1 Quote · f2 Person · f3 Role · f4 Company · img Picture · n1 Order\nconst reviewOf=r=>({slug:S_(r,\"slug\"),quote:S_(r,\"f1\"),person:S_(r,\"f2\"),role:S_(r,\"f3\"),company:S_(r,\"f4\"),img:imgOr(r)});// Posts: f1 Title · f2 Kind (Guide / Insight / Report) · f3 Line · f4 Body (mini markdown, see Md) · img Picture · f5 Date · f6 Read · n1 Order → /insights/:slug\nconst postOf=r=>({slug:S_(r,\"slug\"),title:S_(r,\"f1\"),kind:S_(r,\"f2\"),line:S_(r,\"f3\"),body:S_(r,\"f4\"),img:imgOr(r),date:S_(r,\"f5\"),read:S_(r,\"f6\")});// Faq: f1 Question · f2 Answer · n1 Order\nconst faqOf=r=>({slug:S_(r,\"slug\"),q:S_(r,\"f1\"),a:S_(r,\"f2\")});// ---- A seeded generator (mulberry32) so the server and the first client render draw the SAME shape.\nconst mulberry=a=>()=>{a|=0;a=a+1831565813|0;let t=Math.imul(a^a>>>15,1|a);t=t+Math.imul(t^t>>>7,61|t)^t;return((t^t>>>14)>>>0)/4294967296;};// The row a CMS detail page is about: the bound Slug control wins (server render included), else the last URL segment, else the first row.\nfunction useRow(kind,fallback,slug){const rows=useCMS(kind,fallback);const[path,setPath]=useState(\"\");useEffect(()=>{try{setPath(decodeURIComponent(window.location.pathname.split(\"/\").filter(Boolean).pop()||\"\"));}catch(e){}},[]);const want=String(slug||\"\").trim()||path;const row=rows.find(r=>r.slug===want)||rows[0]||{};return{row,rows};}// ===== RbHeader =====\n// ---- HEADER (Site Layout, once; a 0 px frame). The approved hero's nav made real, with the SAME geometry (84 px, 72 px on phones; brand left, links centred, the small light pill right),\n// so the home page does not jump when the hero's own nav is switched off. Brand = the lime round dot (with its soft ring) + «Runbook» in Inter Tight 600.\n// At the top of a page it sits bare on the picture (every page starts dark). Once the page has moved it is night glass with a hairline; it slides away on scroll down and returns on\n// scroll up (ONE transform on the inner bar: the fixed root itself never moves and stays 84 / 72 px at top 0). Tab into it and it returns.\n// Below 1200 px the links fold into a round menu key; the menu is a full-screen night sheet parented to <body>: the links as large Inter Tight rows that rise out of masks, each with its mono\n// number and a lime arrow seat, more links, the pill and the e-mail; focus kept inside, Esc closes, the page behind does not scroll, the rows keep 200 px of bottom room so the last link is\n// never under the Framer badge or a demo bar. Layout is CSS only (no width guess on the server). HEADER POSITION LAW: Framer's style (height:100%) is never spread onto the fixed root. ----\nconst RBHD_W=[\"Menu\",\"Close\",\"Skip to content\",\"Home\",\"home\",\"Main\",\"More\"];const rbhdWords=s=>{const g=String(s??\"\").split(\";\");return RBHD_W.map((d,i)=>(g[i]||\"\").trim()||d);};const rbhd2=n=>(n<10?\"0\":\"\")+n;/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 1440\n * @framerIntrinsicHeight 1\n */export default function RbHeader(props){const{links=\"Services:/workflows, Results:/results, Process:/process, Pricing:/pricing, About:/about\",more=\"Industries:/industries, Tools:/tools, Insights:/insights, Careers:/careers, FAQ:/faq, Contact:/contact\",cta=\"Book a call\",ctaLink=\"\",menuNote=\"A 20-minute call \\xb7 No prep needed\",hide=true,words=\"\"}=props;const c=colorsOf(props);const{D,B,M}=fontsOf(props);useFonts();const live=useLive();const still=useStill();const site=useSite();const W=rbhdWords(words);const[moved,setMoved]=useState(false),[hid,setHid]=useState(false),[open,setOpen]=useState(false),[path,setPath]=useState(\"\");const sheet=useRef(null),burger=useRef(null);const uid=useId().replace(/[^a-zA-Z0-9]/g,\"\");const L=linkList(links),L2=linkList(more),go=pick(ctaLink,site.book),name=site.name||\"Runbook\";useEffect(()=>{if(!live)return;try{setPath(window.location.pathname.replace(/\\/+$/,\"\")||\"/\");}catch(e){}let raf=0,last=0;try{last=window.scrollY;}catch(e){}const read=()=>{raf=0;let y=0;try{y=window.scrollY;}catch(e){}setMoved(y>24);if(y<140)setHid(false);else if(y>last+6)setHid(true);else if(y<last-6)setHid(false);last=y;};const q=()=>{if(!raf)raf=requestAnimationFrame(read);};read();setHid(false);window.addEventListener(\"scroll\",q,{passive:true});return()=>{window.removeEventListener(\"scroll\",q);cancelAnimationFrame(raf);};},[live]);// menu: scroll lock (the smooth scroller is paused too), focus trap, Esc, close on a wide window\nuseEffect(()=>{if(!open)return;const h=document.documentElement;const y=window.scrollY;const prev=h.style.overflow;h.style.overflow=\"hidden\";document.body.style.overflow=\"hidden\";h.classList.add(\"rbhd-open\");const LN=window.__ltLenis;try{LN&&LN.stop&&LN.stop();}catch(e){}const foc=()=>Array.from((sheet.current||document).querySelectorAll(\"a[href],button\")).filter(x=>x.offsetParent!==null);const t=window.setTimeout(()=>{const f=foc();f[0]&&f[0].focus();},60);const key=e=>{if(e.key===\"Escape\"){setOpen(false);return;}if(e.key!==\"Tab\")return;const f=foc();if(!f.length)return;const a=document.activeElement;if(e.shiftKey&&(a===f[0]||!sheet.current?.contains(a))){e.preventDefault();f[f.length-1].focus();}else if(!e.shiftKey&&(a===f[f.length-1]||!sheet.current?.contains(a))){e.preventDefault();f[0].focus();}};const rs=()=>{if(window.innerWidth>=1200)setOpen(false);};window.addEventListener(\"keydown\",key,true);window.addEventListener(\"resize\",rs);return()=>{window.clearTimeout(t);h.style.overflow=prev;document.body.style.overflow=\"\";h.classList.remove(\"rbhd-open\");window.removeEventListener(\"keydown\",key,true);window.removeEventListener(\"resize\",rs);try{LN&&LN.start&&LN.start();}catch(e){}try{window.scrollTo(0,y);burger.current&&burger.current.focus();}catch(e){}};},[open]);const cur=h=>{const p=h.replace(/\\/+$/,\"\")||\"/\";return path===p||p!==\"/\"&&path.startsWith(p+\"/\");};const sty={...cssVars(c),...B};if(still)return /*#__PURE__*/_jsx(\"div\",{style:{...sty,height:1,position:\"relative\"},\"aria-hidden\":true});const skip=e=>{e.preventDefault();const h1=document.querySelector(\"h1\");if(h1){h1.setAttribute(\"tabindex\",\"-1\");h1.focus();}};const away=hide&&hid&&!open;const ext=/^https?:\\/\\//.test(go);const pill=(small,onClick)=>/*#__PURE__*/_jsxs(\"a\",{className:`rbhd-btn${small?\" is-s\":\"\"}`,href:go,target:ext?\"_blank\":undefined,rel:ext?\"noopener\":undefined,onClick:onClick,children:[/*#__PURE__*/_jsx(\"span\",{className:\"rbhd-btn-l\",children:cta}),/*#__PURE__*/_jsx(\"span\",{className:\"rbhd-btn-a\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(BtnArrow,{})})]});const brand=onClick=>/*#__PURE__*/_jsxs(\"a\",{className:\"rbhd-brand\",href:\"/\",\"aria-label\":`${name} ${W[4]}`,style:HD(D),onClick:onClick,children:[/*#__PURE__*/_jsx(\"i\",{\"aria-hidden\":true}),name]});return /*#__PURE__*/_jsxs(\"header\",{\"data-rbhd\":\"bar\",\"data-tone\":moved?\"solid\":\"picture\",\"data-hid\":away?\"1\":\"0\",className:`mw rb-dark rbhd${moved?\" is-moved\":\"\"}${away?\" is-away\":\"\"}`,style:{...sty,...props.style||{},height:undefined,width:undefined},children:[/*#__PURE__*/_jsx(\"link\",{rel:\"stylesheet\",href:FONTS}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:CSS_BASE+RBHD_CSS+siteFontCss(props)}}),/*#__PURE__*/_jsx(\"a\",{className:\"rbhd-skip\",href:\"#main\",onClick:skip,children:W[2]}),/*#__PURE__*/_jsx(\"div\",{className:\"rbhd-bar\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"rbhd-in\",children:[brand(),/*#__PURE__*/_jsx(\"nav\",{className:\"rbhd-nav\",\"aria-label\":W[5],children:/*#__PURE__*/_jsx(\"ul\",{children:L.map((l,i)=>/*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(\"a\",{href:l.h,\"aria-current\":cur(l.h)?\"page\":undefined,children:l.l})},i))})}),/*#__PURE__*/_jsxs(\"div\",{className:\"rbhd-end\",children:[cta.trim()?/*#__PURE__*/_jsx(\"span\",{className:\"rbhd-cta\",children:pill(true)}):null,/*#__PURE__*/_jsxs(\"button\",{ref:burger,type:\"button\",className:\"rbhd-burger\",\"aria-label\":open?W[1]:W[0],\"aria-expanded\":open,\"aria-controls\":`rbhd-sheet-${uid}`,onClick:()=>setOpen(!open),children:[/*#__PURE__*/_jsx(\"i\",{}),/*#__PURE__*/_jsx(\"i\",{})]})]})]})}),live&&open?/*#__PURE__*/createPortal(/*#__PURE__*/_jsxs(\"div\",{ref:sheet,id:`rbhd-sheet-${uid}`,\"data-rbhd\":\"sheet\",className:\"mw rb-dark rbhd-sheet\",role:\"dialog\",\"aria-modal\":\"true\",\"aria-label\":W[0],style:sty,children:[/*#__PURE__*/_jsxs(\"div\",{className:\"rbhd-top\",children:[brand(()=>setOpen(false)),/*#__PURE__*/_jsxs(\"button\",{type:\"button\",className:\"rbhd-burger is-x\",\"aria-label\":W[1],onClick:()=>setOpen(false),children:[/*#__PURE__*/_jsx(\"i\",{}),/*#__PURE__*/_jsx(\"i\",{})]})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"rbhd-body\",children:[/*#__PURE__*/_jsx(\"ul\",{className:\"rbhd-big\",children:[{l:W[3],h:\"/\"},...L].map((l,i)=>/*#__PURE__*/_jsx(\"li\",{style:{[\"--i\"]:i},children:/*#__PURE__*/_jsx(\"a\",{href:l.h,\"aria-current\":cur(l.h)?\"page\":undefined,onClick:()=>setOpen(false),children:/*#__PURE__*/_jsxs(\"span\",{className:\"rbhd-row\",children:[/*#__PURE__*/_jsx(\"span\",{className:\"rbhd-no\",style:M,\"aria-hidden\":true,children:rbhd2(i+1)}),/*#__PURE__*/_jsx(\"b\",{style:HD(D),children:l.l}),/*#__PURE__*/_jsx(\"span\",{className:\"rbhd-go\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(BtnArrow,{})})]})})},i))}),L2.length?/*#__PURE__*/_jsx(\"ul\",{className:\"rbhd-small\",\"aria-label\":W[6],children:L2.map((l,i)=>/*#__PURE__*/_jsx(\"li\",{children:/*#__PURE__*/_jsx(\"a\",{href:l.h,\"aria-current\":cur(l.h)?\"page\":undefined,onClick:()=>setOpen(false),children:l.l})},i))}):null]}),/*#__PURE__*/_jsxs(\"div\",{className:\"rbhd-foot\",children:[menuNote.trim()?/*#__PURE__*/_jsxs(\"p\",{className:\"rbhd-note\",style:M,children:[/*#__PURE__*/_jsx(\"i\",{\"aria-hidden\":true}),menuNote]}):null,cta.trim()?pill(false,()=>setOpen(false)):null,site.email?/*#__PURE__*/_jsx(\"a\",{className:\"rbhd-mail\",href:\"mailto:\"+site.email,children:site.email}):null]})]}),document.body):null]});}const RBHD_CSS=`\n.rbhd{--navh:84px;--pad:max(40px,calc((100vw - 1680px)/2 + 40px));--lime:var(--rb-brass);--veil:color-mix(in srgb,var(--rb-night) 90%,#000);--e:cubic-bezier(.2,.8,.2,1);position:fixed!important;z-index:900!important;left:0;right:0;top:0;height:var(--navh);pointer-events:none;color:var(--rb-cloud);font-size:16px;line-height:1.5}\n/* the inner bar is what slides away; the root keeps its box */\n.rbhd-bar{position:absolute;inset:0;transition:transform .55s var(--e)} .rbhd.is-away .rbhd-bar{transform:translate3d(0,-104%,0)} .rbhd.is-away:focus-within .rbhd-bar{transform:none}\n/* night glass with a hairline, drawn once the page has moved */\n.rbhd-bar::before{content:\"\";position:absolute;inset:0;z-index:0;background:color-mix(in srgb,var(--rb-night) 82%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 1px 0 color-mix(in srgb,var(--rb-cloud) 16%,transparent);opacity:0;transition:opacity .35s ease;pointer-events:none} .rbhd.is-moved .rbhd-bar::before{opacity:1}\n/* bare on the picture: a soft night veil of its own, so the links read wherever the photograph is bright */\n.rbhd-bar::after{content:\"\";position:absolute;left:0;right:0;top:0;bottom:-30px;z-index:0;background:linear-gradient(180deg,color-mix(in srgb,var(--veil) 52%,transparent) 0,color-mix(in srgb,var(--veil) 30%,transparent) 60%,transparent 100%);pointer-events:none;transition:opacity .35s ease} .rbhd.is-moved .rbhd-bar::after{opacity:0}\n.rbhd-in{position:relative;z-index:1;display:flex;align-items:center;gap:24px;height:100%;padding:0 var(--pad)} .rbhd-in>*{pointer-events:auto} .rbhd.is-away:not(:focus-within) .rbhd-in>*{pointer-events:none}\n.rbhd-skip{position:absolute;left:16px;top:-90px;z-index:3;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--lime);color:var(--rb-ink)!important;font-size:14px;font-weight:600;text-decoration:none;pointer-events:auto;transition:top .2s} .rbhd-skip:focus{top:14px}\n/* the brand: the hero's lime dot with its soft ring; the ring swells on hover */\n.rbhd-brand{flex:none;display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:24px;line-height:1;text-decoration:none;color:var(--rb-cloud)!important} .rbhd-brand i{flex:none;width:14px;height:14px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 25%,transparent);transition:box-shadow .45s var(--e)} .rbhd-brand:hover i,.rbhd-brand:focus-visible i{box-shadow:0 0 0 7px color-mix(in srgb,var(--lime) 30%,transparent),0 0 18px var(--lime)}\n/* the links: centred in the bar as on the hero; a white pill on hover, a lime dot under the current page */\n.rbhd-nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)} .rbhd-nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}\n.rbhd-nav a{position:relative;display:block;padding:10px 14px;border-radius:999px;font-size:14px;font-weight:500;line-height:1.2;text-decoration:none;white-space:nowrap;color:var(--rb-cloud)!important;transition:background .35s,color .35s} .rbhd-nav a:hover,.rbhd-nav a:focus-visible{background:var(--rb-cloud);color:var(--rb-ink)!important}\n.rbhd-nav a[aria-current]::after{content:\"\";position:absolute;left:50%;bottom:2px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--lime);box-shadow:0 0 8px var(--lime)}\n.rbhd-end{display:flex;align-items:center;gap:8px;margin-left:auto} .rbhd-cta{display:inline-flex}\n/* the hero's light pill: its round lime arrow seat floods the pill on hover */\n.rbhd-btn{position:relative;box-sizing:border-box;display:inline-flex;align-items:center;gap:16px;height:56px;padding:0 8px 0 22px;border-radius:999px;background:var(--rb-cloud);color:var(--rb-ink)!important;font-size:14px;font-weight:600;line-height:1;letter-spacing:.005em;text-decoration:none;white-space:nowrap;overflow:hidden;isolation:isolate;-webkit-tap-highlight-color:transparent;transition:transform .18s;box-shadow:0 12px 30px -14px color-mix(in srgb,var(--veil) 80%,transparent)} .rbhd-btn:active{transform:scale(.965);transition-duration:.06s}\n.rbhd-btn::before{content:\"\";position:absolute;inset:0;z-index:0;background:var(--lime);clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px);transition:clip-path .55s var(--e)} .rbhd-btn:hover::before,.rbhd-btn:focus-visible::before{clip-path:inset(0 0 0 0 round 999px)}\n.rbhd-btn-l{position:relative;z-index:1} .rbhd-btn-a{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:40px;height:40px;color:var(--rb-ink)} .rbhd-btn-a svg{display:block;width:15px;height:15px;transform:rotate(-45deg);transition:transform .5s var(--e)} .rbhd-btn:hover .rbhd-btn-a svg,.rbhd-btn:focus-visible .rbhd-btn-a svg{transform:none}\n.rbhd-btn.is-s{height:46px;gap:12px;padding:0 6px 0 16px;font-size:13px} .rbhd-btn.is-s::before{clip-path:inset(6px 6px 6px calc(100% - 40px) round 999px)} .rbhd-btn.is-s:hover::before,.rbhd-btn.is-s:focus-visible::before{clip-path:inset(0 0 0 0 round 999px)} .rbhd-btn.is-s .rbhd-btn-a{width:34px;height:34px} .rbhd-btn.is-s .rbhd-btn-a svg{width:13px;height:13px}\n/* the menu key: a round glass key with two bars */\n.rbhd-burger{position:relative;display:none;flex:none;width:46px;height:46px;border:0;border-radius:50%;background:color-mix(in srgb,var(--veil) 56%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 56%,transparent);color:var(--rb-cloud);cursor:pointer;-webkit-appearance:none;appearance:none;padding:0;transition:background .35s,color .35s,box-shadow .35s} .rbhd-burger:hover{background:var(--rb-cloud);color:var(--rb-ink)}\n.rbhd-burger i{position:absolute;left:14px;right:14px;height:2px;border-radius:2px;background:currentColor;transition:translate .35s,rotate .35s} .rbhd-burger i:first-child{top:18px} .rbhd-burger i:last-child{top:26px} .rbhd-burger[aria-expanded=\"true\"] i:first-child,.rbhd-burger.is-x i:first-child{translate:0 4px;rotate:45deg} .rbhd-burger[aria-expanded=\"true\"] i:last-child,.rbhd-burger.is-x i:last-child{translate:0 -4px;rotate:-45deg}\n@media (max-width:1199px){.rbhd{--pad:40px} .rbhd-nav{display:none} .rbhd-burger{display:block}}\n@media (max-width:699px){.rbhd{--navh:72px;--pad:20px} .rbhd-in{gap:12px} .rbhd-brand{font-size:22px} .rbhd-burger{width:44px;height:44px} .rbhd-burger i{left:13px;right:13px} .rbhd-burger i:first-child{top:17px} .rbhd-burger i:last-child{top:25px}}\n@media (max-width:479px){.rbhd .rbhd-cta{display:none}}\n@media (max-width:349px){.rbhd{--pad:16px}}\n/* the menu sheet (on <body>): 200 px of bottom room keeps the last row clear of the Framer badge and a demo bar */\n.rbhd-sheet{--pad:40px;--lime:var(--rb-brass);--e:cubic-bezier(.2,.8,.2,1);position:fixed!important;z-index:950!important;inset:0;display:flex;flex-direction:column;box-sizing:border-box;padding-bottom:calc(200px + env(safe-area-inset-bottom, 0px));background:var(--rb-night);color:var(--rb-cloud);font-size:16px;line-height:1.5;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;animation:rbhd-in .4s var(--e) both} @keyframes rbhd-in{from{opacity:0;translate:0 -18px}to{opacity:1;translate:0 0}} .rbhd-sheet *{box-sizing:border-box}\n.rbhd-top{display:flex;align-items:center;justify-content:space-between;flex:none;height:84px;padding:0 var(--pad);border-bottom:1px solid color-mix(in srgb,var(--rb-cloud) 18%,transparent)} .rbhd-sheet .rbhd-burger{display:block;background:var(--lime);color:var(--rb-ink);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}\n.rbhd-body{flex:1 0 auto;padding:0 var(--pad) 24px} .rbhd-big{margin:0;padding:0;list-style:none} .rbhd-big li{border-bottom:1px solid color-mix(in srgb,var(--rb-cloud) 18%,transparent);overflow:hidden}\n.rbhd-big a{display:block;color:var(--rb-cloud)!important;text-decoration:none} .rbhd-row{display:flex;align-items:center;gap:16px;min-height:72px;padding:10px 0;animation:rbhd-li .7s cubic-bezier(.76,0,.24,1) calc(80ms + var(--i)*55ms) both} @keyframes rbhd-li{from{translate:0 105%}to{translate:0 0}}\n.rbhd-no{flex:none;width:2.4em;font-size:11px;letter-spacing:.1em;color:var(--lime)} .rbhd-big b{flex:1;min-width:0;font-weight:inherit;font-size:clamp(34px,9.6vw,58px);line-height:1.02} .rbhd-big a[aria-current] b{color:var(--lime)}\n.rbhd-go{flex:none;display:grid;place-items:center;width:40px;height:40px;margin-left:auto;border-radius:50%;color:var(--rb-cloud);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 40%,transparent);transition:background .3s,color .3s,box-shadow .3s} .rbhd-go svg{width:14px;height:14px;transform:rotate(-45deg);transition:transform .45s var(--e)} .rbhd-big a:hover .rbhd-go,.rbhd-big a:focus-visible .rbhd-go{background:var(--lime);color:var(--rb-ink);box-shadow:none} .rbhd-big a:hover .rbhd-go svg,.rbhd-big a:focus-visible .rbhd-go svg{transform:none}\n.rbhd-small{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin:14px 0 0;padding:0;list-style:none} .rbhd-small a{display:flex;align-items:center;min-height:46px;font-size:16px;font-weight:500;color:var(--rb-cloud)!important;text-decoration:none} .rbhd-small a[aria-current]{text-decoration:underline;text-decoration-color:var(--lime);text-underline-offset:5px;text-decoration-thickness:2px}\n.rbhd-foot{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:10px var(--pad) 24px} .rbhd-foot .rbhd-btn{width:100%;justify-content:space-between} .rbhd-note{display:inline-flex;align-items:center;gap:10px;margin:0 0 6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-cloud)} .rbhd-note i{flex:none;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px var(--lime)} .rbhd-mail{display:inline-flex;align-items:center;min-height:44px;font-size:16.5px;font-weight:500;color:var(--rb-cloud)!important}\n@media (max-width:699px){.rbhd-sheet{--pad:20px} .rbhd-top{height:72px} .rbhd-row{min-height:64px;gap:12px} .rbhd-body{padding-bottom:18px}}\n@media (max-width:349px){.rbhd-sheet{--pad:16px} .rbhd-no{width:2em}}\n@media (prefers-reduced-motion:reduce){.rbhd-sheet,.rbhd-row{animation:none} .rbhd-bar,.rbhd-bar::before,.rbhd-btn,.rbhd-btn::before,.rbhd-btn-a svg,.rbhd-go,.rbhd-go svg,.rbhd-brand i{transition:none}}\n`;addPropertyControls(RbHeader,{...COLOR_CONTROLS,...FONT_CONTROLS,...BP_CONTROL,links:{type:ControlType.String,title:\"Links\",description:\"Label:/path, …\",defaultValue:\"Services:/workflows, Results:/results, Process:/process, Pricing:/pricing, About:/about\",displayTextArea:true},more:{type:ControlType.String,title:\"Phone menu links\",description:\"Shown in the phone menu under the main links. Label:/path, …\",defaultValue:\"Industries:/industries, Tools:/tools, Insights:/insights, Careers:/careers, FAQ:/faq, Contact:/contact\",displayTextArea:true},cta:{type:ControlType.String,title:\"Button\",description:\"The pill. Type a space to hide it\",defaultValue:\"Book a call\"},ctaLink:{type:ControlType.Link,title:\"Button link\",description:\"Empty = the Site Book Link\"},hide:{type:ControlType.Boolean,title:\"Hide on scroll\",description:\"On = the bar slides away while the page scrolls down and returns on scroll up. Off = it always stays\",defaultValue:true},menuNote:{type:ControlType.String,title:\"Menu note\",description:\"The small line above the pill in the phone menu. Type a space to hide it\",defaultValue:\"A 20-minute call \\xb7 No prep needed\"},words:{type:ControlType.String,title:\"Small labels\",description:\"Small labels, in this order, separated by ; — Menu; Close; Skip to content; Home; home; Main; More. An empty slot keeps its default\",defaultValue:\"\",displayTextArea:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RbHeader\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1440\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RbHeader.map","// ===== RUNBOOK shared scaffold (design language «THE NIGHT SHIFT»: a dark page (--rb-night #0B0D10) with full-bleed office / ops photographs, timestamped task pins, mono caps labels, thin drawn rules; ONE paper band (RbReviews); ONE accent = ACID LIME #D4F542 (--rb-brass) as dots, marks, mono labels and LIME WORDS in headlines on dark — never lime text on light (--rb-acc there); Inter Tight 600 display, Inter body, JetBrains Mono labels; PILL buttons (radius 999) with a lime arrow seat that floods the pill on hover, glass ghost pill with a live lime lamp; chips = soft pills, plates / frames radius 8) (inlined by mk.py; each Framer code file must be self-contained) =====\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useLayoutEffect,useRef,useState}from\"react\";import{createPortal}from\"react-dom\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";const FONTS=\"https://fonts.googleapis.com/css2?family=Inter+Tight:wght@500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap\";// Token-safe alpha: Styles-bound colours arrive as var(--token-…) so hex-alpha breaks; color-mix keeps a palette flip working. Never 0% (hue drops) — floor at 0.4%.\nconst A=(c,a)=>`color-mix(in srgb, ${c} ${Math.max(.4,Math.round(a*1e3)/10)}%, transparent)`;const MIX=(a,b,t)=>`color-mix(in srgb, ${a} ${Math.round((1-t)*100)}%, ${b})`;const srcOf=(v,fallback)=>v&&typeof v===\"object\"&&v.src?String(v.src).split(\"?\")[0]:typeof v===\"string\"&&v.trim()?v.trim().split(\"?\")[0]:fallback;const T=(s,fb)=>s&&s.trim()?s.trim():fb;// ink or white text on a CMS brand colour (luminance test; the brand colour is data, not a palette token)\nconst onBrand=hex=>{const m=String(hex||\"\").replace(\"#\",\"\").match(/^([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);if(!m)return\"var(--rb-cloud)\";const[r,g,b]=[m[1],m[2],m[3]].map(x=>{const v=parseInt(x,16)/255;return v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4);});const L=.2126*r+.7152*g+.0722*b;return L>.18?\"var(--rb-ink)\":\"var(--rb-cloud)\";};const cleanTel=s=>s.replace(/[^\\d+]/g,\"\");// Premium layout band (measured 09-13): container 1340 @1440 / 1520 @1920, body 16, button label 12–13.\nconst MAXW=\"clamp(1280px, 92vw, 1520px)\";// Responsive delivery: Framer's resizer serves any upload at ?scale-down-to=N (longest side). The query is stripped first so one file never downloads twice.\n// Responsive delivery. Framer uploads: the resizer serves ?scale-down-to=N. Unsplash stand-ins: ?w=N. The src is already the smallest width that covers the slot (a 52px avatar never pulls a 1600px photo), so a big image is never decoded for a small box — decode is what stalls scrolling.\nconst RS_W=[160,320,480,800,1200,1600];const rsTarget=sizes=>{const t=String(sizes||\"\").trim().split(\",\").pop()||\"\";const px=t.match(/(\\d+(?:\\.\\d+)?)px/);const vw=t.match(/(\\d+(?:\\.\\d+)?)vw/);const want=px?parseFloat(px[1])*2:vw?parseFloat(vw[1])/100*1600*1.25:1600;return RS_W.find(w=>w>=want)||1600;};// tall = height / width of a PORTRAIT picture (9:16 → 1.78). Framer's scale-down-to caps the LONG edge, so a 512 step of a 9:16 file is only 288 px wide: the w descriptors are divided by tall so the browser picks a step that is really wide enough.\n// Framer merges the `sizes` of the three breakpoint copies by prefixing each with its own media query; a sizes string that already holds media queries comes out broken\n// (\"(min-width: 1200px) (max-width: 1099px) 100vw, 45vw, …\") and the browser falls back to the LAST value on every screen → phones downloaded the 512 px variant. So media queries are rewritten as one length:\n// \"(max-width: 1099px) 100vw, 45vw\" → \"max(45vw, min(100vw, calc((1100px - 100vw) * 9999)))\". Same slot at every width (checked in Chromium + WebKit); anything it cannot parse is passed through.\nconst rsSizes=sz=>{const parts=String(sz||\"\").split(\",\").map(p=>p.trim());if(parts.length<2)return sz;const steps=[];for(const p of parts.slice(0,-1)){const m=p.match(/^\\(max-width:\\s*(\\d+)px\\)\\s*(\\d+)vw$/);if(!m)return sz;steps.push([+m[1],+m[2]]);}const zm=parts[parts.length-1].match(/^(\\d+)vw$/);if(!zm)return sz;const z=+zm[1];if(steps.length===1&&steps[0][1]<z)return`min(${z}vw, max(${steps[0][1]}vw, calc((100vw - ${steps[0][0]}px) * 9999)))`;for(let i=0;i<steps.length;i++)if(steps[i][1]<(i+1<steps.length?steps[i+1][1]:z))return sz;return`max(${[`${z}vw`].concat(steps.map(([b,x])=>`min(${x}vw, calc((${b+1}px - 100vw) * 9999))`)).join(\", \")})`;};const RS=(u,sizes,tall=1)=>{const s=String(u||\"\");const b=s.split(\"?\")[0];const tl=Math.max(1,tall||1);if(/framerusercontent\\.com\\/images\\//.test(s)){const w=rsTarget(sizes)*tl;const d=w<=512?512:w<=1024?1024:2048;const dw=n=>Math.round(n/tl);return{src:`${b}?scale-down-to=${d}`,srcSet:`${b}?scale-down-to=512 ${dw(512)}w, ${b}?scale-down-to=1024 ${dw(1024)}w, ${b}?scale-down-to=2048 ${dw(2048)}w`,sizes:rsSizes(sizes)};}if(/images\\.unsplash\\.com\\//.test(s)){const w=rsTarget(sizes);const q=n=>`${b}?w=${n}&q=70&fm=jpg&auto=format`;return{src:q(w),srcSet:RS_W.filter(n=>n<=Math.max(w*2,480)).map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}// Wikimedia Commons stand-ins from media/standins.json (thumb urls …/1280px-Name.jpg): only the standard thumb steps exist. A 1920px url (the hero photo) is passed through untouched.\nconst wm=s.match(/wikimedia\\.org\\/.*\\/(\\d+)px-/);if(wm&&+wm[1]<=1280){const w=rsTarget(sizes);const q=n=>b.replace(/\\/\\d+px-/,`/${n}px-`);const st=[500,960,1280].filter(n=>n<=+wm[1]);return{src:q(st.find(n=>n>=w)||st[st.length-1]),srcSet:st.map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}return{src:s};};// A Framer Font control stores a selector (GF;Family-700), not a CSS family — derive one, reject anything with ';'\nconst famOf=f=>{if(!f)return\"\";if(typeof f===\"string\")return f.includes(\";\")?\"\":f;if(f.fontFamily&&!String(f.fontFamily).includes(\";\"))return String(f.fontFamily);const sel=String(f.fontSelector||\"\");if(!sel)return\"\";const n=sel.split(\";\").pop()||\"\";return n.replace(/-(regular|italic|bold|\\d{3}(italic)?)$/i,\"\").replace(/-/g,\" \");};const wOf=(f,fb)=>{if(!f)return fb;if(f.fontWeight)return Number(f.fontWeight)||fb;const m=String(f.fontSelector||\"\").match(/-(\\d{3})/);return m?Number(m[1]):fb;};// famCss: Framer's Font `fontFamily` is ALREADY a stack — never wrap it in quotes (one fake family → fallback renders). A bare name gets quoted.\nconst famCss=f=>{const fa=famOf(f).replace(/\"/g,\"'\").trim();if(!fa)return\"\";return fa.includes(\",\")||fa.startsWith(\"'\")?fa:`'${fa}'`;};const stack=(custom,f,fb,tail)=>{const fam=custom?famCss(f):\"\";return`${fam?`${fam}, `:\"\"}${fb}, ${tail}`;};function useFonts(){useEffect(()=>{if(typeof document===\"undefined\"||document.getElementById(\"rb-fonts\"))return;const l=document.createElement(\"link\");l.id=\"rb-fonts\";l.rel=\"stylesheet\";l.href=FONTS;document.head.appendChild(l);},[]);}// live = client after hydration and not on the canvas. SSR and the first client render share the same markup.\n// TRUE on the Framer canvas AND in its export / thumbnail / screenshot renderers (anything that is not the running preview): no scroll and no hydration there, so every reveal / pinned stage must draw its FINAL state or the editor shows empty blocks.\nfunction useStill(){const isStatic=useIsStaticRenderer();let t=null;try{t=RenderTarget.current();}catch(e){}return isStatic||t!==null&&t!==RenderTarget.preview;}function useLive(){const isStatic=useIsStaticRenderer();const[live,setLive]=useState(false);useEffect(()=>{if(!isStatic&&RenderTarget.current()!==RenderTarget.canvas&&typeof window!==\"undefined\")setLive(true);},[isStatic]);return live;}// Width/height of the root + viewport height. SSR starts from the breakpoint hint (Framer renders the Tablet/Phone copies with the same code and no width).\nfunction useSize(root,hint){const ov=String(hint||\"\").toLowerCase();const[w,setW]=useState(ov===\"phone\"?390:ov===\"tablet\"?810:1440),[vh,setVh]=useState(ov===\"phone\"?844:ov===\"tablet\"?1080:900);useLayoutEffect(()=>{const el=root.current;if(!el)return;const ro=new ResizeObserver(([e])=>{const x=Math.round((e.borderBoxSize&&e.borderBoxSize[0]?e.borderBoxSize[0].inlineSize:0)||el.offsetWidth);if(x>0)setW(x);});ro.observe(el);const vv=()=>setVh(window.innerHeight);vv();const read=()=>{const x=Math.round(el.offsetWidth);if(x>0)setW(x);};const t1=window.setTimeout(read,150),t2=window.setTimeout(read,700),t3=window.setTimeout(read,1600);window.addEventListener(\"resize\",vv);window.addEventListener(\"load\",read);return()=>{ro.disconnect();window.clearTimeout(t1);window.clearTimeout(t2);window.clearTimeout(t3);window.removeEventListener(\"resize\",vv);window.removeEventListener(\"load\",read);};},[]);return{w,vh};}const useReduced=()=>{const[rm,setRm]=useState(false);useLayoutEffect(()=>{setRm(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches);},[]);return rm;};// One shared rAF for every section. Each frame runs ALL reads first (layout reads: getBoundingClientRect, offsetHeight), then ALL writes (CSS vars, transforms).\n// Interleaving read → write → read made the browser recalc the whole page's style once per section per frame (layout thrashing: 20+ recalcs a frame).\nfunction onTick(fn,read,pre){if(typeof window===\"undefined\")return()=>{};const w=window;if(!w.__ovTick){w.__ovTick={pre:new Set,subs:new Set,reads:new Set,raf:0};const loop=t=>{const T=w.__ovTick;T.pre.forEach(r=>r(t));T.reads.forEach(r=>r(t));T.subs.forEach(s=>s(t));T.raf=requestAnimationFrame(loop);};w.__ovTick.raf=requestAnimationFrame(loop);}w.__ovTick.subs.add(fn);if(read)w.__ovTick.reads.add(read);if(pre)w.__ovTick.pre.add(pre);return()=>{w.__ovTick.subs.delete(fn);if(read)w.__ovTick.reads.delete(read);if(pre)w.__ovTick.pre.delete(pre);};}const clamp01=v=>Math.min(1,Math.max(0,v));const easeIO=t=>{const x=clamp01(t);return x<.5?4*x*x*x:1-Math.pow(-2*x+2,3)/2;};// RUNBOOK tokens (the 8 names are shared with every kit, only the values change): Paper(bone) #F2F3EE · Ink #0B0D10 · Accent(brass) = ACID LIME #D4F542 (a FILL behind ink text, dots, marks, mono labels on dark; never text on light → --rb-acc) · Signal(pine) = deep lime #5E7A0C (fills / light-ground accent text) · Line(fog) #D8DAD3 · Muted(stone) #6E7370 · White(cloud) #F2F3EE · Dark(night) #0B0D10.\nconst DEF={bone:\"#F2F3EE\",ink:\"#0B0D10\",brass:\"#D4F542\",pine:\"#5E7A0C\",fog:\"#D8DAD3\",stone:\"#6E7370\",cloud:\"#F2F3EE\",night:\"#0B0D10\"};const colorsOf=p=>({bone:p.bone||DEF.bone,ink:p.ink||DEF.ink,brass:p.brass||DEF.brass,pine:p.pine||DEF.pine,fog:p.fog||DEF.fog,stone:p.stone||DEF.stone,cloud:p.cloud||DEF.cloud,night:p.night||DEF.night});// a Style-bound colour arrives as var(--token-…, #hex): let the browser resolve it to r,g,b for canvas drawing\nconst cssRgb=(el,col,fb)=>{if(!el||typeof window===\"undefined\")return fb;const p=document.createElement(\"i\");p.style.display=\"none\";p.style.color=col;el.appendChild(p);const v=getComputedStyle(p).color;p.remove();const m=v.match(/(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?)/);return m?`${Math.round(+m[1])},${Math.round(+m[2])},${Math.round(+m[3])}`:fb;};const cssVars=c=>({\"--rb-bone\":c.bone,\"--rb-ink\":c.ink,\"--rb-brass\":c.brass,\"--rb-pine\":c.pine,\"--rb-fog\":c.fog,\"--rb-stone\":c.stone,\"--rb-cloud\":c.cloud,\"--rb-night\":c.night});const COLOR_CONTROLS={bone:{type:ControlType.Color,title:\"Paper\",defaultValue:DEF.bone},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:DEF.ink},brass:{type:ControlType.Color,title:\"Accent\",description:\"Acid lime: lime words in headlines on dark, dots, button arrow seats, lamps, mono labels on dark. Never small lime text on a light ground\",defaultValue:DEF.brass},pine:{type:ControlType.Color,title:\"Signal\",description:\"Deep lime: the small accent text on light grounds (the paper band) is mixed from it\",defaultValue:DEF.pine},fog:{type:ControlType.Color,title:\"Line\",defaultValue:DEF.fog},stone:{type:ControlType.Color,title:\"Muted\",defaultValue:DEF.stone},cloud:{type:ControlType.Color,title:\"White\",description:\"Plates, cards and the type on dark\",defaultValue:DEF.cloud},night:{type:ControlType.Color,title:\"Dark\",defaultValue:DEF.night}};// ---- Fonts: Custom Fonts toggle → Font controls; off = Inter Tight 600 / Inter / JetBrains Mono ----\nconst FONT_CONTROLS={customFonts:{type:ControlType.Boolean,title:\"Custom Fonts\",description:\"Off = the site fonts (set once on the Header in the Site Layout). On = different fonts for this section only\",defaultValue:false},displayFont:{type:ControlType.Font,title:\"Display Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},bodyFont:{type:ControlType.Font,title:\"Body Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},monoFont:{type:ControlType.Font,title:\"Mono Font\",defaultFontType:\"monospace\",hidden:p=>!p.customFonts}};const NUMF=\"var(--rb-font-m, 'JetBrains Mono'), ui-monospace, Menlo, monospace\";// Site-wide fonts: the Header (Site Layout, every page) writes --rb-font-d/b/m (+ weights) on :root when its Custom Fonts is on. A section uses them unless its own Custom Fonts is on.\nconst siteFontCss=p=>{if(!p||!p.customFonts)return\"\";const v=[];const put=(k,f,w)=>{const fam=famCss(f);if(fam){v.push(`--rb-font-${k}:${fam}`);v.push(`--rb-font-${k}w:${wOf(f,w)}`);}};put(\"d\",p.displayFont,400);put(\"b\",p.bodyFont,400);put(\"m\",p.monoFont,400);put(\"a\",p.accentFont,400);return v.length?`:root{${v.join(\";\")}}`:\"\";};function fontsOf(p){const on=!!p.customFonts;const D={fontFamily:stack(on,p.displayFont,\"var(--rb-font-d, 'Inter Tight')\",\"'Helvetica Neue', Arial, sans-serif\"),fontWeight:on?wOf(p.displayFont,600):\"var(--rb-font-dw, 600)\",fontStyle:on&&p.displayFont&&p.displayFont.fontStyle?p.displayFont.fontStyle:\"normal\"};const B={fontFamily:stack(on,p.bodyFont,\"var(--rb-font-b, 'Inter')\",\"system-ui, -apple-system, Arial, sans-serif\"),fontWeight:on?wOf(p.bodyFont,400):\"var(--rb-font-bw, 400)\"};const M={fontFamily:stack(on,p.monoFont,\"var(--rb-font-m, 'JetBrains Mono')\",\"ui-monospace, 'SF Mono', Menlo, monospace\"),fontWeight:on?wOf(p.monoFont,500):\"var(--rb-font-mw, 500)\"};return{D,B,M};}const BP_CONTROL={bpHint:{type:ControlType.Enum,title:\"Breakpoint Hint\",description:\"Set per breakpoint copy so the server render starts at the right width\",options:[\"auto\",\"desktop\",\"tablet\",\"phone\"],optionTitles:[\"Auto\",\"Desktop\",\"Tablet\",\"Phone\"],defaultValue:\"auto\",hidden:()=>true}};// In-page CTA jumps (\"#demo\", \"/#demo\"): scroll to the section when it is on this page, otherwise go to it on the home page.\nfunction jumpTo(e,href){try{const m=String(href||\"\").match(/^\\/?#([\\w-]+)$/);if(!m)return;const el=document.getElementById(m[1]);if(el){e.preventDefault();const W=window;const L=W.__ltLenis||W.__vcLenis||W.lenis;if(L&&L.scrollTo)L.scrollTo(el,{offset:-20});else el.scrollIntoView({behavior:\"smooth\",block:\"start\"});try{history.replaceState(null,\"\",\"#\"+m[1]);}catch(x){}}else if(href.startsWith(\"#\")){e.preventDefault();window.location.href=\"/\"+href;}}catch(x){}}// display text (section headlines, card h3): Inter Tight 600, tight (-.04em). With a section's Custom Fonts on, the picked font is used as is.\nconst HD=D=>({...D,letterSpacing:\"-.04em\"});// numbers in display type keep their columns (counters never jiggle)\nconst NUM={fontVariantNumeric:\"tabular-nums lining-nums\"};// ---- Button system: PILLS (radius 999), the same two the hero draws (.rbh-btn-p / .rbh-btn-g).\n// kinds: solid = the pill (ink face on light grounds, light face on dark ones) with a round LIME ARROW SEAT on the right that floods the whole pill on hover / focus, the label stays ink · ghost = a glass pill (night veil + blur + hairline on dark; outline on light) with a round lime LAMP that glows, fills white / ink on hover · quiet = a small ghost (42px) · ink = alias of solid.\n// Defaults: solid → arrow, no lamp · ghost / quiet → lamp, no arrow. Pass arrow / lamp to override. `sub` = a small second line above the label. Without href (or as=\"button\") it renders a <button>.\nconst BtnArrow=()=>/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const Btn=({href,label,kind=\"solid\",arrow,lamp,style,className,onClick,ariaLabel,cur,sub,as,state})=>{const kd=kind===\"ink\"?\"solid\":kind;const ar=arrow===undefined?kd===\"solid\":arrow;const lp=lamp===undefined?kd!==\"solid\":lamp;const inner=/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-face\",children:[lp&&/*#__PURE__*/_jsx(\"i\",{className:\"rb-btn-lamp\",\"aria-hidden\":true}),/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-l\",children:[sub?/*#__PURE__*/_jsx(\"span\",{className:\"rb-sub\",children:sub}):null,/*#__PURE__*/_jsx(\"span\",{className:\"rb-mark\",children:label})]}),ar&&/*#__PURE__*/_jsx(\"span\",{className:\"rb-btn-a\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(BtnArrow,{})})]});const cls=`rb-btn rb-${kd}${ar?\" rb-has-a\":\"\"}${sub?\" rb-two\":\"\"}${state===\"ok\"?\" is-ok\":\"\"}${className?\" \"+className:\"\"}`;if(as===\"button\"||!href)return /*#__PURE__*/_jsx(\"button\",{type:onClick?\"button\":\"submit\",className:cls,\"data-cur\":cur||\"go\",onClick:onClick,\"aria-label\":ariaLabel,style:style,children:inner});return /*#__PURE__*/_jsx(\"a\",{className:cls,\"data-cur\":cur||\"go\",href:href,target:/^https?:\\/\\//.test(href||\"\")?\"_blank\":undefined,rel:/^https?:\\/\\//.test(href||\"\")?\"noopener\":undefined,onClick:onClick||(e=>jumpTo(e,href)),\"aria-label\":ariaLabel,style:style,children:inner});};function useNearFocus(root,live){useEffect(()=>{if(!live||!root.current)return;const el=root.current;const f=e=>{const t=e.target;const sc=t.closest?.(\".rb-inring\");if(!sc)return;try{t.scrollIntoView({block:\"nearest\",inline:\"nearest\"});}catch(x){}};el.addEventListener(\"focusin\",f);return()=>el.removeEventListener(\"focusin\",f);},[live]);}// Roll — a rolling mono number: every digit is a 0–9 column that slides to its value; separators stay put. rm = no transition.\nconst Roll=({text,rm=false,cls})=>/*#__PURE__*/_jsx(\"span\",{className:`rb-roll${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,\"aria-hidden\":true,children:String(text).split(\"\").map((ch,i)=>/\\d/.test(ch)?/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg\",children:/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg-c\",style:{[\"--d\"]:+ch},children:[0,1,2,3,4,5,6,7,8,9].map(d=>/*#__PURE__*/_jsx(\"i\",{children:d},d))})},i):/*#__PURE__*/_jsx(\"span\",{className:\"rb-sep\",children:ch},i))});const Count=({to,on,rm=false,ms=1400,cls,style})=>{const v=useCount(to,on,rm,ms);return /*#__PURE__*/_jsx(\"span\",{className:`rb-count rb-num${cls?\" \"+cls:\"\"}`,style:style,\"aria-label\":String(to||\"\"),children:/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,children:v})});};// Md — mini markdown for CMS bodies: blank line = paragraph, \"## \" = h3, \"- \" = list item, \"> \" = quote, **bold**. Never dangerouslySetInnerHTML.\nconst mdInline=t=>String(t).split(/\\*\\*([^*]+)\\*\\*/g).map((x,i)=>i%2?/*#__PURE__*/_jsx(\"strong\",{children:x},i):x);const Md=({text,D,cls})=>{const lines=String(text||\"\").split(/\\n+/).map(l=>l.trim()).filter(Boolean);const out=[];let list=[];const flush=()=>{if(list.length){out.push(/*#__PURE__*/_jsx(\"ul\",{children:list.map((x,i)=>/*#__PURE__*/_jsx(\"li\",{children:mdInline(x)},i))},\"u\"+out.length));list=[];}};lines.forEach(l=>{if(l.startsWith(\"- \")){list.push(l.slice(2));return;}flush();if(l.startsWith(\"## \"))out.push(/*#__PURE__*/_jsx(\"h3\",{style:D?HD(D):undefined,children:l.slice(3)},out.length));else if(l.startsWith(\"> \"))out.push(/*#__PURE__*/_jsx(\"blockquote\",{children:mdInline(l.slice(2))},out.length));else out.push(/*#__PURE__*/_jsx(\"p\",{children:mdInline(l)},out.length));});flush();return /*#__PURE__*/_jsx(\"div\",{className:`rb-md${cls?\" \"+cls:\"\"}`,children:out});};const Rule=({on,dir=\"x\",delay=0,rm=false,style,cls})=>/*#__PURE__*/_jsx(\"i\",{className:`rb-rule-${dir}${on?\" is-on\":\"\"}${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,style:{[\"--dl\"]:`${delay}ms`,...style||{}},\"aria-hidden\":true});const IcoArrow=({s=15})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const IcoCheck=({s=12})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"3.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12.5l4.5 4.5L19 7.5\"})});const CSS_BASE=`\n:where(.mw){position:relative;z-index:10} .mw,.mw *{box-sizing:border-box;min-width:0} .rb-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;padding:0!important;margin:-1px!important;border:0!important} :where(.mw) a{color:inherit} html,body{overflow-x:clip}\n/* focus: a 3px ink ring with a light band (reads on paper, on plates and over a picture); inside dark boxes (.rb-dark / .rb-dk) the ring is paper */\n:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"]),[role=\"button\"]):focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--rb-cloud,#F8F8F5)!important}\n:where(.rb-dark,.rb-dk) :where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"])):focus-visible{outline-color:var(--rb-cloud,#F8F8F5)!important;box-shadow:0 0 0 2px var(--rb-night,#14161A)!important}\n:where(.rb-inring) :where(a[href],button,input,summary,[tabindex]):focus-visible,:where(a[href],button,input,summary,[tabindex]).rb-inring:focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:-3px!important;box-shadow:inset 0 0 0 5px var(--rb-cloud,#F8F8F5)!important}\n:where(.mw) :focus-visible{outline:3px solid var(--rb-ink,#14161A);outline-offset:2px}\n/* Stage 7: a control that takes focus never lands under the fixed header */\n:where(.mw) :where(a[href],button,input,select,textarea,summary,[tabindex]){scroll-margin-top:116px}\n/* TEXT-SAFE values per ground. --rb-mut = muted text (≥4.5:1 on paper, deeper paper and plates). --rb-acc = the accent as SMALL TEXT: deep lime mixed with ink on light grounds (the paper band), lime mixed with white on dark ones. The raw --rb-brass (acid lime #D4F542) is lime words / mono labels / dots on DARK and a fill behind ink text (seats, pills); never text on a light ground (1.4:1); --rb-pine (deep lime) is for fills. */\n.mw{--rb-bone2:color-mix(in srgb,var(--rb-bone) 90%,var(--rb-stone));--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent)}\n.rb-dark,.mw.rb-dark,.mw .rb-dk{--rb-mut:color-mix(in srgb,var(--rb-stone) 36%,var(--rb-cloud));--rb-acc:color-mix(in srgb,var(--rb-brass) 78%,var(--rb-cloud));--rb-ok:color-mix(in srgb,var(--rb-pine) 45%,var(--rb-cloud));--rb-hair:color-mix(in srgb,var(--rb-cloud) 16%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-cloud) 30%,transparent)}\n.mw.rb-dark .rb-lt,.mw .rb-dk .rb-lt{--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent);color:var(--rb-ink)}\n/* section grounds: rb-dark = night (--rb-night, the whole page) \\xb7 paper (default, the one RbReviews band) \\xb7 rb-paper2 = deeper paper (--rb-bone2) */\n.rb-sec{background:var(--rb-bone);color:var(--rb-ink)} .rb-sec.rb-paper2{background:var(--rb-bone2)} .rb-sec.rb-dark{background:var(--rb-night);color:var(--rb-cloud)}\n/* ---- Buttons: PILLS, radius 999, 56px high, label 14px / 600. Colours: --kf face \\xb7 --kl label \\xb7 --kh the fill on hover \\xb7 --klh label on hover \\xb7 --kr outline. */\n.rb-btn{position:relative;display:inline-flex;height:56px;padding:0;border:0;border-radius:999px;background:none;text-decoration:none;white-space:nowrap;font:inherit;line-height:1;cursor:pointer;-webkit-appearance:none;appearance:none;color:var(--kl)!important;-webkit-tap-highlight-color:transparent;--lamp:var(--rb-brass)}\n.rb-btn-face{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;width:100%;height:100%;padding:0 22px;border-radius:999px;overflow:hidden;isolation:isolate;background:var(--kf);color:var(--kl);box-shadow:var(--kr,none);font-size:14px;font-weight:600;letter-spacing:.005em;transition:background .4s,color .4s,box-shadow .4s,transform .18s}\n.rb-btn:hover .rb-btn-face,.rb-btn:focus-visible .rb-btn-face{background:var(--kh);color:var(--klh);box-shadow:var(--krh,var(--kr,none))} .rb-btn:active .rb-btn-face{transform:scale(.965);transition-duration:.06s}\n.rb-btn-l{position:relative;z-index:1;display:inline-flex;flex-direction:column;justify-content:center;line-height:1.15} .rb-sub{display:block;font-size:10.5px;font-weight:500;letter-spacing:.04em;opacity:.78;margin-bottom:1px} .rb-mark{display:inline-block}\n/* the arrow seat: a round LIME seat inside the right end (= the hero's .rbh-btn-p); on hover / focus it floods the whole pill (one clip-path on a button-size layer) and the arrow turns from north-east to east */\n.rb-btn.rb-has-a .rb-btn-face{padding:0 8px 0 22px;transition:color .3s,box-shadow .4s,transform .18s} .rb-btn.rb-has-a:hover .rb-btn-face,.rb-btn.rb-has-a:focus-visible .rb-btn-face{background:var(--kf);color:var(--rb-ink)}\n.rb-btn.rb-has-a .rb-btn-face::before{content:\"\";position:absolute;inset:0;z-index:0;background:var(--rb-brass);clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px);transition:clip-path .55s cubic-bezier(.2,.8,.2,1)} .rb-btn.rb-has-a:hover .rb-btn-face::before,.rb-btn.rb-has-a:focus-visible .rb-btn-face::before{clip-path:inset(0 0 0 0 round 999px)}\n.rb-btn .rb-btn-a{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:40px;height:40px;color:var(--rb-ink)} .rb-btn .rb-btn-a svg{display:block;width:15px;height:15px;transform:rotate(-45deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)} .rb-btn:hover .rb-btn-a svg,.rb-btn:focus-visible .rb-btn-a svg{transform:none}\n/* the lamp: a small round LIME lamp that glows, with a round ping (ghost / quiet) = the hero's .rbh-lamp */\n.rb-btn-lamp{position:relative;z-index:1;flex:none;width:8px;height:8px;border-radius:50%;background:var(--lamp);box-shadow:0 0 10px var(--lamp)} .rb-btn-lamp::after{content:\"\";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--lamp);opacity:0;animation:rb-ping 2.6s ease-out infinite} @keyframes rb-ping{0%{opacity:.9;transform:scale(.5)}70%,100%{opacity:0;transform:scale(1.5)}}\n/* solid: ink pill + light label on light grounds; light pill + ink label on dark grounds (= the hero's main button). Without an arrow the whole pill turns lime. Label on lime is always ink (15:1). */\n.rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud);--kh:var(--rb-brass);--klh:var(--rb-ink)}\n.rb-dark .rb-btn.rb-solid,.mw .rb-dk .rb-btn.rb-solid{--kf:var(--rb-cloud);--kl:var(--rb-ink)} .rb-dark .rb-btn.rb-solid .rb-btn-face,.mw .rb-dk .rb-btn.rb-solid .rb-btn-face{box-shadow:0 12px 30px -14px color-mix(in srgb,#000 80%,transparent)}\n.mw.rb-dark .rb-lt .rb-btn.rb-solid,.mw .rb-dk .rb-lt .rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud)}\n/* ghost / quiet: an outline pill on light grounds; on dark grounds a GLASS pill (night veil 45 % + blur + white hairline, = the hero's .rbh-btn-g); on hover it fills with ink (light) or with white (dark) */\n.rb-btn.rb-ghost,.rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-dark .rb-btn.rb-ghost,.mw .rb-dk .rb-btn.rb-ghost,.rb-dark .rb-btn.rb-quiet,.mw .rb-dk .rb-btn.rb-quiet{--kf:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 45%,transparent);--kl:var(--rb-cloud);--kh:var(--rb-cloud);--klh:var(--rb-ink);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 56%,transparent);--krh:inset 0 0 0 1px var(--rb-cloud)} .rb-dark .rb-btn.rb-ghost .rb-btn-face,.mw .rb-dk .rb-btn.rb-ghost .rb-btn-face,.rb-dark .rb-btn.rb-quiet .rb-btn-face,.mw .rb-dk .rb-btn.rb-quiet .rb-btn-face{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}\n.mw.rb-dark .rb-lt .rb-btn.rb-ghost,.mw .rb-dk .rb-lt .rb-btn.rb-ghost,.mw.rb-dark .rb-lt .rb-btn.rb-quiet,.mw .rb-dk .rb-lt .rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-btn.rb-ghost .rb-btn-face,.rb-btn.rb-quiet .rb-btn-face{justify-content:center;gap:10px} .rb-btn.rb-ghost.rb-has-a .rb-btn-face,.rb-btn.rb-quiet.rb-has-a .rb-btn-face{justify-content:space-between}\n.rb-btn.rb-quiet{height:42px;border-radius:999px} .rb-btn.rb-quiet .rb-btn-face{padding:0 16px;gap:9px;font-size:12.5px;border-radius:999px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face{padding:0 5px 0 14px} .rb-btn.rb-quiet .rb-btn-a{width:32px;height:32px} .rb-btn.rb-quiet .rb-btn-a svg{width:13px;height:13px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face::before{clip-path:inset(5px 5px 5px calc(100% - 37px) round 999px)}\n.rb-btn:disabled,.rb-btn[aria-disabled=\"true\"]{opacity:.55;pointer-events:none}\n@media (max-width:600px),(hover:none){.mw .rb-btn{max-width:100%}}\n.mw button,.mw input,.mw select,.mw textarea{font-family:inherit}\n/* mono data lines + numbers */\n.rb-mono{font-size:11.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;line-height:1.5;font-variant-numeric:tabular-nums} .rb-num{font-variant-numeric:tabular-nums lining-nums} .rb-lbl{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-mut)}\n/* a live lamp: a small round LIME dot that glows, with a slow round ping (.is-ok = steady deep lime) — the hero's pin dot in small */\n.rb-lit-dot{position:relative;display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--rb-brass);box-shadow:0 0 10px var(--rb-brass)} .rb-lit-dot::after{content:\"\";position:absolute;inset:-4px;border-radius:50%;box-shadow:0 0 0 1.5px var(--rb-brass);opacity:0;animation:rb-glow 2.6s ease-out infinite} @keyframes rb-glow{0%{opacity:.7;transform:scale(.5)}100%{opacity:0;transform:scale(1.5)}} .rb-lit-dot.is-ok{background:var(--rb-pine)} .rb-lit-dot.is-ok::after{animation:none}\n/* Plates: a plate over a photograph / on paper — soft, 8px radius, hairline, a soft drop so it lifts off a picture; on dark grounds use .rb-plate.rb-dark = the night-glass plate (veil + hairline, as the hero pins). .rb-frame = a picture frame (8px radius, clips its image; night ground on dark sections so nothing flashes paper). CASCADE-ORDER LAW: every component re-injects this base CSS, so a LATER component's .rb-plate beats an earlier component's single-class rule: a component that overrides a base class on the same element uses 2+ classes (.rbh-score.rb-plate{…}). */\n.rb-frame{position:relative;overflow:hidden;border-radius:8px;background:var(--rb-bone2)} .mw.rb-dark .rb-frame,.mw .rb-dk .rb-frame{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))} .rb-frame>img{display:block;width:100%;height:100%;object-fit:cover}\n.rb-plate{position:relative;border-radius:8px;background:var(--rb-cloud);color:var(--rb-ink);box-shadow:inset 0 0 0 1px var(--rb-hair),0 1px 2px color-mix(in srgb,var(--rb-ink) 8%,transparent),0 10px 28px -12px color-mix(in srgb,var(--rb-ink) 28%,transparent)}\n.rb-plate.rb-dark,.mw .rb-dk{background:var(--rb-night);color:var(--rb-cloud)} .rb-plate.rb-dark{background:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 78%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 18%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}\n/* Chips: small mono PILLS (radius 999; tool names, kinds, week labels). Add the mono font with style={M}.\n   .rb-chip = hairline outline \\xb7 .is-amb = THE LIME PILL (ink on lime: the kind chip, the week label, the unit) \\xb7 .is-plate = ink on white (over pictures / on dark) \\xb7 .is-ink = white on ink (flips to ink on white on dark grounds) \\xb7 .is-acc = accent text (AA) \\xb7 button.rb-chip / a.rb-chip = a filter / brief chip: hover fills ink (white on dark), [aria-pressed=\"true\"] / .is-on = lime pill */\n.rb-chip{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px;border:0;border-radius:999px;background:none;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap;text-decoration:none;box-shadow:inset 0 0 0 1px var(--rb-hair2);color:inherit} .rb-chip.is-acc{color:var(--rb-acc)} .rb-chip.is-ok{color:var(--rb-ok)}\n.rb-chip.is-amb,.rb-dark .rb-chip.is-amb,.mw .rb-dk .rb-chip.is-amb{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none} .rb-chip.is-plate,.rb-dark .rb-chip.is-plate,.mw .rb-dk .rb-chip.is-plate{background:var(--rb-cloud);color:var(--rb-ink);box-shadow:none} .rb-chip.is-ink{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark .rb-chip.is-ink,.mw .rb-dk .rb-chip.is-ink{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip,a.rb-chip{height:34px;padding:0 14px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .3s,color .3s,box-shadow .3s} button.rb-chip:hover,a.rb-chip:hover{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark button.rb-chip:hover,.mw .rb-dk button.rb-chip:hover,.rb-dark a.rb-chip:hover,.mw .rb-dk a.rb-chip:hover{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip[aria-pressed=\"true\"],button.rb-chip.is-on,a.rb-chip.is-on,.rb-dark button.rb-chip[aria-pressed=\"true\"],.mw .rb-dk button.rb-chip[aria-pressed=\"true\"]{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none}\n/* LIME WORDS as an inline mark (lime text on dark, deep lime on the paper band — never a plate) and the step number (\\xab01\\xbb, \\xabStep 02 / 05\\xbb; add style={M}) */\n.rb-amb{font-style:normal;color:var(--rb-acc)} .mw.rb-dark .rb-amb,.mw .rb-dk .rb-amb{color:var(--rb-brass)} .mw.rb-dark .rb-lt .rb-amb,.mw .rb-dk .rb-lt .rb-amb{color:var(--rb-acc)}\n.rb-stn{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--rb-mut)} .rb-stn b{font-weight:inherit;color:var(--rb-acc)}\n/* Roll */ .rb-roll{display:inline-flex;align-items:flex-start;white-space:nowrap;font-variant-numeric:tabular-nums} .rb-dg{display:inline-block;height:1em;overflow:hidden;vertical-align:top} .rb-dg-c{display:flex;flex-direction:column;transform:translateY(calc(var(--d) * -1em));transition:transform .55s cubic-bezier(.3,.9,.3,1)} .rb-dg-c i{display:block;height:1em;line-height:1em;font-style:normal} .rb-sep{display:inline-block;height:1em;line-height:1em} .rb-roll.is-rm .rb-dg-c,.mw[data-kb] .rb-dg-c{transition:none}\n/* Rules */ .rb-rule-x,.rb-rule-y{display:block;background:var(--rb-hair);transform-origin:0 0;transition:transform 1.1s cubic-bezier(.2,.8,.2,1) var(--dl,0ms)} .rb-rule-x{width:100%;height:1px;transform:scaleX(0)} .rb-rule-y{width:1px;height:100%;transform:scaleY(0)} .rb-rule-x.is-on{transform:scaleX(1)} .rb-rule-y.is-on{transform:scaleY(1)} .rb-rule-x.is-rm,.rb-rule-y.is-rm,.mw[data-kb] .rb-rule-x,.mw[data-kb] .rb-rule-y{transition:none}\n/* Count */ .rb-count{display:inline-block;white-space:nowrap}\n/* Md */ .rb-md{display:grid;gap:14px;font-size:16.5px;line-height:1.6} .rb-md p,.rb-md ul,.rb-md h3,.rb-md blockquote{margin:0} .rb-md h3{margin-top:14px;font-size:clamp(24px,2vw,30px);line-height:1.15} .rb-md ul{padding-left:1.1em;display:grid;gap:6px} .rb-md strong{font-weight:600} .rb-md blockquote{padding-left:16px;border-left:3px solid var(--rb-brass);font-size:1.1em}\n/* HEIGHT LAW: a block whose content swaps stacks all items in ONE grid cell so the tallest reserves the height */ .rb-swap{display:grid} .rb-swap>*{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s} .rb-swap>.is-on{opacity:1;visibility:visible;transition:opacity .5s ease}\n@media (prefers-reduced-motion:reduce){.rb-btn-lamp::after,.rb-lit-dot::after{animation:none!important} .mw *,.sth *{animation-duration:.01ms!important;transition-duration:.01ms!important}}\n`;// ===== RUNBOOK motion layer (composed by mk.py after _common) =====\n// One shared rAF (onTick). Sections write --sp (0 = top edge enters the viewport bottom → 1 = bottom edge leaves the top) and,\n// for tall pinned wrappers, --pp (0 = wrapper top hits the viewport top → 1 = wrapper bottom hits the viewport bottom). IO-gated.\nconst SCRUB_K=.18;// Decode a section's photos while it is still a screen and a half away, so the first frame it is on screen never waits for a decode.\nfunction usePre(el){try{const io=new IntersectionObserver(es=>{if(!es[0].isIntersecting)return;io.disconnect();el.querySelectorAll(\"img\").forEach(im=>{try{im.loading=\"eager\";im.decode().catch(()=>{});}catch(e){}});},{rootMargin:\"150% 0px 150% 0px\"});io.observe(el);}catch(e){}}function focusTo(el,frac){if(!el||typeof window===\"undefined\")return;if(window.innerWidth<810)return;const r=el.getBoundingClientRect();const vh=window.innerHeight;if(r.height<=vh*1.05)return;const y=r.top+window.scrollY+(r.height-vh)*Math.min(1,Math.max(0,frac));if(Math.abs(window.scrollY-y)<8)return;const w=window;if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}function useScrollVars(ref,live,rm,cb){useEffect(()=>{if(!live||rm||!ref.current)return;const el=ref.current;let vis=true,last=-9,cs=-1,cp=-1,settled=false;usePre(el);const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"25% 0px 25% 0px\"});io.observe(el);// eased scrub: the values glide toward the true scroll position (K per frame), so wheel steps never jump a pinned scene\nlet rt=0,rh=0,vh=1,fresh=false;const read=()=>{if(!vis&&settled){fresh=false;return;}const r=el.getBoundingClientRect();rt=r.top;rh=r.height;vh=window.innerHeight||1;fresh=true;};const off=onTick(()=>{if(!fresh)return;const sp=clamp01((vh-rt)/(vh+rh));const pp=rh>vh*1.05?clamp01(-rt/(rh-vh)):sp;if(cs<0){cs=sp;cp=pp;}else{cs+=(sp-cs)*SCRUB_K;cp+=(pp-cp)*SCRUB_K;if(Math.abs(sp-cs)<5e-4)cs=sp;if(Math.abs(pp-cp)<5e-4)cp=pp;}settled=cs===sp&&cp===pp;if(Math.abs(cs+cp-last)<3e-4)return;last=cs+cp;el.style.setProperty(\"--sp\",cs.toFixed(4));el.style.setProperty(\"--pp\",cp.toFixed(4));if(cb)cb(cs,cp);},read);return()=>{off();io.disconnect();};},[live,rm]);}// STAGE — false while the loader or the page-transition cover is on screen (html.rb-hold-*), so first-screen intros play AFTER the cover lifts, never under it. 9 s safety.\nfunction useStage(live){const[r,setR]=useState(false);useEffect(()=>{if(!live)return;const h=document.documentElement;const ok=()=>!/(^|\\s)rb-hold/.test(h.className);if(ok()){setR(true);return;}const mo=new MutationObserver(()=>{if(ok()){mo.disconnect();setR(true);}});mo.observe(h,{attributes:true,attributeFilter:[\"class\"]});const t=window.setTimeout(()=>{mo.disconnect();setR(true);},9e3);return()=>{mo.disconnect();window.clearTimeout(t);};},[live]);return r;}// true once the element has entered the viewport (stays true) — and only once the stage is clear. Reduced motion = true at once.\nfunction useOn(ref,live,rm,amount=.16){const[on,setOn]=useState(false);const still=useStill();const ready=useStage(live);useEffect(()=>{if(!live)return;if(rm){setOn(true);return;}if(!ready)return;const el=ref.current;if(!el)return;let off=()=>{};// keyboard focus: mark the section FIRST and flush styles, so the reveal that follows runs with instant transitions (a transition keeps the timing it started with)\nconst fin=e=>{try{if(e.target.matches(\":focus-visible\")){el.setAttribute(\"data-kb\",\"\");void el.offsetWidth;}}catch(x){}setOn(true);};const fout=e=>{if(!el.contains(e.relatedTarget))el.removeAttribute(\"data-kb\");};el.addEventListener(\"focusin\",fin);el.addEventListener(\"focusout\",fout);const io=new IntersectionObserver(es=>{for(const e of es)if(e.isIntersecting){io.disconnect();// IO ignores occlusion: under a curtain (Reveal) wait until about a quarter of it is uncovered\noff=onTick(()=>{const rev=el.closest(\".rb-rev.is-act\");const rv=rev?parseFloat(rev.style.getPropertyValue(\"--rv\")||\"0\"):1;if(rv>.24){setOn(true);off();}});}},{threshold:Math.min(amount,Math.max(.005,window.innerHeight*.3/Math.max(1,el.offsetHeight))),rootMargin:\"0px 0px -6% 0px\"});io.observe(el);return()=>{io.disconnect();off();el.removeEventListener(\"focusin\",fin);el.removeEventListener(\"focusout\",fout);};},[live,rm,ready]);return on||still;}// CURTAIN REVEAL — the section is pinned BEHIND the one above it and is uncovered as that one lifts away (the footer movement, for any section).\n// Wrapper = section + a spacer of T, pulled up by T (page length unchanged); the section is sticky for exactly T of scroll. T = min(section height, 100svh):\n// a tall section pins at the top, a short one sits on the bottom edge of the viewport. The section ABOVE needs a higher Layer (z-index).\nfunction Reveal({on,layer=9,style,children}){const live=useLive();const rm=useReduced();const wrap=useRef(null);const inner=useRef(null);const sp=useRef(null);const[h,setH]=useState(0);const[kb,setKb]=useState(false);// keyboard users get the footer as a normal section: a curtain taller than the screen hides its top row under the page above / the fixed header\nconst act=on&&live&&!rm&&h>0&&!kb;useEffect(()=>{if(!on||!live||rm||!inner.current)return;const el=inner.current;const m=()=>setH(el.offsetHeight);m();const ro=new ResizeObserver(m);ro.observe(el);return()=>ro.disconnect();},[on,live,rm]);useEffect(()=>{if(!act||!wrap.current)return;const el=wrap.current;let vis=true,last=-1;const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"30% 0px 30% 0px\"});io.observe(el);let cur=-1,T=0,vh=1,top=0,fresh=false;const read=()=>{if(!vis){fresh=false;return;}T=sp.current?sp.current.offsetHeight:0;vh=window.innerHeight;top=el.getBoundingClientRect().top;fresh=true;};const off=onTick(()=>{if(!fresh||!T)return;const rv=clamp01((vh-T-top)/T);if(cur<0||el.dataset.snap){cur=rv;delete el.dataset.snap;}else{cur+=(rv-cur)*SCRUB_K;if(Math.abs(rv-cur)<5e-4)cur=rv;}if(Math.abs(cur-last)<4e-4)return;last=cur;el.style.setProperty(\"--rv\",cur.toFixed(4));},read);return()=>{off();io.disconnect();};},[act]);return /*#__PURE__*/_jsxs(\"div\",{ref:wrap,className:`rb-rev${act?\" is-act\":\"\"}`,style:{...style||{},[\"--h\"]:`${h}px`,[\"--layer\"]:layer},onFocusCapture:e=>{if(!act||!wrap.current)return;try{if(e.target.matches(\":focus-visible\")){const t0=e.target;setKb(true);requestAnimationFrame(()=>requestAnimationFrame(()=>{try{t0.scrollIntoView({block:\"center\"});}catch(x){}}));return;}}catch(x){}const t=e.target;const w=window;const r=wrap.current.getBoundingClientRect();const T=sp.current?sp.current.offsetHeight:0;const y=Math.max(0,Math.min(document.documentElement.scrollHeight-window.innerHeight,r.top+window.scrollY-window.innerHeight+2*T));if(Math.abs(window.scrollY-y)>4){if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}wrap.current.dataset.snap=\"1\";requestAnimationFrame(()=>{try{const q=t.getBoundingClientRect();if(q.top<0||q.bottom>window.innerHeight)t.scrollIntoView({block:\"nearest\"});}catch(x){}});},children:[/*#__PURE__*/_jsx(\"div\",{ref:inner,className:\"rb-rev-in\",children:children}),/*#__PURE__*/_jsx(\"div\",{ref:sp,className:\"rb-rev-sp\",\"aria-hidden\":true})]});}const REVEAL_CONTROLS={reveal:{type:ControlType.Boolean,title:\"Reveal\",description:\"Curtain: this section waits behind the one above and is uncovered as that one lifts away\",enabledTitle:\"Curtain\",disabledTitle:\"Off\",defaultValue:true},layer:{type:ControlType.Number,title:\"Layer\",description:\"Stacking order. Must be LOWER than the section above (sections default to 10)\",min:0,max:20,step:1,displayStepper:true,defaultValue:9,hidden:p=>p.reveal===false}};const splitWords=s=>String(s||\"\").replace(/\\*([^*]+)\\*/g,(_m,g)=>g.trim().split(/\\s+/).map(w=>{const m=w.match(/^(.*?)([.,!?;:’']*)$/);return m&&m[1]?`*${m[1]}*${m[2]}`:w;}).join(\" \")).split(/\\s+/).filter(Boolean).map(t=>{const m=t.match(/^\\*(.+?)\\*([.,!?;:’']*)$/);return m?{t:m[1],tail:m[2],acc:true}:{t:t.replace(/\\*/g,\"\"),tail:\"\",acc:false};});const plainOf=s=>String(s||\"\").replace(/\\*/g,\"\").replace(/\\s*\\|\\s*/g,\" \").replace(/\\s+/g,\" \").trim();// Head — the section headline (Inter Tight 600, -.04em): its words rise out of masks. \"|\" forces a line break, *stars* around a phrase = LIME WORDS (color var(--rb-brass) on dark, --rb-acc on the paper band; no plate — the same mark as the hero headline «running *itself.*»).\nconst Head=({text,on,D,tag=\"h2\",size=\"clamp(40px,4.3vw,64px)\",lh=1.04,delay=0,step=55,style,className})=>{const Tag=tag;let k=0;if(!String(text||\"\").trim())return null;return /*#__PURE__*/_jsx(Tag,{className:`rb-hd${on?\" is-on\":\"\"}${tag===\"h1\"?\" is-ssr\":\"\"}${className?\" \"+className:\"\"}`,\"aria-label\":plainOf(text),style:{...HD(D),fontSize:size,lineHeight:lh,...style||{}},children:String(text).split(\"|\").map((line,li)=>/*#__PURE__*/_jsx(\"span\",{className:\"rb-hd-l\",\"aria-hidden\":true,children:splitWords(line).map((w,i)=>{const d=delay+k++*step;return /*#__PURE__*/_jsxs(\"span\",{className:`rb-hd-w${w.acc?\" is-accw\":\"\"}`,children:[/*#__PURE__*/_jsx(\"span\",{className:`rb-hd-i${w.acc?\" is-acc\":\"\"}`,style:{transitionDelay:`${d}ms`,[\"--pd\"]:`${d+500}ms`,[\"--dl\"]:`${d}ms`},children:w.acc?/*#__PURE__*/_jsxs(\"span\",{className:\"rb-it\",children:[w.t,w.tail,/*#__PURE__*/_jsx(\"svg\",{className:\"rb-spark\",viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5C12.9 8 16 11.1 22.5 12 16 12.9 12.9 16 12 22.5 11.1 16 8 12.9 1.5 12 8 11.1 11.1 8 12 1.5Z\"})})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[w.t,w.tail]})}),\" \"]},i);})},li))});};const Eyebrow=({text,on,M,delay=0,style})=>text&&String(text).trim()?/*#__PURE__*/_jsxs(\"p\",{className:`rb-eb${on?\" is-on\":\"\"}`,style:{...M,transitionDelay:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"i\",{className:\"rb-lit-dot\",\"aria-hidden\":true}),text]}):null;// COME TO LIGHT — a photo box that enters under a dark grade and clears when `on` (or an ancestor .is-on), on hover and on keyboard focus of a wrapping link. Children (caption plates) sit above the grade.\nconst Lit=({src,alt=\"\",on,ratio=\"4/5\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",focus=\"50% 50%\",delay=0,hold=false,eager=false,className,style,children})=>{const im=RS(src,sizes);return /*#__PURE__*/_jsxs(\"span\",{className:`rb-dusk${on?\" is-on\":\"\"}${hold?\" is-hold\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,[\"--dd\"]:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus}}),children]});};// count-up for a stat (\"2,140\", \"91¢\", \"$184,200\", \"38\"): keeps prefix, suffix and thousands commas; SSR and reduced motion show the final value.\nfunction useCount(target,on,rm,ms=1400){const m=String(target||\"\").match(/^([^\\d-]*)(-?[\\d,]*\\.?\\d+)(.*)$/);const[v,setV]=useState(1);useEffect(()=>{if(!m||rm||!on){setV(1);return;}let raf=0,t0=0;setV(0);const step=t=>{if(!t0)t0=t;const k=clamp01((t-t0)/ms);setV(1-Math.pow(1-k,3));if(k<1)raf=requestAnimationFrame(step);};raf=requestAnimationFrame(step);return()=>cancelAnimationFrame(raf);},[on,rm,target]);if(!m)return String(target||\"\");const num=parseFloat(m[2].replace(/,/g,\"\"));const dec=(m[2].split(\".\")[1]||\"\").length;const cur=num*v;const txt=dec?cur.toFixed(dec):String(Math.round(cur));const withC=/,/.test(m[2])?txt.replace(/\\B(?=(\\d{3})+(?!\\d))/g,\",\"):txt;return m[1]+withC+m[3];}// one-shot rise for copy / rows\nconst rise=(on,d=0,y=22)=>({opacity:on?1:0,translate:on?\"0 0\":`0 ${y}px`,transition:`opacity .9s ease ${d}ms, translate 1s cubic-bezier(.2,.8,.2,1) ${d}ms`});// Image that UNMASKS through a shape as it enters, settles from a zoom, then drifts with scroll (needs --sp on an ancestor).\nconst SHAPES={up:[\"inset(100% 0 0 0)\",\"inset(0 0 0 0)\"],down:[\"inset(0 0 100% 0)\",\"inset(0 0 0 0)\"],left:[\"inset(0 100% 0 0)\",\"inset(0 0 0 0)\"],right:[\"inset(0 0 0 100%)\",\"inset(0 0 0 0)\"],diag:[\"polygon(0 100%,0 100%,0 100%,0 100%)\",\"polygon(0 -160%,260% 100%,0 100%,0 100%)\"],iris:[\"circle(0% at 50% 55%)\",\"circle(85% at 50% 55%)\"],slit:[\"inset(0 50% 0 50%)\",\"inset(0 0 0 0)\"]};const Um=({src,alt=\"\",on,shape=\"up\",ratio=\"4/5\",delay=0,par=1,focus=\"50% 40%\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",style,className,eager=false})=>{const sh=SHAPES[shape]||SHAPES.up;const im=RS(src,sizes);return /*#__PURE__*/_jsx(\"div\",{className:`rb-um${on?\" is-on\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,clipPath:on?sh[1]:sh[0],WebkitClipPath:on?sh[1]:sh[0],transitionDelay:`${delay}ms`,[\"--par\"]:par,...style||{}},children:/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus,transitionDelay:`${delay}ms`}})});};const CSS_MOTION=`\n.mw[data-kb] *,.mw[data-kb] *::before,.mw[data-kb] *::after,.mw [data-kb],.mw [data-kb] *,.mw [data-kb] *::before,.mw [data-kb] *::after{transition:none!important}\n.rb-sec{position:relative;z-index:10;display:block;width:100%;--sp:.5;--pp:0}\n.rb-rev{position:relative;width:100%;--rv:1} .rb-rev-in{position:relative} .rb-rev-sp{height:0}\n.rb-rev.is-act{--rv:0;--t:min(var(--h),100vh);--t:min(var(--h),100svh);z-index:var(--layer,9);margin-top:calc(var(--t)*-1)}\n.rb-rev.is-act>.rb-rev-in{position:sticky;top:calc(100vh - var(--t));top:calc(100svh - var(--t))} .rb-rev.is-act>.rb-rev-sp{height:var(--t)}\n/* the lifting edge throws a shadow on the section beneath, and that section comes out of the dark as it is uncovered */\n.rb-rev.is-act>.rb-rev-in::before{content:\"\";position:absolute;z-index:40;left:0;right:0;top:0;height:120px;translate:0 calc((1 - var(--rv))*var(--t));background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0));opacity:min(1,calc(var(--rv)*(1 - var(--rv))*9));pointer-events:none}\n.rb-rev.is-act>.rb-rev-in::after{content:\"\";position:absolute;z-index:39;left:0;right:0;top:0;height:var(--t);background:#000;opacity:calc((1 - var(--rv))*.16);pointer-events:none}\n.rb-wrap{--pad:56px;width:100%;max-width:calc(${MAXW} + var(--pad)*2);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}\n.rb-eb{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;margin:0;padding:0;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;color:var(--rb-acc);opacity:0;translate:0 10px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.8,.2,1)} .rb-eb.is-on{opacity:1;translate:0 0}\n.rb-eb i{order:-1;margin-right:2px}\n.mw .rb-eb{color:var(--rb-ink)} .mw.rb-dark .rb-eb,.mw .rb-dk .rb-eb{color:var(--rb-cloud)} .mw.rb-dark .rb-lt .rb-eb,.mw .rb-dk .rb-lt .rb-eb{color:var(--rb-ink)}\n.rb-band .rb-eb{padding:6px 14px 6px 12px;border-radius:999px;background:var(--rb-ink);color:var(--rb-bone)} .rb-band .rb-eb .rb-lit-dot{background:var(--rb-brass)} .rb-band .rb-eb .rb-lit-dot::after{background:radial-gradient(circle,color-mix(in srgb,var(--rb-brass) 70%,transparent),transparent 70%)} .rb-band .rb-lt .rb-eb{padding:0;background:none;color:var(--rb-acc)}\n.rb-hd{margin:0;letter-spacing:-.02em;text-wrap:balance} .rb-hd-l{display:block}\n.rb-hd-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .04em .2em;margin:-.06em -.04em -.2em;white-space:pre} .rb-hd-w.is-accw{padding-left:.07em;padding-right:.1em;margin-left:-.07em;margin-right:-.1em}\n.rb-hd-i{position:relative;display:inline-block;translate:0 108%;transition:translate 1.05s cubic-bezier(.2,.85,.15,1)}\n.rb-hd.is-on .rb-hd-i{translate:0 0}\n/* page h1: rises by CSS from the server HTML (no wait for hydration); paused only while a loader / transition cover holds the page */\n@keyframes rb-hd-rise{from{translate:0 108%}to{translate:0 0}}\n.rb-hd.is-ssr .rb-hd-i{animation:rb-hd-rise .8s cubic-bezier(.2,.85,.15,1) var(--dl,0ms) both}\nhtml[class*=\"rb-hold\"] .rb-hd.is-ssr .rb-hd-i{animation-play-state:paused}\n.rb-hd-w.is-accw{overflow:hidden}\n/* the starred words: LIME TEXT, no plate (a body may re-colour them with --rb-capfg) */\n.rb-it{position:relative;display:inline-block;font-style:normal;padding:0;margin:0;border-radius:0;background:none;color:var(--rb-capfg,var(--rb-acc))}\n.mw.rb-dark .rb-it,.mw .rb-dk .rb-it{color:var(--rb-capfg,var(--rb-brass))} .mw.rb-dark .rb-lt .rb-it,.mw .rb-dk .rb-lt .rb-it{color:var(--rb-capfg,var(--rb-acc))}\n.rb-spark{display:none}\n\n.rb-um{position:relative;overflow:hidden;transition:clip-path 1.35s cubic-bezier(.7,0,.2,1);background:var(--rb-bone2)} .mw.rb-dark .rb-um,.mw .rb-dk .rb-um{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))}\n.rb-um img{position:absolute;left:0;top:-9%;width:100%;height:118%;display:block;object-fit:cover;scale:1.04;translate:0 calc((var(--sp,.5) - .5)*var(--par,1)*-7%);transition:scale 1.9s cubic-bezier(.16,.84,.24,1);user-select:none}\n.rb-um.is-on img{scale:1}\n/* diagonal cuts: the section hangs over its neighbour and is cut on a slope (clip-path, so the neighbour shows through) */\n.rb-cut-t{margin-top:calc(var(--cut,7vw)*-1);clip-path:polygon(0 var(--cut,7vw),100% 0,100% 100%,0 100%);padding-top:var(--cut,7vw)}\n.rb-cut-b{margin-bottom:calc(var(--cut,7vw)*-1);padding-bottom:var(--cut,7vw)}\n.rb-cut-t.rb-cut-b{clip-path:polygon(0 var(--cut,7vw),100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n.rb-cut-b:not(.rb-cut-t){clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n@media (max-width:1099px){.rb-wrap{--pad:40px}}\n@media (max-width:699px){.rb-wrap{--pad:20px}}\n@media (prefers-reduced-motion:reduce){.rb-hd-i{translate:0 0!important} .rb-hd.is-ssr .rb-hd-i{animation:none!important} .rb-spark{scale:1!important;rotate:0deg!important;animation:none!important} .rb-um{clip-path:none!important} .rb-um img{scale:1!important;translate:0 0!important}}\n`;const SEED={site:[{\"slug\":\"site\",\"f1\":\"Runbook\",\"f2\":\"Business automation agency\",\"f3\":\"We wire your CRM, invoicing, onboarding and support into workflows that run while the office sleeps.\",\"f4\":\"hello@runbook.agency\",\"f5\":\"/book\",\"f6\":\"/results\",\"f7\":\"Business automation agency \\xb7 Since 2019\",\"f8\":\"1,284 tasks ran for our clients last night\",\"f9\":\"/workflows\",\"img\":\"https://framerusercontent.com/images/kltvaH90N1EBZgMRovsYhy45bk0.webp\",\"f10\":\"An open-plan office at dusk, screens still lit\"}]};const SW_BUILD=\"RbLoader@cms1\";// An override control wins only when it holds real text; empty (or a single space) inherits from the CMS.\nconst pick=(o,fb)=>o!==undefined&&o!==null&&String(o).trim()?String(o).trim():fb;const imgOf=(r,k=\"img\")=>String(r&&r[k]||\"\").split(\"?\")[0];// A cleared CMS image draws this quiet placeholder — never a stock photo, and list positions stay aligned with their rows.\nconst EMPTY_IMG=\"data:image/svg+xml;utf8,\"+encodeURIComponent(\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 500' preserveAspectRatio='xMidYMid slice'><rect width='400' height='500' fill='#DDDFD9'/><rect x='120' y='170' width='160' height='160' rx='3' fill='none' stroke='#8A8E90' stroke-width='1.5'/><rect x='100' y='150' width='200' height='200' rx='4' fill='none' stroke='#B9BCB6' stroke-width='1' stroke-dasharray='2 6'/></svg>\");const imgOr=(r,k=\"img\")=>imgOf(r,k)||EMPTY_IMG;const cmsNum=(r,k,fb=0)=>{const v=parseFloat(String((r&&r[k])??\"\"));return isFinite(v)?v:fb;};const useIso=typeof window===\"undefined\"?useEffect:useLayoutEffect;function readCMS(kind){if(typeof document===\"undefined\")return null;if(!document.querySelector('[data-rb-row=\"bridge\"]'))return null;const seen=new Set;const out=[];document.querySelectorAll(`[data-rb-row=\"${kind}\"]`).forEach(el=>{const o={};for(const a of Array.from(el.attributes))if(a.name.startsWith(\"data-\"))o[a.name.slice(5)]=a.value;const key=o.slug||JSON.stringify(o);if(seen.has(key))return;seen.add(key);out.push(o);});return out.sort((a,b)=>(parseFloat(a.n1)||0)-(parseFloat(b.n1)||0));}function useCMS(kind,fallback){const[rows,setRows]=useState(fallback);const sig=useRef(\"\");useIso(()=>{let n=0,t=0,ok=0;try{const w=window;if(!w.__ltCms||typeof w.__ltCms!==\"object\")w.__ltCms={};w.__ltCms[SW_BUILD]=1;}catch(e){}const pull=()=>{const r=readCMS(kind);if(!r)return false;const s=JSON.stringify(r);if(s!==sig.current){sig.current=s;setRows(r);}return true;};const mo=new MutationObserver(()=>{if(pull()){ok++;if(ok>2)mo.disconnect();}});mo.observe(document.body,{childList:true,subtree:true});if(pull())ok++;const poll=()=>{if(n++<30){pull();t=window.setTimeout(poll,150);}};t=window.setTimeout(poll,150);return()=>{mo.disconnect();window.clearTimeout(t);};},[kind]);return rows;}// Row counts in headings: {workflows} {industries} {results} {tools} {posts} {reviews} {faq} = the live number of rows as digits (the kinds work too: {services} = Workflows, {cases} = Results, {machines} = Tools); a capital first letter ({Services}) = the number as a word (One … Twelve, digits above that). Server render = the shipped counts. A component may add its own list ({Steps}, {Pins}, {Values}).\nconst CMS_COUNT_FB={\"services\":5,\"industries\":6,\"cases\":6,\"machines\":6,\"reviews\":5,\"posts\":6,\"faq\":8};const CMS_NWORDS=\"Zero;One;Two;Three;Four;Five;Six;Seven;Eight;Nine;Ten;Eleven;Twelve\";function useCounts(extra){const[c,setC]=useState(CMS_COUNT_FB);const sig=useRef(\"\");useIso(()=>{let n=0,t=0;const pull=()=>{const o={};let any=false;for(const k of Object.keys(CMS_COUNT_FB)){const r=readCMS(k);if(r){o[k]=r.length;any=true;}else o[k]=CMS_COUNT_FB[k];}if(!any)return;const s=JSON.stringify(o);if(s!==sig.current){sig.current=s;setC(o);}};pull();const poll=()=>{if(n++<12){pull();t=window.setTimeout(poll,250);}};t=window.setTimeout(poll,250);return()=>window.clearTimeout(t);},[]);return extra?{...c,...extra}:c;}const CMS_ALIAS={workflows:\"services\",results:\"cases\",tools:\"machines\"};const countText=(s,c,words=CMS_NWORDS)=>{const W=String(words||CMS_NWORDS).split(\";\").map(x=>x.trim());return String(s==null?\"\":s).replace(/\\{([A-Za-z]+)\\}/g,(m,k)=>{const lk=String(k).toLowerCase();const n=c[lk]??c[CMS_ALIAS[lk]];if(typeof n!==\"number\")return m;const cap=k[0]!==k[0].toLowerCase();return cap&&W[n]?W[n]:String(n);});};// The one-row Site collection holds every site-wide fact. A section's \"… Override\" control only replaces it on that one section.\n// Site: f1 Name (Runbook) · f2 Descriptor · f3 Tagline · f4 Email · f5 Book Link (/book) · f6 Work Link (/results) · f7 Eyebrow · f8 Proof Line · f9 Services Link (/workflows) · img Picture (the hero office photograph H1, also social / about) · f10 Picture Alt\nfunction useSite(){const r=useCMS(\"site\",SEED.site||[]);const s=r[0]||(SEED.site||[])[0]||{};const g=k=>String(s[k]??\"\").trim();const im=k=>String(s[k]||\"\").split(\"?\")[0];return{name:g(\"f1\"),descriptor:g(\"f2\"),tagline:g(\"f3\"),email:g(\"f4\"),book:g(\"f5\")||\"/quote\",work:g(\"f6\")||\"/projects\",eyebrow:g(\"f7\"),proof:g(\"f8\"),services:g(\"f9\")||\"/capabilities\",picture:im(\"img\"),pictureAlt:g(\"f10\")};}// ---- Row readers (slots are fixed: see seed.py). Every reader takes an undefined row and returns empty strings, never throws.\nconst S_=(r,k)=>String(r&&r[k]||\"\").trim();const numOf=(v,fb=0)=>{const n=parseFloat(String(v??\"\").replace(/[^\\d.-]/g,\"\"));return isFinite(n)?n:fb;};const listOf=s=>String(s||\"\").split(\";\").map(x=>x.trim()).filter(Boolean);const linkList=s=>String(s||\"\").split(\",\").map(x=>x.trim()).filter(Boolean).map(x=>{const i=x.indexOf(\":\");return{l:i<0?x:x.slice(0,i).trim(),h:i<0?\"/\":x.slice(i+1).trim()};});const bySlug=(rows,slug)=>{const k=String(slug||\"\").trim();return k?rows.find(r=>r.slug===k):undefined;};// Workflows (kind \"services\"): f1 Name · f2 Line · f3 Body · f4 Tools it runs on (a; b; c → items[]) · f5 Event line («Invoice #4821 sent», the hero pin) · f6 Clock («02:14», the pin's mono time) · img Picture · n1 Order → /workflows/:slug\n// spec = EVENT (f5), lead = CLOCK (f6); question / price are the same two slots under their old names (the hero reads those).\nconst serviceOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),body:S_(r,\"f3\"),items:listOf(S_(r,\"f4\")),spec:S_(r,\"f5\"),lead:S_(r,\"f6\"),question:S_(r,\"f5\"),price:S_(r,\"f6\"),img:imgOr(r)});// Industries: f1 Name (Clinics, Agencies, E-commerce, Logistics, Legal, Real estate) · f2 Line · f3 Typical workflows (a, b, c → parts) · f4 Share of our clients (e.g. 24 %) · img Picture · n1 Order → /industries\nconst industryOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),parts:S_(r,\"f3\"),share:S_(r,\"f4\"),img:imgOr(r)});// Tools (kind \"machines\"): f1 Name = the tool CATEGORY we connect (CRM, Invoicing, Inbox, Helpdesk, Docs, Reporting) · f2 Category group (Sales / Finance / Comms / Support / Data = the filter chip → type) · f3 Line · f4 Connects to (product names a, b, c → envelope) · f5 Used in n workflows (→ tolerance) · f6 Since 2021 (→ count) · img Picture · n1 Order → /tools\nconst machineOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),type:S_(r,\"f2\"),line:S_(r,\"f3\"),envelope:S_(r,\"f4\"),tolerance:S_(r,\"f5\"),count:S_(r,\"f6\"),img:imgOr(r)});// Results (kind \"cases\"): f1 Client · f2 Sector (an Industries name) · f3 Workflow (a Workflows name → service) · f4 Number (−62 %) · f5 Unit (missed appointments, on the lime pill) · f6 Line · f7 Body · img Picture · f8 Year · n1 Order → /results/:slug\nconst caseOf=r=>({slug:S_(r,\"slug\"),client:S_(r,\"f1\"),sector:S_(r,\"f2\"),service:S_(r,\"f3\"),number:S_(r,\"f4\"),unit:S_(r,\"f5\"),line:S_(r,\"f6\"),body:S_(r,\"f7\"),img:imgOr(r),year:S_(r,\"f8\")});// Reviews: f1 Quote · f2 Person · f3 Role · f4 Company · img Picture · n1 Order\nconst reviewOf=r=>({slug:S_(r,\"slug\"),quote:S_(r,\"f1\"),person:S_(r,\"f2\"),role:S_(r,\"f3\"),company:S_(r,\"f4\"),img:imgOr(r)});// Posts: f1 Title · f2 Kind (Guide / Insight / Report) · f3 Line · f4 Body (mini markdown, see Md) · img Picture · f5 Date · f6 Read · n1 Order → /insights/:slug\nconst postOf=r=>({slug:S_(r,\"slug\"),title:S_(r,\"f1\"),kind:S_(r,\"f2\"),line:S_(r,\"f3\"),body:S_(r,\"f4\"),img:imgOr(r),date:S_(r,\"f5\"),read:S_(r,\"f6\")});// Faq: f1 Question · f2 Answer · n1 Order\nconst faqOf=r=>({slug:S_(r,\"slug\"),q:S_(r,\"f1\"),a:S_(r,\"f2\")});// ---- A seeded generator (mulberry32) so the server and the first client render draw the SAME shape.\nconst mulberry=a=>()=>{a|=0;a=a+1831565813|0;let t=Math.imul(a^a>>>15,1|a);t=t+Math.imul(t^t>>>7,61|t)^t;return((t^t>>>14)>>>0)/4294967296;};// The row a CMS detail page is about: the bound Slug control wins (server render included), else the last URL segment, else the first row.\nfunction useRow(kind,fallback,slug){const rows=useCMS(kind,fallback);const[path,setPath]=useState(\"\");useEffect(()=>{try{setPath(decodeURIComponent(window.location.pathname.split(\"/\").filter(Boolean).pop()||\"\"));}catch(e){}},[]);const want=String(slug||\"\").trim()||path;const row=rows.find(r=>r.slug===want)||rows[0]||{};return{row,rows};}// ===== RbLoader =====\n// ---- LOADER + PAGE TRANSITION «THE NIGHT SHIFT STARTS». First page of a visit: a night cover with the Runbook wordmark beside the lime dot; a mono clock ticks 02:14 → 02:20 (the hero's\n// pin clock) while a lime hairline fills across under it; then the cover wipes off to the left behind a lime edge and the page plays in as it leaves (html.rb-hold-ld is released when the wipe STARTS).\n// Between pages = the same lime-edge wipe: click an internal link and the night sheet comes in from the right behind its lime edge, the browser goes, and the next page arrives covered\n// (session flag \"rb-pt\") and the sheet carries on off to the left (html.rb-hold-pt). ONE transform on one sheet; no clip-path on a screen-size layer.\n// Loader once per visit (session flag \"rb-loaded\"), 2.4 s at most; click, tap or any key (not Tab) skips, a scroll skips too; none with reduced motion; never on /start-here; back / forward clear any cover.\n// No JavaScript = no cover. CLICK-DEFERRAL LAW: the click listener is on `window`, never on `document`, and in the BUBBLE phase, so a link's own onClick (RbBook's pill, which stores the\n// brief) has ALREADY run when the cover starts. A link may also carry its brief as data: <a data-brief='{\"size\":\"6–20\"}'> is merged into sessionStorage \"rb-brief\" here, before the page leaves.\n// It sits once in the Site Layout (a 0 px frame) and draws nothing on the canvas. ----\nconst RBLD_BOOT=once=>`(function(){try{var h=document.documentElement,p=location.pathname;if(/^\\\\/start-here\\\\/?$/.test(p))return;if(matchMedia('(prefers-reduced-motion: reduce)').matches)return;var f=sessionStorage.getItem('rb-pt');if(f){var t='';try{t=JSON.parse(f).p||''}catch(x){}var n=function(x){return x.replace(/\\\\/+$/,'')||'/'};if(!t||n(t)===n(p)){h.classList.add('rbld-arrive','rb-hold-pt');setTimeout(function(){if(!window.__rbldRun)h.classList.remove('rbld-arrive','rb-hold-pt')},3000);return}}if(window.__rbldDone)return;${once?\"if(sessionStorage.getItem('rb-loaded'))return;\":\"\"}h.classList.add('rbld-go','rb-hold-ld');setTimeout(function(){if(!window.__rbldRun)h.classList.remove('rbld-go','rb-hold-ld')},6000)}catch(e){}})()`;const rbldBrief=patch=>{try{const k=\"rb-brief\";let o={};try{o=JSON.parse(window.sessionStorage.getItem(k)||\"{}\")||{};}catch(e){}window.sessionStorage.setItem(k,JSON.stringify({...o,...patch}));}catch(e){}};// \"02:14\" + n ticks → [\"02:14\", \"02:15\", …]\nconst rbldClock=(from,n)=>{const m=String(from||\"\").match(/^(\\d{1,2}):(\\d{2})$/);let h=m?+m[1]:2,mi=m?+m[2]:14;const out=[];for(let i=0;i<=n;i++){out.push(`${h<10?\"0\":\"\"}${h}:${mi<10?\"0\":\"\"}${mi}`);mi++;if(mi>59){mi=0;h=(h+1)%24;}}return out;};/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 1440\n * @framerIntrinsicHeight 1\n */export default function RbLoader(props){const{loader=true,once=true,duration=2,transition=true,wordmark=\"\",line=\"The night shift starts\",clockFrom=\"02:14\",ticks=6,tasksWord=\"Tasks tonight\",tasks=\"1,284\",skipLabel=\"Skip\"}=props;const c=colorsOf(props);const{D,B,M}=fontsOf(props);useFonts();const live=useLive();const still=useStill();const site=useSite();const name=pick(wordmark,site.name||\"Runbook\");const n=Math.max(1,Math.min(12,Math.round(Number(ticks)||6)));const clocks=rbldClock(clockFrom,n);// mode: boot (server / first render) → load (the clock ticks) | arrive (page transition in) | leave (page transition out) → lift → idle\nconst[mode,setMode]=useState(\"boot\");const S=useRef({mode:\"boot\",busy:false});const tm=useRef([]);const liftR=useRef(()=>{});const set=m=>{S.current.mode=m;setMode(m);};useIso(()=>{if(!live)return;const h=document.documentElement;window.__rbldRun=1;const push=(f,t)=>tm.current.push(window.setTimeout(f,t));const rm=window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;const noPage=/^\\/start-here\\/?$/.test(location.pathname);const clear=()=>{h.classList.remove(\"rbld-go\",\"rbld-arrive\",\"rbld-leave\",\"rb-hold-ld\",\"rb-hold-pt\");};const lift=()=>{if(S.current.mode===\"lift\"||S.current.mode===\"idle\")return;h.classList.remove(\"rb-hold-ld\",\"rb-hold-pt\");window.__rbldDone=1;set(\"lift\");push(()=>{clear();set(\"idle\");S.current.busy=false;},1e3);};liftR.current=lift;// --- arriving from a page transition ---\nlet flag=\"\";try{flag=sessionStorage.getItem(\"rb-pt\")||\"\";sessionStorage.removeItem(\"rb-pt\");}catch(e){}if(flag&&transition&&!rm&&!noPage){h.classList.add(\"rbld-arrive\",\"rb-hold-pt\");h.classList.remove(\"rbld-go\",\"rb-hold-ld\");set(\"arrive\");push(lift,60);}else{h.classList.remove(\"rbld-arrive\",\"rb-hold-pt\");// a client-only render never ran the boot script: do its check here, before paint\nif(!h.classList.contains(\"rbld-go\")&&loader&&!rm&&!noPage){let go=!window.__rbldDone;try{if(go&&once&&sessionStorage.getItem(\"rb-loaded\"))go=false;}catch(e){}if(go)h.classList.add(\"rbld-go\",\"rb-hold-ld\");}if(!loader||!h.classList.contains(\"rbld-go\")){clear();set(\"idle\");}else{try{if(once)sessionStorage.setItem(\"rb-loaded\",\"1\");}catch(e){}// the time already spent downloading counts: a slow connection gets a shorter loader, never a longer one\nset(\"load\");const Dm=Math.max(1.4,Math.min(2.4,Number(duration)||2))*1e3;const span=Math.max(1200,Math.min(Dm,Dm+300-performance.now()));h.style.setProperty(\"--rbld-d\",Math.round(span)+\"ms\");push(lift,span+60);push(lift,7e3);}}const key=e=>{if(S.current.mode===\"load\"&&e.key!==\"Tab\")lift();};const wheel=()=>{if(S.current.mode===\"load\")lift();};// --- leaving: keep the link's brief, cover the page, then go ---\nconst click=e=>{if(e.button!==0)return;const a=e.target?.closest?.(\"a[href]\");if(!a)return;// a brief carried as data is written even when no cover runs (reduced motion, new tab, transition off)\ntry{const raw=a.getAttribute(\"data-brief\");if(raw){const o=JSON.parse(raw);if(o&&typeof o===\"object\")rbldBrief(o);}}catch(x){}if(!transition||rm||S.current.busy||S.current.mode!==\"idle\"||e.defaultPrevented||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;if(a.target&&a.target!==\"_self\"||a.hasAttribute(\"download\")||a.closest(\"[data-no-trans]\"))return;const raw=a.getAttribute(\"href\")||\"\";if(/^(mailto|tel|sms|javascript):/i.test(raw)||raw.startsWith(\"#\"))return;let u;try{u=new URL(a.href,location.href);}catch(x){return;}if(u.origin!==location.origin||/^\\/start-here\\/?$/.test(u.pathname))return;const norm=x=>x.replace(/\\/+$/,\"\")||\"/\";if(norm(u.pathname)===norm(location.pathname))return;e.preventDefault();S.current.busy=true;h.classList.add(\"rbld-leave\");set(\"leave\");try{sessionStorage.setItem(\"rb-pt\",JSON.stringify({p:u.pathname}));}catch(x){}push(()=>{window.location.href=u.href;},560);push(()=>{clear();set(\"idle\");S.current.busy=false;},4e3);};const show=e=>{if(e.persisted){clear();set(\"idle\");S.current.busy=false;}};// bubble phase on window: runs AFTER a component's own handler, so a key that writes a brief has written it, and anything that already called preventDefault (a form, a drag) is left alone\nwindow.addEventListener(\"keydown\",key,true);window.addEventListener(\"wheel\",wheel,{passive:true});window.addEventListener(\"touchmove\",wheel,{passive:true});window.addEventListener(\"click\",click);window.addEventListener(\"pageshow\",show);return()=>{tm.current.forEach(x=>window.clearTimeout(x));tm.current=[];window.removeEventListener(\"keydown\",key,true);window.removeEventListener(\"wheel\",wheel);window.removeEventListener(\"touchmove\",wheel);window.removeEventListener(\"click\",click);window.removeEventListener(\"pageshow\",show);};},[live]);if(still)return null;const skip=()=>{if(S.current.mode===\"load\")liftR.current();};const cover=/*#__PURE__*/_jsxs(\"div\",{className:`mw rb-dark rbld is-${mode}`,\"data-rbld\":mode,role:mode===\"load\"?\"status\":undefined,\"aria-label\":mode===\"load\"?`${name}. ${line}`:undefined,\"aria-hidden\":mode===\"load\"?undefined:true,onClick:skip,style:{...cssVars(c),...B,[\"--n\"]:n},children:[/*#__PURE__*/_jsx(\"i\",{className:\"rbld-sheet\"}),/*#__PURE__*/_jsxs(\"div\",{className:\"rbld-mid\",\"aria-hidden\":true,children:[/*#__PURE__*/_jsxs(\"p\",{className:\"rbld-brand\",style:HD(D),children:[/*#__PURE__*/_jsx(\"i\",{}),name]}),/*#__PURE__*/_jsxs(\"div\",{className:\"rbld-clock\",style:M,children:[/*#__PURE__*/_jsx(\"b\",{className:\"rbld-roll\",children:/*#__PURE__*/_jsx(\"b\",{children:clocks.map((t,i)=>/*#__PURE__*/_jsx(\"i\",{children:t},i))})}),/*#__PURE__*/_jsx(\"span\",{className:\"rbld-line\",children:line})]}),/*#__PURE__*/_jsx(\"div\",{className:\"rbld-rail\",children:/*#__PURE__*/_jsx(\"i\",{className:\"rbld-run\"})}),tasksWord.trim()?/*#__PURE__*/_jsxs(\"p\",{className:\"rbld-foot\",style:M,children:[/*#__PURE__*/_jsxs(\"span\",{children:[/*#__PURE__*/_jsx(\"i\",{className:\"rbld-dot\"}),tasksWord]}),/*#__PURE__*/_jsx(\"span\",{className:\"rbld-ct\",children:tasks})]}):null]}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"rbld-skip\",style:M,onClick:e=>{e.stopPropagation();skip();},children:skipLabel})]});return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:RBLD_CSS}}),/*#__PURE__*/_jsx(\"script\",{dangerouslySetInnerHTML:{__html:RBLD_BOOT(once)}}),mode===\"idle\"?null:live&&typeof document!==\"undefined\"?/*#__PURE__*/createPortal(cover,document.body):cover]});}const RBLD_CSS=`\n.rbld{display:none} html.rbld-go .rbld,html.rbld-arrive .rbld,html.rbld-leave .rbld,.rbld.is-lift{display:block} html.rbld-go.rb-hold-ld,html.rbld-leave{overflow:hidden!important}\n.rbld{--lime:var(--rb-brass);--w:cubic-bezier(.7,0,.2,1);--run:calc(var(--rbld-d,2000ms)*.8);position:fixed!important;inset:0;z-index:10000!important;color:var(--rb-cloud);-webkit-font-smoothing:antialiased;overflow:hidden;cursor:pointer;font-size:16px;line-height:1.5} .rbld *{box-sizing:border-box} .rbld.is-lift{pointer-events:none}\n/* the cover = ONE night sheet, a little wider than the screen, with a lime edge on both sides (the leading edge coming in, the trailing edge going out) */\n.rbld-sheet{position:absolute;top:0;bottom:0;left:-6px;right:-6px;background:var(--rb-night);will-change:transform} .rbld-sheet::before,.rbld-sheet::after{content:\"\";position:absolute;top:0;bottom:0;width:3px;background:var(--lime);box-shadow:0 0 28px 2px color-mix(in srgb,var(--lime) 70%,transparent)} .rbld-sheet::before{left:0} .rbld-sheet::after{right:0}\n.rbld.is-leave .rbld-sheet{animation:rbld-in .5s var(--w) both} @keyframes rbld-in{from{transform:translate3d(101%,0,0)}to{transform:none}}\n.rbld.is-lift .rbld-sheet{animation:rbld-out .85s var(--w) both} @keyframes rbld-out{from{transform:none}to{transform:translate3d(-101%,0,0)}}\n.rbld-mid{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:clamp(18px,2.4vw,30px);padding:0 max(24px,calc((100vw - 1180px)/2));pointer-events:none;transition:opacity .25s,transform .85s var(--w)} .rbld.is-arrive .rbld-mid,.rbld.is-leave .rbld-mid,.rbld.is-idle .rbld-mid{opacity:0} .rbld.is-lift .rbld-mid{opacity:0;transform:translate3d(-60px,0,0)} html.rbld-arrive .rbld-mid,html.rbld-arrive .rbld-skip,html.rbld-leave .rbld-mid,html.rbld-leave .rbld-skip{display:none}\n/* the wordmark with the lime dot; the dot's ring swells as the clock runs */\n.rbld-brand{display:flex;align-items:center;gap:.3em;margin:0;font-size:clamp(44px,8vw,120px);line-height:1;color:var(--rb-cloud)} .rbld-brand i{position:relative;flex:none;width:.5em;height:.5em;border-radius:50%;background:var(--lime);box-shadow:0 0 0 .12em color-mix(in srgb,var(--lime) 25%,transparent)} .rbld-brand i::after{content:\"\";position:absolute;inset:-.18em;border-radius:50%;border:1px solid var(--lime);opacity:0} .rbld.is-load .rbld-brand i::after{animation:rbld-ping 1.6s ease-out infinite} @keyframes rbld-ping{0%{opacity:.9;transform:scale(.6)}70%,100%{opacity:0;transform:scale(1.6)}}\n/* the clock: the mono roll steps 02:14 → 02:20 as the hairline fills */\n.rbld-clock{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 22px;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-cloud)}\n.rbld-roll{display:inline-block;height:1.1em;overflow:hidden;vertical-align:bottom;font-weight:500;font-size:clamp(22px,3vw,40px);letter-spacing:0;line-height:1.1;color:var(--lime);font-variant-numeric:tabular-nums} .rbld-roll>b{display:flex;flex-direction:column;font-weight:inherit} .rbld-roll i{display:block;height:1.1em;font-style:normal} .rbld.is-load .rbld-roll>b,.rbld.is-lift .rbld-roll>b{animation:rbld-roll var(--run) steps(var(--n),end) both} @keyframes rbld-roll{from{transform:translateY(0)}to{transform:translateY(calc(var(--n) * -1.1em))}}\n.rbld-line{white-space:nowrap}\n/* the rail: a lime hairline that fills across */\n.rbld-rail{position:relative;height:1px;background:color-mix(in srgb,var(--rb-cloud) 22%,transparent)} .rbld-run{position:absolute;left:0;right:0;top:-1px;height:3px;border-radius:2px;background:var(--lime);box-shadow:0 0 14px var(--lime);transform-origin:0 50%;transform:scaleX(0)} .rbld.is-load .rbld-run,.rbld.is-lift .rbld-run{animation:rbld-run var(--run) linear both} @keyframes rbld-run{from{transform:scaleX(0)}to{transform:scaleX(1)}}\n.rbld-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;margin:0;font-size:11.5px;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-cloud)} .rbld-foot span{display:inline-flex;align-items:center;gap:10px} .rbld-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px var(--lime)} .rbld-ct{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--lime)}\n.rbld-skip{position:absolute;right:clamp(16px,4vw,56px);top:clamp(14px,3vw,22px);min-height:44px;padding:0 18px;border:0;border-radius:999px;background:transparent;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 56%,transparent);color:var(--rb-cloud);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s} .rbld-skip:hover,.rbld-skip:focus-visible{background:var(--rb-cloud);color:var(--rb-ink)} .rbld:not(.is-load) .rbld-skip{display:none}\n@media (max-width:699px){ .rbld-mid{padding:0 20px} }\n`;addPropertyControls(RbLoader,{...COLOR_CONTROLS,...FONT_CONTROLS,...BP_CONTROL,loader:{type:ControlType.Boolean,title:\"Loader\",description:\"The night cover with the clock ticking, on the first page of a visit\",defaultValue:true},once:{type:ControlType.Boolean,title:\"Once per visit\",description:\"On = once per visit. Off = on every full page load\",defaultValue:true,hidden:p=>!p.loader},duration:{type:ControlType.Number,title:\"Duration\",description:\"Seconds the loader stays (it is shorter on a slow connection, never longer)\",defaultValue:2,min:1.4,max:2.4,step:.1,unit:\"s\",hidden:p=>!p.loader},transition:{type:ControlType.Boolean,title:\"Page transition\",description:\"A night sheet with a lime edge wipes over the page on an internal link and off the next page\",defaultValue:true},wordmark:{type:ControlType.String,title:\"Wordmark\",description:\"The name beside the dot. Empty = the Site Name\",defaultValue:\"\",hidden:p=>!p.loader},line:{type:ControlType.String,title:\"Line\",description:\"The small line beside the clock\",defaultValue:\"The night shift starts\",hidden:p=>!p.loader},clockFrom:{type:ControlType.String,title:\"Clock starts at\",description:\"hh:mm\",defaultValue:\"02:14\",hidden:p=>!p.loader},ticks:{type:ControlType.Number,title:\"Minutes\",description:\"How many minutes the clock ticks on\",defaultValue:6,min:1,max:12,step:1,displayStepper:true,hidden:p=>!p.loader},tasksWord:{type:ControlType.String,title:\"Counter word\",description:\"The small line at the bottom. Type a space to hide it\",defaultValue:\"Tasks tonight\",hidden:p=>!p.loader},tasks:{type:ControlType.String,title:\"Counter\",defaultValue:\"1,284\",hidden:p=>!p.loader},skipLabel:{type:ControlType.String,title:\"Skip label\",defaultValue:\"Skip\",hidden:p=>!p.loader}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RbLoader\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicWidth\":\"1440\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RbLoader.map","// ===== RUNBOOK shared scaffold (design language «THE NIGHT SHIFT»: a dark page (--rb-night #0B0D10) with full-bleed office / ops photographs, timestamped task pins, mono caps labels, thin drawn rules; ONE paper band (RbReviews); ONE accent = ACID LIME #D4F542 (--rb-brass) as dots, marks, mono labels and LIME WORDS in headlines on dark — never lime text on light (--rb-acc there); Inter Tight 600 display, Inter body, JetBrains Mono labels; PILL buttons (radius 999) with a lime arrow seat that floods the pill on hover, glass ghost pill with a live lime lamp; chips = soft pills, plates / frames radius 8) (inlined by mk.py; each Framer code file must be self-contained) =====\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useLayoutEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";const FONTS=\"https://fonts.googleapis.com/css2?family=Inter+Tight:wght@500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap\";// Token-safe alpha: Styles-bound colours arrive as var(--token-…) so hex-alpha breaks; color-mix keeps a palette flip working. Never 0% (hue drops) — floor at 0.4%.\nconst A=(c,a)=>`color-mix(in srgb, ${c} ${Math.max(.4,Math.round(a*1e3)/10)}%, transparent)`;const MIX=(a,b,t)=>`color-mix(in srgb, ${a} ${Math.round((1-t)*100)}%, ${b})`;const srcOf=(v,fallback)=>v&&typeof v===\"object\"&&v.src?String(v.src).split(\"?\")[0]:typeof v===\"string\"&&v.trim()?v.trim().split(\"?\")[0]:fallback;const T=(s,fb)=>s&&s.trim()?s.trim():fb;// ink or white text on a CMS brand colour (luminance test; the brand colour is data, not a palette token)\nconst onBrand=hex=>{const m=String(hex||\"\").replace(\"#\",\"\").match(/^([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);if(!m)return\"var(--rb-cloud)\";const[r,g,b]=[m[1],m[2],m[3]].map(x=>{const v=parseInt(x,16)/255;return v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4);});const L=.2126*r+.7152*g+.0722*b;return L>.18?\"var(--rb-ink)\":\"var(--rb-cloud)\";};const cleanTel=s=>s.replace(/[^\\d+]/g,\"\");// Premium layout band (measured 09-13): container 1340 @1440 / 1520 @1920, body 16, button label 12–13.\nconst MAXW=\"clamp(1280px, 92vw, 1520px)\";// Responsive delivery: Framer's resizer serves any upload at ?scale-down-to=N (longest side). The query is stripped first so one file never downloads twice.\n// Responsive delivery. Framer uploads: the resizer serves ?scale-down-to=N. Unsplash stand-ins: ?w=N. The src is already the smallest width that covers the slot (a 52px avatar never pulls a 1600px photo), so a big image is never decoded for a small box — decode is what stalls scrolling.\nconst RS_W=[160,320,480,800,1200,1600];const rsTarget=sizes=>{const t=String(sizes||\"\").trim().split(\",\").pop()||\"\";const px=t.match(/(\\d+(?:\\.\\d+)?)px/);const vw=t.match(/(\\d+(?:\\.\\d+)?)vw/);const want=px?parseFloat(px[1])*2:vw?parseFloat(vw[1])/100*1600*1.25:1600;return RS_W.find(w=>w>=want)||1600;};// tall = height / width of a PORTRAIT picture (9:16 → 1.78). Framer's scale-down-to caps the LONG edge, so a 512 step of a 9:16 file is only 288 px wide: the w descriptors are divided by tall so the browser picks a step that is really wide enough.\n// Framer merges the `sizes` of the three breakpoint copies by prefixing each with its own media query; a sizes string that already holds media queries comes out broken\n// (\"(min-width: 1200px) (max-width: 1099px) 100vw, 45vw, …\") and the browser falls back to the LAST value on every screen → phones downloaded the 512 px variant. So media queries are rewritten as one length:\n// \"(max-width: 1099px) 100vw, 45vw\" → \"max(45vw, min(100vw, calc((1100px - 100vw) * 9999)))\". Same slot at every width (checked in Chromium + WebKit); anything it cannot parse is passed through.\nconst rsSizes=sz=>{const parts=String(sz||\"\").split(\",\").map(p=>p.trim());if(parts.length<2)return sz;const steps=[];for(const p of parts.slice(0,-1)){const m=p.match(/^\\(max-width:\\s*(\\d+)px\\)\\s*(\\d+)vw$/);if(!m)return sz;steps.push([+m[1],+m[2]]);}const zm=parts[parts.length-1].match(/^(\\d+)vw$/);if(!zm)return sz;const z=+zm[1];if(steps.length===1&&steps[0][1]<z)return`min(${z}vw, max(${steps[0][1]}vw, calc((100vw - ${steps[0][0]}px) * 9999)))`;for(let i=0;i<steps.length;i++)if(steps[i][1]<(i+1<steps.length?steps[i+1][1]:z))return sz;return`max(${[`${z}vw`].concat(steps.map(([b,x])=>`min(${x}vw, calc((${b+1}px - 100vw) * 9999))`)).join(\", \")})`;};const RS=(u,sizes,tall=1)=>{const s=String(u||\"\");const b=s.split(\"?\")[0];const tl=Math.max(1,tall||1);if(/framerusercontent\\.com\\/images\\//.test(s)){const w=rsTarget(sizes)*tl;const d=w<=512?512:w<=1024?1024:2048;const dw=n=>Math.round(n/tl);return{src:`${b}?scale-down-to=${d}`,srcSet:`${b}?scale-down-to=512 ${dw(512)}w, ${b}?scale-down-to=1024 ${dw(1024)}w, ${b}?scale-down-to=2048 ${dw(2048)}w`,sizes:rsSizes(sizes)};}if(/images\\.unsplash\\.com\\//.test(s)){const w=rsTarget(sizes);const q=n=>`${b}?w=${n}&q=70&fm=jpg&auto=format`;return{src:q(w),srcSet:RS_W.filter(n=>n<=Math.max(w*2,480)).map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}// Wikimedia Commons stand-ins from media/standins.json (thumb urls …/1280px-Name.jpg): only the standard thumb steps exist. A 1920px url (the hero photo) is passed through untouched.\nconst wm=s.match(/wikimedia\\.org\\/.*\\/(\\d+)px-/);if(wm&&+wm[1]<=1280){const w=rsTarget(sizes);const q=n=>b.replace(/\\/\\d+px-/,`/${n}px-`);const st=[500,960,1280].filter(n=>n<=+wm[1]);return{src:q(st.find(n=>n>=w)||st[st.length-1]),srcSet:st.map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}return{src:s};};// A Framer Font control stores a selector (GF;Family-700), not a CSS family — derive one, reject anything with ';'\nconst famOf=f=>{if(!f)return\"\";if(typeof f===\"string\")return f.includes(\";\")?\"\":f;if(f.fontFamily&&!String(f.fontFamily).includes(\";\"))return String(f.fontFamily);const sel=String(f.fontSelector||\"\");if(!sel)return\"\";const n=sel.split(\";\").pop()||\"\";return n.replace(/-(regular|italic|bold|\\d{3}(italic)?)$/i,\"\").replace(/-/g,\" \");};const wOf=(f,fb)=>{if(!f)return fb;if(f.fontWeight)return Number(f.fontWeight)||fb;const m=String(f.fontSelector||\"\").match(/-(\\d{3})/);return m?Number(m[1]):fb;};// famCss: Framer's Font `fontFamily` is ALREADY a stack — never wrap it in quotes (one fake family → fallback renders). A bare name gets quoted.\nconst famCss=f=>{const fa=famOf(f).replace(/\"/g,\"'\").trim();if(!fa)return\"\";return fa.includes(\",\")||fa.startsWith(\"'\")?fa:`'${fa}'`;};const stack=(custom,f,fb,tail)=>{const fam=custom?famCss(f):\"\";return`${fam?`${fam}, `:\"\"}${fb}, ${tail}`;};function useFonts(){useEffect(()=>{if(typeof document===\"undefined\"||document.getElementById(\"rb-fonts\"))return;const l=document.createElement(\"link\");l.id=\"rb-fonts\";l.rel=\"stylesheet\";l.href=FONTS;document.head.appendChild(l);},[]);}// live = client after hydration and not on the canvas. SSR and the first client render share the same markup.\n// TRUE on the Framer canvas AND in its export / thumbnail / screenshot renderers (anything that is not the running preview): no scroll and no hydration there, so every reveal / pinned stage must draw its FINAL state or the editor shows empty blocks.\nfunction useStill(){const isStatic=useIsStaticRenderer();let t=null;try{t=RenderTarget.current();}catch(e){}return isStatic||t!==null&&t!==RenderTarget.preview;}function useLive(){const isStatic=useIsStaticRenderer();const[live,setLive]=useState(false);useEffect(()=>{if(!isStatic&&RenderTarget.current()!==RenderTarget.canvas&&typeof window!==\"undefined\")setLive(true);},[isStatic]);return live;}// Width/height of the root + viewport height. SSR starts from the breakpoint hint (Framer renders the Tablet/Phone copies with the same code and no width).\nfunction useSize(root,hint){const ov=String(hint||\"\").toLowerCase();const[w,setW]=useState(ov===\"phone\"?390:ov===\"tablet\"?810:1440),[vh,setVh]=useState(ov===\"phone\"?844:ov===\"tablet\"?1080:900);useLayoutEffect(()=>{const el=root.current;if(!el)return;const ro=new ResizeObserver(([e])=>{const x=Math.round((e.borderBoxSize&&e.borderBoxSize[0]?e.borderBoxSize[0].inlineSize:0)||el.offsetWidth);if(x>0)setW(x);});ro.observe(el);const vv=()=>setVh(window.innerHeight);vv();const read=()=>{const x=Math.round(el.offsetWidth);if(x>0)setW(x);};const t1=window.setTimeout(read,150),t2=window.setTimeout(read,700),t3=window.setTimeout(read,1600);window.addEventListener(\"resize\",vv);window.addEventListener(\"load\",read);return()=>{ro.disconnect();window.clearTimeout(t1);window.clearTimeout(t2);window.clearTimeout(t3);window.removeEventListener(\"resize\",vv);window.removeEventListener(\"load\",read);};},[]);return{w,vh};}const useReduced=()=>{const[rm,setRm]=useState(false);useLayoutEffect(()=>{setRm(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches);},[]);return rm;};// One shared rAF for every section. Each frame runs ALL reads first (layout reads: getBoundingClientRect, offsetHeight), then ALL writes (CSS vars, transforms).\n// Interleaving read → write → read made the browser recalc the whole page's style once per section per frame (layout thrashing: 20+ recalcs a frame).\nfunction onTick(fn,read,pre){if(typeof window===\"undefined\")return()=>{};const w=window;if(!w.__ovTick){w.__ovTick={pre:new Set,subs:new Set,reads:new Set,raf:0};const loop=t=>{const T=w.__ovTick;T.pre.forEach(r=>r(t));T.reads.forEach(r=>r(t));T.subs.forEach(s=>s(t));T.raf=requestAnimationFrame(loop);};w.__ovTick.raf=requestAnimationFrame(loop);}w.__ovTick.subs.add(fn);if(read)w.__ovTick.reads.add(read);if(pre)w.__ovTick.pre.add(pre);return()=>{w.__ovTick.subs.delete(fn);if(read)w.__ovTick.reads.delete(read);if(pre)w.__ovTick.pre.delete(pre);};}const clamp01=v=>Math.min(1,Math.max(0,v));const easeIO=t=>{const x=clamp01(t);return x<.5?4*x*x*x:1-Math.pow(-2*x+2,3)/2;};// RUNBOOK tokens (the 8 names are shared with every kit, only the values change): Paper(bone) #F2F3EE · Ink #0B0D10 · Accent(brass) = ACID LIME #D4F542 (a FILL behind ink text, dots, marks, mono labels on dark; never text on light → --rb-acc) · Signal(pine) = deep lime #5E7A0C (fills / light-ground accent text) · Line(fog) #D8DAD3 · Muted(stone) #6E7370 · White(cloud) #F2F3EE · Dark(night) #0B0D10.\nconst DEF={bone:\"#F2F3EE\",ink:\"#0B0D10\",brass:\"#D4F542\",pine:\"#5E7A0C\",fog:\"#D8DAD3\",stone:\"#6E7370\",cloud:\"#F2F3EE\",night:\"#0B0D10\"};const colorsOf=p=>({bone:p.bone||DEF.bone,ink:p.ink||DEF.ink,brass:p.brass||DEF.brass,pine:p.pine||DEF.pine,fog:p.fog||DEF.fog,stone:p.stone||DEF.stone,cloud:p.cloud||DEF.cloud,night:p.night||DEF.night});// a Style-bound colour arrives as var(--token-…, #hex): let the browser resolve it to r,g,b for canvas drawing\nconst cssRgb=(el,col,fb)=>{if(!el||typeof window===\"undefined\")return fb;const p=document.createElement(\"i\");p.style.display=\"none\";p.style.color=col;el.appendChild(p);const v=getComputedStyle(p).color;p.remove();const m=v.match(/(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?)/);return m?`${Math.round(+m[1])},${Math.round(+m[2])},${Math.round(+m[3])}`:fb;};const cssVars=c=>({\"--rb-bone\":c.bone,\"--rb-ink\":c.ink,\"--rb-brass\":c.brass,\"--rb-pine\":c.pine,\"--rb-fog\":c.fog,\"--rb-stone\":c.stone,\"--rb-cloud\":c.cloud,\"--rb-night\":c.night});const COLOR_CONTROLS={bone:{type:ControlType.Color,title:\"Paper\",defaultValue:DEF.bone},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:DEF.ink},brass:{type:ControlType.Color,title:\"Accent\",description:\"Acid lime: lime words in headlines on dark, dots, button arrow seats, lamps, mono labels on dark. Never small lime text on a light ground\",defaultValue:DEF.brass},pine:{type:ControlType.Color,title:\"Signal\",description:\"Deep lime: the small accent text on light grounds (the paper band) is mixed from it\",defaultValue:DEF.pine},fog:{type:ControlType.Color,title:\"Line\",defaultValue:DEF.fog},stone:{type:ControlType.Color,title:\"Muted\",defaultValue:DEF.stone},cloud:{type:ControlType.Color,title:\"White\",description:\"Plates, cards and the type on dark\",defaultValue:DEF.cloud},night:{type:ControlType.Color,title:\"Dark\",defaultValue:DEF.night}};// ---- Fonts: Custom Fonts toggle → Font controls; off = Inter Tight 600 / Inter / JetBrains Mono ----\nconst FONT_CONTROLS={customFonts:{type:ControlType.Boolean,title:\"Custom Fonts\",description:\"Off = the site fonts (set once on the Header in the Site Layout). On = different fonts for this section only\",defaultValue:false},displayFont:{type:ControlType.Font,title:\"Display Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},bodyFont:{type:ControlType.Font,title:\"Body Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},monoFont:{type:ControlType.Font,title:\"Mono Font\",defaultFontType:\"monospace\",hidden:p=>!p.customFonts}};const NUMF=\"var(--rb-font-m, 'JetBrains Mono'), ui-monospace, Menlo, monospace\";// Site-wide fonts: the Header (Site Layout, every page) writes --rb-font-d/b/m (+ weights) on :root when its Custom Fonts is on. A section uses them unless its own Custom Fonts is on.\nconst siteFontCss=p=>{if(!p||!p.customFonts)return\"\";const v=[];const put=(k,f,w)=>{const fam=famCss(f);if(fam){v.push(`--rb-font-${k}:${fam}`);v.push(`--rb-font-${k}w:${wOf(f,w)}`);}};put(\"d\",p.displayFont,400);put(\"b\",p.bodyFont,400);put(\"m\",p.monoFont,400);put(\"a\",p.accentFont,400);return v.length?`:root{${v.join(\";\")}}`:\"\";};function fontsOf(p){const on=!!p.customFonts;const D={fontFamily:stack(on,p.displayFont,\"var(--rb-font-d, 'Inter Tight')\",\"'Helvetica Neue', Arial, sans-serif\"),fontWeight:on?wOf(p.displayFont,600):\"var(--rb-font-dw, 600)\",fontStyle:on&&p.displayFont&&p.displayFont.fontStyle?p.displayFont.fontStyle:\"normal\"};const B={fontFamily:stack(on,p.bodyFont,\"var(--rb-font-b, 'Inter')\",\"system-ui, -apple-system, Arial, sans-serif\"),fontWeight:on?wOf(p.bodyFont,400):\"var(--rb-font-bw, 400)\"};const M={fontFamily:stack(on,p.monoFont,\"var(--rb-font-m, 'JetBrains Mono')\",\"ui-monospace, 'SF Mono', Menlo, monospace\"),fontWeight:on?wOf(p.monoFont,500):\"var(--rb-font-mw, 500)\"};return{D,B,M};}const BP_CONTROL={bpHint:{type:ControlType.Enum,title:\"Breakpoint Hint\",description:\"Set per breakpoint copy so the server render starts at the right width\",options:[\"auto\",\"desktop\",\"tablet\",\"phone\"],optionTitles:[\"Auto\",\"Desktop\",\"Tablet\",\"Phone\"],defaultValue:\"auto\",hidden:()=>true}};// In-page CTA jumps (\"#demo\", \"/#demo\"): scroll to the section when it is on this page, otherwise go to it on the home page.\nfunction jumpTo(e,href){try{const m=String(href||\"\").match(/^\\/?#([\\w-]+)$/);if(!m)return;const el=document.getElementById(m[1]);if(el){e.preventDefault();const W=window;const L=W.__ltLenis||W.__vcLenis||W.lenis;if(L&&L.scrollTo)L.scrollTo(el,{offset:-20});else el.scrollIntoView({behavior:\"smooth\",block:\"start\"});try{history.replaceState(null,\"\",\"#\"+m[1]);}catch(x){}}else if(href.startsWith(\"#\")){e.preventDefault();window.location.href=\"/\"+href;}}catch(x){}}// display text (section headlines, card h3): Inter Tight 600, tight (-.04em). With a section's Custom Fonts on, the picked font is used as is.\nconst HD=D=>({...D,letterSpacing:\"-.04em\"});// numbers in display type keep their columns (counters never jiggle)\nconst NUM={fontVariantNumeric:\"tabular-nums lining-nums\"};// ---- Button system: PILLS (radius 999), the same two the hero draws (.rbh-btn-p / .rbh-btn-g).\n// kinds: solid = the pill (ink face on light grounds, light face on dark ones) with a round LIME ARROW SEAT on the right that floods the whole pill on hover / focus, the label stays ink · ghost = a glass pill (night veil + blur + hairline on dark; outline on light) with a round lime LAMP that glows, fills white / ink on hover · quiet = a small ghost (42px) · ink = alias of solid.\n// Defaults: solid → arrow, no lamp · ghost / quiet → lamp, no arrow. Pass arrow / lamp to override. `sub` = a small second line above the label. Without href (or as=\"button\") it renders a <button>.\nconst BtnArrow=()=>/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const Btn=({href,label,kind=\"solid\",arrow,lamp,style,className,onClick,ariaLabel,cur,sub,as,state})=>{const kd=kind===\"ink\"?\"solid\":kind;const ar=arrow===undefined?kd===\"solid\":arrow;const lp=lamp===undefined?kd!==\"solid\":lamp;const inner=/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-face\",children:[lp&&/*#__PURE__*/_jsx(\"i\",{className:\"rb-btn-lamp\",\"aria-hidden\":true}),/*#__PURE__*/_jsxs(\"span\",{className:\"rb-btn-l\",children:[sub?/*#__PURE__*/_jsx(\"span\",{className:\"rb-sub\",children:sub}):null,/*#__PURE__*/_jsx(\"span\",{className:\"rb-mark\",children:label})]}),ar&&/*#__PURE__*/_jsx(\"span\",{className:\"rb-btn-a\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(BtnArrow,{})})]});const cls=`rb-btn rb-${kd}${ar?\" rb-has-a\":\"\"}${sub?\" rb-two\":\"\"}${state===\"ok\"?\" is-ok\":\"\"}${className?\" \"+className:\"\"}`;if(as===\"button\"||!href)return /*#__PURE__*/_jsx(\"button\",{type:onClick?\"button\":\"submit\",className:cls,\"data-cur\":cur||\"go\",onClick:onClick,\"aria-label\":ariaLabel,style:style,children:inner});return /*#__PURE__*/_jsx(\"a\",{className:cls,\"data-cur\":cur||\"go\",href:href,target:/^https?:\\/\\//.test(href||\"\")?\"_blank\":undefined,rel:/^https?:\\/\\//.test(href||\"\")?\"noopener\":undefined,onClick:onClick||(e=>jumpTo(e,href)),\"aria-label\":ariaLabel,style:style,children:inner});};function useNearFocus(root,live){useEffect(()=>{if(!live||!root.current)return;const el=root.current;const f=e=>{const t=e.target;const sc=t.closest?.(\".rb-inring\");if(!sc)return;try{t.scrollIntoView({block:\"nearest\",inline:\"nearest\"});}catch(x){}};el.addEventListener(\"focusin\",f);return()=>el.removeEventListener(\"focusin\",f);},[live]);}// Roll — a rolling mono number: every digit is a 0–9 column that slides to its value; separators stay put. rm = no transition.\nconst Roll=({text,rm=false,cls})=>/*#__PURE__*/_jsx(\"span\",{className:`rb-roll${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,\"aria-hidden\":true,children:String(text).split(\"\").map((ch,i)=>/\\d/.test(ch)?/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg\",children:/*#__PURE__*/_jsx(\"span\",{className:\"rb-dg-c\",style:{[\"--d\"]:+ch},children:[0,1,2,3,4,5,6,7,8,9].map(d=>/*#__PURE__*/_jsx(\"i\",{children:d},d))})},i):/*#__PURE__*/_jsx(\"span\",{className:\"rb-sep\",children:ch},i))});const Count=({to,on,rm=false,ms=1400,cls,style})=>{const v=useCount(to,on,rm,ms);return /*#__PURE__*/_jsx(\"span\",{className:`rb-count rb-num${cls?\" \"+cls:\"\"}`,style:style,\"aria-label\":String(to||\"\"),children:/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,children:v})});};// Md — mini markdown for CMS bodies: blank line = paragraph, \"## \" = h3, \"- \" = list item, \"> \" = quote, **bold**. Never dangerouslySetInnerHTML.\nconst mdInline=t=>String(t).split(/\\*\\*([^*]+)\\*\\*/g).map((x,i)=>i%2?/*#__PURE__*/_jsx(\"strong\",{children:x},i):x);const Md=({text,D,cls})=>{const lines=String(text||\"\").split(/\\n+/).map(l=>l.trim()).filter(Boolean);const out=[];let list=[];const flush=()=>{if(list.length){out.push(/*#__PURE__*/_jsx(\"ul\",{children:list.map((x,i)=>/*#__PURE__*/_jsx(\"li\",{children:mdInline(x)},i))},\"u\"+out.length));list=[];}};lines.forEach(l=>{if(l.startsWith(\"- \")){list.push(l.slice(2));return;}flush();if(l.startsWith(\"## \"))out.push(/*#__PURE__*/_jsx(\"h3\",{style:D?HD(D):undefined,children:l.slice(3)},out.length));else if(l.startsWith(\"> \"))out.push(/*#__PURE__*/_jsx(\"blockquote\",{children:mdInline(l.slice(2))},out.length));else out.push(/*#__PURE__*/_jsx(\"p\",{children:mdInline(l)},out.length));});flush();return /*#__PURE__*/_jsx(\"div\",{className:`rb-md${cls?\" \"+cls:\"\"}`,children:out});};const Rule=({on,dir=\"x\",delay=0,rm=false,style,cls})=>/*#__PURE__*/_jsx(\"i\",{className:`rb-rule-${dir}${on?\" is-on\":\"\"}${rm?\" is-rm\":\"\"}${cls?\" \"+cls:\"\"}`,style:{[\"--dl\"]:`${delay}ms`,...style||{}},\"aria-hidden\":true});const IcoArrow=({s=15})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const IcoCheck=({s=12})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"3.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12.5l4.5 4.5L19 7.5\"})});const CSS_BASE=`\n:where(.mw){position:relative;z-index:10} .mw,.mw *{box-sizing:border-box;min-width:0} .rb-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;padding:0!important;margin:-1px!important;border:0!important} :where(.mw) a{color:inherit} html,body{overflow-x:clip}\n/* focus: a 3px ink ring with a light band (reads on paper, on plates and over a picture); inside dark boxes (.rb-dark / .rb-dk) the ring is paper */\n:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"]),[role=\"button\"]):focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--rb-cloud,#F8F8F5)!important}\n:where(.rb-dark,.rb-dk) :where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"])):focus-visible{outline-color:var(--rb-cloud,#F8F8F5)!important;box-shadow:0 0 0 2px var(--rb-night,#14161A)!important}\n:where(.rb-inring) :where(a[href],button,input,summary,[tabindex]):focus-visible,:where(a[href],button,input,summary,[tabindex]).rb-inring:focus-visible{outline:3px solid var(--rb-ink,#14161A)!important;outline-offset:-3px!important;box-shadow:inset 0 0 0 5px var(--rb-cloud,#F8F8F5)!important}\n:where(.mw) :focus-visible{outline:3px solid var(--rb-ink,#14161A);outline-offset:2px}\n/* Stage 7: a control that takes focus never lands under the fixed header */\n:where(.mw) :where(a[href],button,input,select,textarea,summary,[tabindex]){scroll-margin-top:116px}\n/* TEXT-SAFE values per ground. --rb-mut = muted text (≥4.5:1 on paper, deeper paper and plates). --rb-acc = the accent as SMALL TEXT: deep lime mixed with ink on light grounds (the paper band), lime mixed with white on dark ones. The raw --rb-brass (acid lime #D4F542) is lime words / mono labels / dots on DARK and a fill behind ink text (seats, pills); never text on a light ground (1.4:1); --rb-pine (deep lime) is for fills. */\n.mw{--rb-bone2:color-mix(in srgb,var(--rb-bone) 90%,var(--rb-stone));--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent)}\n.rb-dark,.mw.rb-dark,.mw .rb-dk{--rb-mut:color-mix(in srgb,var(--rb-stone) 36%,var(--rb-cloud));--rb-acc:color-mix(in srgb,var(--rb-brass) 78%,var(--rb-cloud));--rb-ok:color-mix(in srgb,var(--rb-pine) 45%,var(--rb-cloud));--rb-hair:color-mix(in srgb,var(--rb-cloud) 16%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-cloud) 30%,transparent)}\n.mw.rb-dark .rb-lt,.mw .rb-dk .rb-lt{--rb-mut:color-mix(in srgb,var(--rb-stone) 62%,var(--rb-ink));--rb-acc:color-mix(in srgb,var(--rb-pine) 72%,var(--rb-ink));--rb-ok:var(--rb-acc);--rb-hair:color-mix(in srgb,var(--rb-ink) 13%,transparent);--rb-hair2:color-mix(in srgb,var(--rb-ink) 24%,transparent);color:var(--rb-ink)}\n/* section grounds: rb-dark = night (--rb-night, the whole page) \\xb7 paper (default, the one RbReviews band) \\xb7 rb-paper2 = deeper paper (--rb-bone2) */\n.rb-sec{background:var(--rb-bone);color:var(--rb-ink)} .rb-sec.rb-paper2{background:var(--rb-bone2)} .rb-sec.rb-dark{background:var(--rb-night);color:var(--rb-cloud)}\n/* ---- Buttons: PILLS, radius 999, 56px high, label 14px / 600. Colours: --kf face \\xb7 --kl label \\xb7 --kh the fill on hover \\xb7 --klh label on hover \\xb7 --kr outline. */\n.rb-btn{position:relative;display:inline-flex;height:56px;padding:0;border:0;border-radius:999px;background:none;text-decoration:none;white-space:nowrap;font:inherit;line-height:1;cursor:pointer;-webkit-appearance:none;appearance:none;color:var(--kl)!important;-webkit-tap-highlight-color:transparent;--lamp:var(--rb-brass)}\n.rb-btn-face{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;width:100%;height:100%;padding:0 22px;border-radius:999px;overflow:hidden;isolation:isolate;background:var(--kf);color:var(--kl);box-shadow:var(--kr,none);font-size:14px;font-weight:600;letter-spacing:.005em;transition:background .4s,color .4s,box-shadow .4s,transform .18s}\n.rb-btn:hover .rb-btn-face,.rb-btn:focus-visible .rb-btn-face{background:var(--kh);color:var(--klh);box-shadow:var(--krh,var(--kr,none))} .rb-btn:active .rb-btn-face{transform:scale(.965);transition-duration:.06s}\n.rb-btn-l{position:relative;z-index:1;display:inline-flex;flex-direction:column;justify-content:center;line-height:1.15} .rb-sub{display:block;font-size:10.5px;font-weight:500;letter-spacing:.04em;opacity:.78;margin-bottom:1px} .rb-mark{display:inline-block}\n/* the arrow seat: a round LIME seat inside the right end (= the hero's .rbh-btn-p); on hover / focus it floods the whole pill (one clip-path on a button-size layer) and the arrow turns from north-east to east */\n.rb-btn.rb-has-a .rb-btn-face{padding:0 8px 0 22px;transition:color .3s,box-shadow .4s,transform .18s} .rb-btn.rb-has-a:hover .rb-btn-face,.rb-btn.rb-has-a:focus-visible .rb-btn-face{background:var(--kf);color:var(--rb-ink)}\n.rb-btn.rb-has-a .rb-btn-face::before{content:\"\";position:absolute;inset:0;z-index:0;background:var(--rb-brass);clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px);transition:clip-path .55s cubic-bezier(.2,.8,.2,1)} .rb-btn.rb-has-a:hover .rb-btn-face::before,.rb-btn.rb-has-a:focus-visible .rb-btn-face::before{clip-path:inset(0 0 0 0 round 999px)}\n.rb-btn .rb-btn-a{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:40px;height:40px;color:var(--rb-ink)} .rb-btn .rb-btn-a svg{display:block;width:15px;height:15px;transform:rotate(-45deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)} .rb-btn:hover .rb-btn-a svg,.rb-btn:focus-visible .rb-btn-a svg{transform:none}\n/* the lamp: a small round LIME lamp that glows, with a round ping (ghost / quiet) = the hero's .rbh-lamp */\n.rb-btn-lamp{position:relative;z-index:1;flex:none;width:8px;height:8px;border-radius:50%;background:var(--lamp);box-shadow:0 0 10px var(--lamp)} .rb-btn-lamp::after{content:\"\";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--lamp);opacity:0;animation:rb-ping 2.6s ease-out infinite} @keyframes rb-ping{0%{opacity:.9;transform:scale(.5)}70%,100%{opacity:0;transform:scale(1.5)}}\n/* solid: ink pill + light label on light grounds; light pill + ink label on dark grounds (= the hero's main button). Without an arrow the whole pill turns lime. Label on lime is always ink (15:1). */\n.rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud);--kh:var(--rb-brass);--klh:var(--rb-ink)}\n.rb-dark .rb-btn.rb-solid,.mw .rb-dk .rb-btn.rb-solid{--kf:var(--rb-cloud);--kl:var(--rb-ink)} .rb-dark .rb-btn.rb-solid .rb-btn-face,.mw .rb-dk .rb-btn.rb-solid .rb-btn-face{box-shadow:0 12px 30px -14px color-mix(in srgb,#000 80%,transparent)}\n.mw.rb-dark .rb-lt .rb-btn.rb-solid,.mw .rb-dk .rb-lt .rb-btn.rb-solid{--kf:var(--rb-ink);--kl:var(--rb-cloud)}\n/* ghost / quiet: an outline pill on light grounds; on dark grounds a GLASS pill (night veil 45 % + blur + white hairline, = the hero's .rbh-btn-g); on hover it fills with ink (light) or with white (dark) */\n.rb-btn.rb-ghost,.rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-dark .rb-btn.rb-ghost,.mw .rb-dk .rb-btn.rb-ghost,.rb-dark .rb-btn.rb-quiet,.mw .rb-dk .rb-btn.rb-quiet{--kf:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 45%,transparent);--kl:var(--rb-cloud);--kh:var(--rb-cloud);--klh:var(--rb-ink);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 56%,transparent);--krh:inset 0 0 0 1px var(--rb-cloud)} .rb-dark .rb-btn.rb-ghost .rb-btn-face,.mw .rb-dk .rb-btn.rb-ghost .rb-btn-face,.rb-dark .rb-btn.rb-quiet .rb-btn-face,.mw .rb-dk .rb-btn.rb-quiet .rb-btn-face{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}\n.mw.rb-dark .rb-lt .rb-btn.rb-ghost,.mw .rb-dk .rb-lt .rb-btn.rb-ghost,.mw.rb-dark .rb-lt .rb-btn.rb-quiet,.mw .rb-dk .rb-lt .rb-btn.rb-quiet{--kf:transparent;--kl:var(--rb-ink);--kh:var(--rb-ink);--klh:var(--rb-cloud);--kr:inset 0 0 0 1px color-mix(in srgb,var(--rb-ink) 46%,transparent);--krh:inset 0 0 0 1px var(--rb-ink)}\n.rb-btn.rb-ghost .rb-btn-face,.rb-btn.rb-quiet .rb-btn-face{justify-content:center;gap:10px} .rb-btn.rb-ghost.rb-has-a .rb-btn-face,.rb-btn.rb-quiet.rb-has-a .rb-btn-face{justify-content:space-between}\n.rb-btn.rb-quiet{height:42px;border-radius:999px} .rb-btn.rb-quiet .rb-btn-face{padding:0 16px;gap:9px;font-size:12.5px;border-radius:999px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face{padding:0 5px 0 14px} .rb-btn.rb-quiet .rb-btn-a{width:32px;height:32px} .rb-btn.rb-quiet .rb-btn-a svg{width:13px;height:13px} .rb-btn.rb-quiet.rb-has-a .rb-btn-face::before{clip-path:inset(5px 5px 5px calc(100% - 37px) round 999px)}\n.rb-btn:disabled,.rb-btn[aria-disabled=\"true\"]{opacity:.55;pointer-events:none}\n@media (max-width:600px),(hover:none){.mw .rb-btn{max-width:100%}}\n.mw button,.mw input,.mw select,.mw textarea{font-family:inherit}\n/* mono data lines + numbers */\n.rb-mono{font-size:11.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;line-height:1.5;font-variant-numeric:tabular-nums} .rb-num{font-variant-numeric:tabular-nums lining-nums} .rb-lbl{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--rb-mut)}\n/* a live lamp: a small round LIME dot that glows, with a slow round ping (.is-ok = steady deep lime) — the hero's pin dot in small */\n.rb-lit-dot{position:relative;display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--rb-brass);box-shadow:0 0 10px var(--rb-brass)} .rb-lit-dot::after{content:\"\";position:absolute;inset:-4px;border-radius:50%;box-shadow:0 0 0 1.5px var(--rb-brass);opacity:0;animation:rb-glow 2.6s ease-out infinite} @keyframes rb-glow{0%{opacity:.7;transform:scale(.5)}100%{opacity:0;transform:scale(1.5)}} .rb-lit-dot.is-ok{background:var(--rb-pine)} .rb-lit-dot.is-ok::after{animation:none}\n/* Plates: a plate over a photograph / on paper — soft, 8px radius, hairline, a soft drop so it lifts off a picture; on dark grounds use .rb-plate.rb-dark = the night-glass plate (veil + hairline, as the hero pins). .rb-frame = a picture frame (8px radius, clips its image; night ground on dark sections so nothing flashes paper). CASCADE-ORDER LAW: every component re-injects this base CSS, so a LATER component's .rb-plate beats an earlier component's single-class rule: a component that overrides a base class on the same element uses 2+ classes (.rbh-score.rb-plate{…}). */\n.rb-frame{position:relative;overflow:hidden;border-radius:8px;background:var(--rb-bone2)} .mw.rb-dark .rb-frame,.mw .rb-dk .rb-frame{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))} .rb-frame>img{display:block;width:100%;height:100%;object-fit:cover}\n.rb-plate{position:relative;border-radius:8px;background:var(--rb-cloud);color:var(--rb-ink);box-shadow:inset 0 0 0 1px var(--rb-hair),0 1px 2px color-mix(in srgb,var(--rb-ink) 8%,transparent),0 10px 28px -12px color-mix(in srgb,var(--rb-ink) 28%,transparent)}\n.rb-plate.rb-dark,.mw .rb-dk{background:var(--rb-night);color:var(--rb-cloud)} .rb-plate.rb-dark{background:color-mix(in srgb,color-mix(in srgb,var(--rb-night) 90%,#000) 78%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-cloud) 18%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}\n/* Chips: small mono PILLS (radius 999; tool names, kinds, week labels). Add the mono font with style={M}.\n   .rb-chip = hairline outline \\xb7 .is-amb = THE LIME PILL (ink on lime: the kind chip, the week label, the unit) \\xb7 .is-plate = ink on white (over pictures / on dark) \\xb7 .is-ink = white on ink (flips to ink on white on dark grounds) \\xb7 .is-acc = accent text (AA) \\xb7 button.rb-chip / a.rb-chip = a filter / brief chip: hover fills ink (white on dark), [aria-pressed=\"true\"] / .is-on = lime pill */\n.rb-chip{display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px;border:0;border-radius:999px;background:none;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap;text-decoration:none;box-shadow:inset 0 0 0 1px var(--rb-hair2);color:inherit} .rb-chip.is-acc{color:var(--rb-acc)} .rb-chip.is-ok{color:var(--rb-ok)}\n.rb-chip.is-amb,.rb-dark .rb-chip.is-amb,.mw .rb-dk .rb-chip.is-amb{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none} .rb-chip.is-plate,.rb-dark .rb-chip.is-plate,.mw .rb-dk .rb-chip.is-plate{background:var(--rb-cloud);color:var(--rb-ink);box-shadow:none} .rb-chip.is-ink{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark .rb-chip.is-ink,.mw .rb-dk .rb-chip.is-ink{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip,a.rb-chip{height:34px;padding:0 14px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .3s,color .3s,box-shadow .3s} button.rb-chip:hover,a.rb-chip:hover{background:var(--rb-ink);color:var(--rb-cloud);box-shadow:none} .rb-dark button.rb-chip:hover,.mw .rb-dk button.rb-chip:hover,.rb-dark a.rb-chip:hover,.mw .rb-dk a.rb-chip:hover{background:var(--rb-cloud);color:var(--rb-ink)}\nbutton.rb-chip[aria-pressed=\"true\"],button.rb-chip.is-on,a.rb-chip.is-on,.rb-dark button.rb-chip[aria-pressed=\"true\"],.mw .rb-dk button.rb-chip[aria-pressed=\"true\"]{background:var(--rb-brass);color:var(--rb-ink);box-shadow:none}\n/* LIME WORDS as an inline mark (lime text on dark, deep lime on the paper band — never a plate) and the step number (\\xab01\\xbb, \\xabStep 02 / 05\\xbb; add style={M}) */\n.rb-amb{font-style:normal;color:var(--rb-acc)} .mw.rb-dark .rb-amb,.mw .rb-dk .rb-amb{color:var(--rb-brass)} .mw.rb-dark .rb-lt .rb-amb,.mw .rb-dk .rb-lt .rb-amb{color:var(--rb-acc)}\n.rb-stn{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--rb-mut)} .rb-stn b{font-weight:inherit;color:var(--rb-acc)}\n/* Roll */ .rb-roll{display:inline-flex;align-items:flex-start;white-space:nowrap;font-variant-numeric:tabular-nums} .rb-dg{display:inline-block;height:1em;overflow:hidden;vertical-align:top} .rb-dg-c{display:flex;flex-direction:column;transform:translateY(calc(var(--d) * -1em));transition:transform .55s cubic-bezier(.3,.9,.3,1)} .rb-dg-c i{display:block;height:1em;line-height:1em;font-style:normal} .rb-sep{display:inline-block;height:1em;line-height:1em} .rb-roll.is-rm .rb-dg-c,.mw[data-kb] .rb-dg-c{transition:none}\n/* Rules */ .rb-rule-x,.rb-rule-y{display:block;background:var(--rb-hair);transform-origin:0 0;transition:transform 1.1s cubic-bezier(.2,.8,.2,1) var(--dl,0ms)} .rb-rule-x{width:100%;height:1px;transform:scaleX(0)} .rb-rule-y{width:1px;height:100%;transform:scaleY(0)} .rb-rule-x.is-on{transform:scaleX(1)} .rb-rule-y.is-on{transform:scaleY(1)} .rb-rule-x.is-rm,.rb-rule-y.is-rm,.mw[data-kb] .rb-rule-x,.mw[data-kb] .rb-rule-y{transition:none}\n/* Count */ .rb-count{display:inline-block;white-space:nowrap}\n/* Md */ .rb-md{display:grid;gap:14px;font-size:16.5px;line-height:1.6} .rb-md p,.rb-md ul,.rb-md h3,.rb-md blockquote{margin:0} .rb-md h3{margin-top:14px;font-size:clamp(24px,2vw,30px);line-height:1.15} .rb-md ul{padding-left:1.1em;display:grid;gap:6px} .rb-md strong{font-weight:600} .rb-md blockquote{padding-left:16px;border-left:3px solid var(--rb-brass);font-size:1.1em}\n/* HEIGHT LAW: a block whose content swaps stacks all items in ONE grid cell so the tallest reserves the height */ .rb-swap{display:grid} .rb-swap>*{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s} .rb-swap>.is-on{opacity:1;visibility:visible;transition:opacity .5s ease}\n@media (prefers-reduced-motion:reduce){.rb-btn-lamp::after,.rb-lit-dot::after{animation:none!important} .mw *,.sth *{animation-duration:.01ms!important;transition-duration:.01ms!important}}\n`;// ===== RUNBOOK motion layer (composed by mk.py after _common) =====\n// One shared rAF (onTick). Sections write --sp (0 = top edge enters the viewport bottom → 1 = bottom edge leaves the top) and,\n// for tall pinned wrappers, --pp (0 = wrapper top hits the viewport top → 1 = wrapper bottom hits the viewport bottom). IO-gated.\nconst SCRUB_K=.18;// Decode a section's photos while it is still a screen and a half away, so the first frame it is on screen never waits for a decode.\nfunction usePre(el){try{const io=new IntersectionObserver(es=>{if(!es[0].isIntersecting)return;io.disconnect();el.querySelectorAll(\"img\").forEach(im=>{try{im.loading=\"eager\";im.decode().catch(()=>{});}catch(e){}});},{rootMargin:\"150% 0px 150% 0px\"});io.observe(el);}catch(e){}}function focusTo(el,frac){if(!el||typeof window===\"undefined\")return;if(window.innerWidth<810)return;const r=el.getBoundingClientRect();const vh=window.innerHeight;if(r.height<=vh*1.05)return;const y=r.top+window.scrollY+(r.height-vh)*Math.min(1,Math.max(0,frac));if(Math.abs(window.scrollY-y)<8)return;const w=window;if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}function useScrollVars(ref,live,rm,cb){useEffect(()=>{if(!live||rm||!ref.current)return;const el=ref.current;let vis=true,last=-9,cs=-1,cp=-1,settled=false;usePre(el);const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"25% 0px 25% 0px\"});io.observe(el);// eased scrub: the values glide toward the true scroll position (K per frame), so wheel steps never jump a pinned scene\nlet rt=0,rh=0,vh=1,fresh=false;const read=()=>{if(!vis&&settled){fresh=false;return;}const r=el.getBoundingClientRect();rt=r.top;rh=r.height;vh=window.innerHeight||1;fresh=true;};const off=onTick(()=>{if(!fresh)return;const sp=clamp01((vh-rt)/(vh+rh));const pp=rh>vh*1.05?clamp01(-rt/(rh-vh)):sp;if(cs<0){cs=sp;cp=pp;}else{cs+=(sp-cs)*SCRUB_K;cp+=(pp-cp)*SCRUB_K;if(Math.abs(sp-cs)<5e-4)cs=sp;if(Math.abs(pp-cp)<5e-4)cp=pp;}settled=cs===sp&&cp===pp;if(Math.abs(cs+cp-last)<3e-4)return;last=cs+cp;el.style.setProperty(\"--sp\",cs.toFixed(4));el.style.setProperty(\"--pp\",cp.toFixed(4));if(cb)cb(cs,cp);},read);return()=>{off();io.disconnect();};},[live,rm]);}// STAGE — false while the loader or the page-transition cover is on screen (html.rb-hold-*), so first-screen intros play AFTER the cover lifts, never under it. 9 s safety.\nfunction useStage(live){const[r,setR]=useState(false);useEffect(()=>{if(!live)return;const h=document.documentElement;const ok=()=>!/(^|\\s)rb-hold/.test(h.className);if(ok()){setR(true);return;}const mo=new MutationObserver(()=>{if(ok()){mo.disconnect();setR(true);}});mo.observe(h,{attributes:true,attributeFilter:[\"class\"]});const t=window.setTimeout(()=>{mo.disconnect();setR(true);},9e3);return()=>{mo.disconnect();window.clearTimeout(t);};},[live]);return r;}// true once the element has entered the viewport (stays true) — and only once the stage is clear. Reduced motion = true at once.\nfunction useOn(ref,live,rm,amount=.16){const[on,setOn]=useState(false);const still=useStill();const ready=useStage(live);useEffect(()=>{if(!live)return;if(rm){setOn(true);return;}if(!ready)return;const el=ref.current;if(!el)return;let off=()=>{};// keyboard focus: mark the section FIRST and flush styles, so the reveal that follows runs with instant transitions (a transition keeps the timing it started with)\nconst fin=e=>{try{if(e.target.matches(\":focus-visible\")){el.setAttribute(\"data-kb\",\"\");void el.offsetWidth;}}catch(x){}setOn(true);};const fout=e=>{if(!el.contains(e.relatedTarget))el.removeAttribute(\"data-kb\");};el.addEventListener(\"focusin\",fin);el.addEventListener(\"focusout\",fout);const io=new IntersectionObserver(es=>{for(const e of es)if(e.isIntersecting){io.disconnect();// IO ignores occlusion: under a curtain (Reveal) wait until about a quarter of it is uncovered\noff=onTick(()=>{const rev=el.closest(\".rb-rev.is-act\");const rv=rev?parseFloat(rev.style.getPropertyValue(\"--rv\")||\"0\"):1;if(rv>.24){setOn(true);off();}});}},{threshold:Math.min(amount,Math.max(.005,window.innerHeight*.3/Math.max(1,el.offsetHeight))),rootMargin:\"0px 0px -6% 0px\"});io.observe(el);return()=>{io.disconnect();off();el.removeEventListener(\"focusin\",fin);el.removeEventListener(\"focusout\",fout);};},[live,rm,ready]);return on||still;}// CURTAIN REVEAL — the section is pinned BEHIND the one above it and is uncovered as that one lifts away (the footer movement, for any section).\n// Wrapper = section + a spacer of T, pulled up by T (page length unchanged); the section is sticky for exactly T of scroll. T = min(section height, 100svh):\n// a tall section pins at the top, a short one sits on the bottom edge of the viewport. The section ABOVE needs a higher Layer (z-index).\nfunction Reveal({on,layer=9,style,children}){const live=useLive();const rm=useReduced();const wrap=useRef(null);const inner=useRef(null);const sp=useRef(null);const[h,setH]=useState(0);const[kb,setKb]=useState(false);// keyboard users get the footer as a normal section: a curtain taller than the screen hides its top row under the page above / the fixed header\nconst act=on&&live&&!rm&&h>0&&!kb;useEffect(()=>{if(!on||!live||rm||!inner.current)return;const el=inner.current;const m=()=>setH(el.offsetHeight);m();const ro=new ResizeObserver(m);ro.observe(el);return()=>ro.disconnect();},[on,live,rm]);useEffect(()=>{if(!act||!wrap.current)return;const el=wrap.current;let vis=true,last=-1;const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"30% 0px 30% 0px\"});io.observe(el);let cur=-1,T=0,vh=1,top=0,fresh=false;const read=()=>{if(!vis){fresh=false;return;}T=sp.current?sp.current.offsetHeight:0;vh=window.innerHeight;top=el.getBoundingClientRect().top;fresh=true;};const off=onTick(()=>{if(!fresh||!T)return;const rv=clamp01((vh-T-top)/T);if(cur<0||el.dataset.snap){cur=rv;delete el.dataset.snap;}else{cur+=(rv-cur)*SCRUB_K;if(Math.abs(rv-cur)<5e-4)cur=rv;}if(Math.abs(cur-last)<4e-4)return;last=cur;el.style.setProperty(\"--rv\",cur.toFixed(4));},read);return()=>{off();io.disconnect();};},[act]);return /*#__PURE__*/_jsxs(\"div\",{ref:wrap,className:`rb-rev${act?\" is-act\":\"\"}`,style:{...style||{},[\"--h\"]:`${h}px`,[\"--layer\"]:layer},onFocusCapture:e=>{if(!act||!wrap.current)return;try{if(e.target.matches(\":focus-visible\")){const t0=e.target;setKb(true);requestAnimationFrame(()=>requestAnimationFrame(()=>{try{t0.scrollIntoView({block:\"center\"});}catch(x){}}));return;}}catch(x){}const t=e.target;const w=window;const r=wrap.current.getBoundingClientRect();const T=sp.current?sp.current.offsetHeight:0;const y=Math.max(0,Math.min(document.documentElement.scrollHeight-window.innerHeight,r.top+window.scrollY-window.innerHeight+2*T));if(Math.abs(window.scrollY-y)>4){if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}wrap.current.dataset.snap=\"1\";requestAnimationFrame(()=>{try{const q=t.getBoundingClientRect();if(q.top<0||q.bottom>window.innerHeight)t.scrollIntoView({block:\"nearest\"});}catch(x){}});},children:[/*#__PURE__*/_jsx(\"div\",{ref:inner,className:\"rb-rev-in\",children:children}),/*#__PURE__*/_jsx(\"div\",{ref:sp,className:\"rb-rev-sp\",\"aria-hidden\":true})]});}const REVEAL_CONTROLS={reveal:{type:ControlType.Boolean,title:\"Reveal\",description:\"Curtain: this section waits behind the one above and is uncovered as that one lifts away\",enabledTitle:\"Curtain\",disabledTitle:\"Off\",defaultValue:true},layer:{type:ControlType.Number,title:\"Layer\",description:\"Stacking order. Must be LOWER than the section above (sections default to 10)\",min:0,max:20,step:1,displayStepper:true,defaultValue:9,hidden:p=>p.reveal===false}};const splitWords=s=>String(s||\"\").replace(/\\*([^*]+)\\*/g,(_m,g)=>g.trim().split(/\\s+/).map(w=>{const m=w.match(/^(.*?)([.,!?;:’']*)$/);return m&&m[1]?`*${m[1]}*${m[2]}`:w;}).join(\" \")).split(/\\s+/).filter(Boolean).map(t=>{const m=t.match(/^\\*(.+?)\\*([.,!?;:’']*)$/);return m?{t:m[1],tail:m[2],acc:true}:{t:t.replace(/\\*/g,\"\"),tail:\"\",acc:false};});const plainOf=s=>String(s||\"\").replace(/\\*/g,\"\").replace(/\\s*\\|\\s*/g,\" \").replace(/\\s+/g,\" \").trim();// Head — the section headline (Inter Tight 600, -.04em): its words rise out of masks. \"|\" forces a line break, *stars* around a phrase = LIME WORDS (color var(--rb-brass) on dark, --rb-acc on the paper band; no plate — the same mark as the hero headline «running *itself.*»).\nconst Head=({text,on,D,tag=\"h2\",size=\"clamp(40px,4.3vw,64px)\",lh=1.04,delay=0,step=55,style,className})=>{const Tag=tag;let k=0;if(!String(text||\"\").trim())return null;return /*#__PURE__*/_jsx(Tag,{className:`rb-hd${on?\" is-on\":\"\"}${tag===\"h1\"?\" is-ssr\":\"\"}${className?\" \"+className:\"\"}`,\"aria-label\":plainOf(text),style:{...HD(D),fontSize:size,lineHeight:lh,...style||{}},children:String(text).split(\"|\").map((line,li)=>/*#__PURE__*/_jsx(\"span\",{className:\"rb-hd-l\",\"aria-hidden\":true,children:splitWords(line).map((w,i)=>{const d=delay+k++*step;return /*#__PURE__*/_jsxs(\"span\",{className:`rb-hd-w${w.acc?\" is-accw\":\"\"}`,children:[/*#__PURE__*/_jsx(\"span\",{className:`rb-hd-i${w.acc?\" is-acc\":\"\"}`,style:{transitionDelay:`${d}ms`,[\"--pd\"]:`${d+500}ms`,[\"--dl\"]:`${d}ms`},children:w.acc?/*#__PURE__*/_jsxs(\"span\",{className:\"rb-it\",children:[w.t,w.tail,/*#__PURE__*/_jsx(\"svg\",{className:\"rb-spark\",viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5C12.9 8 16 11.1 22.5 12 16 12.9 12.9 16 12 22.5 11.1 16 8 12.9 1.5 12 8 11.1 11.1 8 12 1.5Z\"})})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[w.t,w.tail]})}),\" \"]},i);})},li))});};const Eyebrow=({text,on,M,delay=0,style})=>text&&String(text).trim()?/*#__PURE__*/_jsxs(\"p\",{className:`rb-eb${on?\" is-on\":\"\"}`,style:{...M,transitionDelay:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"i\",{className:\"rb-lit-dot\",\"aria-hidden\":true}),text]}):null;// COME TO LIGHT — a photo box that enters under a dark grade and clears when `on` (or an ancestor .is-on), on hover and on keyboard focus of a wrapping link. Children (caption plates) sit above the grade.\nconst Lit=({src,alt=\"\",on,ratio=\"4/5\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",focus=\"50% 50%\",delay=0,hold=false,eager=false,className,style,children})=>{const im=RS(src,sizes);return /*#__PURE__*/_jsxs(\"span\",{className:`rb-dusk${on?\" is-on\":\"\"}${hold?\" is-hold\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,[\"--dd\"]:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus}}),children]});};// count-up for a stat (\"2,140\", \"91¢\", \"$184,200\", \"38\"): keeps prefix, suffix and thousands commas; SSR and reduced motion show the final value.\nfunction useCount(target,on,rm,ms=1400){const m=String(target||\"\").match(/^([^\\d-]*)(-?[\\d,]*\\.?\\d+)(.*)$/);const[v,setV]=useState(1);useEffect(()=>{if(!m||rm||!on){setV(1);return;}let raf=0,t0=0;setV(0);const step=t=>{if(!t0)t0=t;const k=clamp01((t-t0)/ms);setV(1-Math.pow(1-k,3));if(k<1)raf=requestAnimationFrame(step);};raf=requestAnimationFrame(step);return()=>cancelAnimationFrame(raf);},[on,rm,target]);if(!m)return String(target||\"\");const num=parseFloat(m[2].replace(/,/g,\"\"));const dec=(m[2].split(\".\")[1]||\"\").length;const cur=num*v;const txt=dec?cur.toFixed(dec):String(Math.round(cur));const withC=/,/.test(m[2])?txt.replace(/\\B(?=(\\d{3})+(?!\\d))/g,\",\"):txt;return m[1]+withC+m[3];}// one-shot rise for copy / rows\nconst rise=(on,d=0,y=22)=>({opacity:on?1:0,translate:on?\"0 0\":`0 ${y}px`,transition:`opacity .9s ease ${d}ms, translate 1s cubic-bezier(.2,.8,.2,1) ${d}ms`});// Image that UNMASKS through a shape as it enters, settles from a zoom, then drifts with scroll (needs --sp on an ancestor).\nconst SHAPES={up:[\"inset(100% 0 0 0)\",\"inset(0 0 0 0)\"],down:[\"inset(0 0 100% 0)\",\"inset(0 0 0 0)\"],left:[\"inset(0 100% 0 0)\",\"inset(0 0 0 0)\"],right:[\"inset(0 0 0 100%)\",\"inset(0 0 0 0)\"],diag:[\"polygon(0 100%,0 100%,0 100%,0 100%)\",\"polygon(0 -160%,260% 100%,0 100%,0 100%)\"],iris:[\"circle(0% at 50% 55%)\",\"circle(85% at 50% 55%)\"],slit:[\"inset(0 50% 0 50%)\",\"inset(0 0 0 0)\"]};const Um=({src,alt=\"\",on,shape=\"up\",ratio=\"4/5\",delay=0,par=1,focus=\"50% 40%\",radius=8,sizes=\"(max-width: 809px) 100vw, 50vw\",style,className,eager=false})=>{const sh=SHAPES[shape]||SHAPES.up;const im=RS(src,sizes);return /*#__PURE__*/_jsx(\"div\",{className:`rb-um${on?\" is-on\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,clipPath:on?sh[1]:sh[0],WebkitClipPath:on?sh[1]:sh[0],transitionDelay:`${delay}ms`,[\"--par\"]:par,...style||{}},children:/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus,transitionDelay:`${delay}ms`}})});};const CSS_MOTION=`\n.mw[data-kb] *,.mw[data-kb] *::before,.mw[data-kb] *::after,.mw [data-kb],.mw [data-kb] *,.mw [data-kb] *::before,.mw [data-kb] *::after{transition:none!important}\n.rb-sec{position:relative;z-index:10;display:block;width:100%;--sp:.5;--pp:0}\n.rb-rev{position:relative;width:100%;--rv:1} .rb-rev-in{position:relative} .rb-rev-sp{height:0}\n.rb-rev.is-act{--rv:0;--t:min(var(--h),100vh);--t:min(var(--h),100svh);z-index:var(--layer,9);margin-top:calc(var(--t)*-1)}\n.rb-rev.is-act>.rb-rev-in{position:sticky;top:calc(100vh - var(--t));top:calc(100svh - var(--t))} .rb-rev.is-act>.rb-rev-sp{height:var(--t)}\n/* the lifting edge throws a shadow on the section beneath, and that section comes out of the dark as it is uncovered */\n.rb-rev.is-act>.rb-rev-in::before{content:\"\";position:absolute;z-index:40;left:0;right:0;top:0;height:120px;translate:0 calc((1 - var(--rv))*var(--t));background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0));opacity:min(1,calc(var(--rv)*(1 - var(--rv))*9));pointer-events:none}\n.rb-rev.is-act>.rb-rev-in::after{content:\"\";position:absolute;z-index:39;left:0;right:0;top:0;height:var(--t);background:#000;opacity:calc((1 - var(--rv))*.16);pointer-events:none}\n.rb-wrap{--pad:56px;width:100%;max-width:calc(${MAXW} + var(--pad)*2);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}\n.rb-eb{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;margin:0;padding:0;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;color:var(--rb-acc);opacity:0;translate:0 10px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.8,.2,1)} .rb-eb.is-on{opacity:1;translate:0 0}\n.rb-eb i{order:-1;margin-right:2px}\n.mw .rb-eb{color:var(--rb-ink)} .mw.rb-dark .rb-eb,.mw .rb-dk .rb-eb{color:var(--rb-cloud)} .mw.rb-dark .rb-lt .rb-eb,.mw .rb-dk .rb-lt .rb-eb{color:var(--rb-ink)}\n.rb-band .rb-eb{padding:6px 14px 6px 12px;border-radius:999px;background:var(--rb-ink);color:var(--rb-bone)} .rb-band .rb-eb .rb-lit-dot{background:var(--rb-brass)} .rb-band .rb-eb .rb-lit-dot::after{background:radial-gradient(circle,color-mix(in srgb,var(--rb-brass) 70%,transparent),transparent 70%)} .rb-band .rb-lt .rb-eb{padding:0;background:none;color:var(--rb-acc)}\n.rb-hd{margin:0;letter-spacing:-.02em;text-wrap:balance} .rb-hd-l{display:block}\n.rb-hd-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .04em .2em;margin:-.06em -.04em -.2em;white-space:pre} .rb-hd-w.is-accw{padding-left:.07em;padding-right:.1em;margin-left:-.07em;margin-right:-.1em}\n.rb-hd-i{position:relative;display:inline-block;translate:0 108%;transition:translate 1.05s cubic-bezier(.2,.85,.15,1)}\n.rb-hd.is-on .rb-hd-i{translate:0 0}\n/* page h1: rises by CSS from the server HTML (no wait for hydration); paused only while a loader / transition cover holds the page */\n@keyframes rb-hd-rise{from{translate:0 108%}to{translate:0 0}}\n.rb-hd.is-ssr .rb-hd-i{animation:rb-hd-rise .8s cubic-bezier(.2,.85,.15,1) var(--dl,0ms) both}\nhtml[class*=\"rb-hold\"] .rb-hd.is-ssr .rb-hd-i{animation-play-state:paused}\n.rb-hd-w.is-accw{overflow:hidden}\n/* the starred words: LIME TEXT, no plate (a body may re-colour them with --rb-capfg) */\n.rb-it{position:relative;display:inline-block;font-style:normal;padding:0;margin:0;border-radius:0;background:none;color:var(--rb-capfg,var(--rb-acc))}\n.mw.rb-dark .rb-it,.mw .rb-dk .rb-it{color:var(--rb-capfg,var(--rb-brass))} .mw.rb-dark .rb-lt .rb-it,.mw .rb-dk .rb-lt .rb-it{color:var(--rb-capfg,var(--rb-acc))}\n.rb-spark{display:none}\n\n.rb-um{position:relative;overflow:hidden;transition:clip-path 1.35s cubic-bezier(.7,0,.2,1);background:var(--rb-bone2)} .mw.rb-dark .rb-um,.mw .rb-dk .rb-um{background:color-mix(in srgb,var(--rb-night) 84%,var(--rb-stone))}\n.rb-um img{position:absolute;left:0;top:-9%;width:100%;height:118%;display:block;object-fit:cover;scale:1.04;translate:0 calc((var(--sp,.5) - .5)*var(--par,1)*-7%);transition:scale 1.9s cubic-bezier(.16,.84,.24,1);user-select:none}\n.rb-um.is-on img{scale:1}\n/* diagonal cuts: the section hangs over its neighbour and is cut on a slope (clip-path, so the neighbour shows through) */\n.rb-cut-t{margin-top:calc(var(--cut,7vw)*-1);clip-path:polygon(0 var(--cut,7vw),100% 0,100% 100%,0 100%);padding-top:var(--cut,7vw)}\n.rb-cut-b{margin-bottom:calc(var(--cut,7vw)*-1);padding-bottom:var(--cut,7vw)}\n.rb-cut-t.rb-cut-b{clip-path:polygon(0 var(--cut,7vw),100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n.rb-cut-b:not(.rb-cut-t){clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n@media (max-width:1099px){.rb-wrap{--pad:40px}}\n@media (max-width:699px){.rb-wrap{--pad:20px}}\n@media (prefers-reduced-motion:reduce){.rb-hd-i{translate:0 0!important} .rb-hd.is-ssr .rb-hd-i{animation:none!important} .rb-spark{scale:1!important;rotate:0deg!important;animation:none!important} .rb-um{clip-path:none!important} .rb-um img{scale:1!important;translate:0 0!important}}\n`;const SEED={site:[{\"slug\":\"site\",\"f1\":\"Runbook\",\"f2\":\"Business automation agency\",\"f3\":\"We wire your CRM, invoicing, onboarding and support into workflows that run while the office sleeps.\",\"f4\":\"hello@runbook.agency\",\"f5\":\"/book\",\"f6\":\"/results\",\"f7\":\"Business automation agency \\xb7 Since 2019\",\"f8\":\"1,284 tasks ran for our clients last night\",\"f9\":\"/workflows\",\"img\":\"https://framerusercontent.com/images/kltvaH90N1EBZgMRovsYhy45bk0.webp\",\"f10\":\"An open-plan office at dusk, screens still lit\"}]};const SW_BUILD=\"RbSmooth@cms1\";// An override control wins only when it holds real text; empty (or a single space) inherits from the CMS.\nconst pick=(o,fb)=>o!==undefined&&o!==null&&String(o).trim()?String(o).trim():fb;const imgOf=(r,k=\"img\")=>String(r&&r[k]||\"\").split(\"?\")[0];// A cleared CMS image draws this quiet placeholder — never a stock photo, and list positions stay aligned with their rows.\nconst EMPTY_IMG=\"data:image/svg+xml;utf8,\"+encodeURIComponent(\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 500' preserveAspectRatio='xMidYMid slice'><rect width='400' height='500' fill='#DDDFD9'/><rect x='120' y='170' width='160' height='160' rx='3' fill='none' stroke='#8A8E90' stroke-width='1.5'/><rect x='100' y='150' width='200' height='200' rx='4' fill='none' stroke='#B9BCB6' stroke-width='1' stroke-dasharray='2 6'/></svg>\");const imgOr=(r,k=\"img\")=>imgOf(r,k)||EMPTY_IMG;const cmsNum=(r,k,fb=0)=>{const v=parseFloat(String((r&&r[k])??\"\"));return isFinite(v)?v:fb;};const useIso=typeof window===\"undefined\"?useEffect:useLayoutEffect;function readCMS(kind){if(typeof document===\"undefined\")return null;if(!document.querySelector('[data-rb-row=\"bridge\"]'))return null;const seen=new Set;const out=[];document.querySelectorAll(`[data-rb-row=\"${kind}\"]`).forEach(el=>{const o={};for(const a of Array.from(el.attributes))if(a.name.startsWith(\"data-\"))o[a.name.slice(5)]=a.value;const key=o.slug||JSON.stringify(o);if(seen.has(key))return;seen.add(key);out.push(o);});return out.sort((a,b)=>(parseFloat(a.n1)||0)-(parseFloat(b.n1)||0));}function useCMS(kind,fallback){const[rows,setRows]=useState(fallback);const sig=useRef(\"\");useIso(()=>{let n=0,t=0,ok=0;try{const w=window;if(!w.__ltCms||typeof w.__ltCms!==\"object\")w.__ltCms={};w.__ltCms[SW_BUILD]=1;}catch(e){}const pull=()=>{const r=readCMS(kind);if(!r)return false;const s=JSON.stringify(r);if(s!==sig.current){sig.current=s;setRows(r);}return true;};const mo=new MutationObserver(()=>{if(pull()){ok++;if(ok>2)mo.disconnect();}});mo.observe(document.body,{childList:true,subtree:true});if(pull())ok++;const poll=()=>{if(n++<30){pull();t=window.setTimeout(poll,150);}};t=window.setTimeout(poll,150);return()=>{mo.disconnect();window.clearTimeout(t);};},[kind]);return rows;}// Row counts in headings: {workflows} {industries} {results} {tools} {posts} {reviews} {faq} = the live number of rows as digits (the kinds work too: {services} = Workflows, {cases} = Results, {machines} = Tools); a capital first letter ({Services}) = the number as a word (One … Twelve, digits above that). Server render = the shipped counts. A component may add its own list ({Steps}, {Pins}, {Values}).\nconst CMS_COUNT_FB={\"services\":5,\"industries\":6,\"cases\":6,\"machines\":6,\"reviews\":5,\"posts\":6,\"faq\":8};const CMS_NWORDS=\"Zero;One;Two;Three;Four;Five;Six;Seven;Eight;Nine;Ten;Eleven;Twelve\";function useCounts(extra){const[c,setC]=useState(CMS_COUNT_FB);const sig=useRef(\"\");useIso(()=>{let n=0,t=0;const pull=()=>{const o={};let any=false;for(const k of Object.keys(CMS_COUNT_FB)){const r=readCMS(k);if(r){o[k]=r.length;any=true;}else o[k]=CMS_COUNT_FB[k];}if(!any)return;const s=JSON.stringify(o);if(s!==sig.current){sig.current=s;setC(o);}};pull();const poll=()=>{if(n++<12){pull();t=window.setTimeout(poll,250);}};t=window.setTimeout(poll,250);return()=>window.clearTimeout(t);},[]);return extra?{...c,...extra}:c;}const CMS_ALIAS={workflows:\"services\",results:\"cases\",tools:\"machines\"};const countText=(s,c,words=CMS_NWORDS)=>{const W=String(words||CMS_NWORDS).split(\";\").map(x=>x.trim());return String(s==null?\"\":s).replace(/\\{([A-Za-z]+)\\}/g,(m,k)=>{const lk=String(k).toLowerCase();const n=c[lk]??c[CMS_ALIAS[lk]];if(typeof n!==\"number\")return m;const cap=k[0]!==k[0].toLowerCase();return cap&&W[n]?W[n]:String(n);});};// The one-row Site collection holds every site-wide fact. A section's \"… Override\" control only replaces it on that one section.\n// Site: f1 Name (Runbook) · f2 Descriptor · f3 Tagline · f4 Email · f5 Book Link (/book) · f6 Work Link (/results) · f7 Eyebrow · f8 Proof Line · f9 Services Link (/workflows) · img Picture (the hero office photograph H1, also social / about) · f10 Picture Alt\nfunction useSite(){const r=useCMS(\"site\",SEED.site||[]);const s=r[0]||(SEED.site||[])[0]||{};const g=k=>String(s[k]??\"\").trim();const im=k=>String(s[k]||\"\").split(\"?\")[0];return{name:g(\"f1\"),descriptor:g(\"f2\"),tagline:g(\"f3\"),email:g(\"f4\"),book:g(\"f5\")||\"/quote\",work:g(\"f6\")||\"/projects\",eyebrow:g(\"f7\"),proof:g(\"f8\"),services:g(\"f9\")||\"/capabilities\",picture:im(\"img\"),pictureAlt:g(\"f10\")};}// ---- Row readers (slots are fixed: see seed.py). Every reader takes an undefined row and returns empty strings, never throws.\nconst S_=(r,k)=>String(r&&r[k]||\"\").trim();const numOf=(v,fb=0)=>{const n=parseFloat(String(v??\"\").replace(/[^\\d.-]/g,\"\"));return isFinite(n)?n:fb;};const listOf=s=>String(s||\"\").split(\";\").map(x=>x.trim()).filter(Boolean);const linkList=s=>String(s||\"\").split(\",\").map(x=>x.trim()).filter(Boolean).map(x=>{const i=x.indexOf(\":\");return{l:i<0?x:x.slice(0,i).trim(),h:i<0?\"/\":x.slice(i+1).trim()};});const bySlug=(rows,slug)=>{const k=String(slug||\"\").trim();return k?rows.find(r=>r.slug===k):undefined;};// Workflows (kind \"services\"): f1 Name · f2 Line · f3 Body · f4 Tools it runs on (a; b; c → items[]) · f5 Event line («Invoice #4821 sent», the hero pin) · f6 Clock («02:14», the pin's mono time) · img Picture · n1 Order → /workflows/:slug\n// spec = EVENT (f5), lead = CLOCK (f6); question / price are the same two slots under their old names (the hero reads those).\nconst serviceOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),body:S_(r,\"f3\"),items:listOf(S_(r,\"f4\")),spec:S_(r,\"f5\"),lead:S_(r,\"f6\"),question:S_(r,\"f5\"),price:S_(r,\"f6\"),img:imgOr(r)});// Industries: f1 Name (Clinics, Agencies, E-commerce, Logistics, Legal, Real estate) · f2 Line · f3 Typical workflows (a, b, c → parts) · f4 Share of our clients (e.g. 24 %) · img Picture · n1 Order → /industries\nconst industryOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),line:S_(r,\"f2\"),parts:S_(r,\"f3\"),share:S_(r,\"f4\"),img:imgOr(r)});// Tools (kind \"machines\"): f1 Name = the tool CATEGORY we connect (CRM, Invoicing, Inbox, Helpdesk, Docs, Reporting) · f2 Category group (Sales / Finance / Comms / Support / Data = the filter chip → type) · f3 Line · f4 Connects to (product names a, b, c → envelope) · f5 Used in n workflows (→ tolerance) · f6 Since 2021 (→ count) · img Picture · n1 Order → /tools\nconst machineOf=r=>({slug:S_(r,\"slug\"),name:S_(r,\"f1\"),type:S_(r,\"f2\"),line:S_(r,\"f3\"),envelope:S_(r,\"f4\"),tolerance:S_(r,\"f5\"),count:S_(r,\"f6\"),img:imgOr(r)});// Results (kind \"cases\"): f1 Client · f2 Sector (an Industries name) · f3 Workflow (a Workflows name → service) · f4 Number (−62 %) · f5 Unit (missed appointments, on the lime pill) · f6 Line · f7 Body · img Picture · f8 Year · n1 Order → /results/:slug\nconst caseOf=r=>({slug:S_(r,\"slug\"),client:S_(r,\"f1\"),sector:S_(r,\"f2\"),service:S_(r,\"f3\"),number:S_(r,\"f4\"),unit:S_(r,\"f5\"),line:S_(r,\"f6\"),body:S_(r,\"f7\"),img:imgOr(r),year:S_(r,\"f8\")});// Reviews: f1 Quote · f2 Person · f3 Role · f4 Company · img Picture · n1 Order\nconst reviewOf=r=>({slug:S_(r,\"slug\"),quote:S_(r,\"f1\"),person:S_(r,\"f2\"),role:S_(r,\"f3\"),company:S_(r,\"f4\"),img:imgOr(r)});// Posts: f1 Title · f2 Kind (Guide / Insight / Report) · f3 Line · f4 Body (mini markdown, see Md) · img Picture · f5 Date · f6 Read · n1 Order → /insights/:slug\nconst postOf=r=>({slug:S_(r,\"slug\"),title:S_(r,\"f1\"),kind:S_(r,\"f2\"),line:S_(r,\"f3\"),body:S_(r,\"f4\"),img:imgOr(r),date:S_(r,\"f5\"),read:S_(r,\"f6\")});// Faq: f1 Question · f2 Answer · n1 Order\nconst faqOf=r=>({slug:S_(r,\"slug\"),q:S_(r,\"f1\"),a:S_(r,\"f2\")});// ---- A seeded generator (mulberry32) so the server and the first client render draw the SAME shape.\nconst mulberry=a=>()=>{a|=0;a=a+1831565813|0;let t=Math.imul(a^a>>>15,1|a);t=t+Math.imul(t^t>>>7,61|t)^t;return((t^t>>>14)>>>0)/4294967296;};// The row a CMS detail page is about: the bound Slug control wins (server render included), else the last URL segment, else the first row.\nfunction useRow(kind,fallback,slug){const rows=useCMS(kind,fallback);const[path,setPath]=useState(\"\");useEffect(()=>{try{setPath(decodeURIComponent(window.location.pathname.split(\"/\").filter(Boolean).pop()||\"\"));}catch(e){}},[]);const want=String(slug||\"\").trim()||path;const row=rows.find(r=>r.slug===want)||rows[0]||{};return{row,rows};}// ===== RbSmooth =====\n// PAGE-LEVEL — Smooth scroll. Drop once on the page (or in the site layout): inertia scrolling with Lenis on the\n// published site only; off on touch devices and with reduced motion; in-page #anchors scroll smoothly. Renders nothing.\n/**\n * RUNBOOK — smooth scroll. Lenis inertia scrolling on the published site (off on touch + reduced motion), smooth in-page anchors. Drop once; renders nothing.\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 1\n */export default function RbSmooth(props){const{smoothness=.1,wheelSpeed=1,anchorOffset=72}=props;const offset=anchorOffset;const live=useLive();// site-wide keyboard helper: a focused item inside a sideways-scrolling row (filter chips, card tracks) is scrolled fully into its row\nuseEffect(()=>{if(!live)return;const f=e=>{const t=e.target;if(!t||!t.matches||!t.matches(\":focus-visible\"))return;let p=t.parentElement;while(p&&p!==document.body){const o=getComputedStyle(p).overflowX;if((o===\"auto\"||o===\"scroll\")&&p.scrollWidth>p.clientWidth+2){const a=p.getBoundingClientRect(),b=t.getBoundingClientRect();const pad=24;if(b.left<a.left+pad)p.scrollLeft-=a.left+pad-b.left;else if(b.right>a.right-pad)p.scrollLeft+=b.right-(a.right-pad);break;}p=p.parentElement;}};document.addEventListener(\"focusin\",f);return()=>document.removeEventListener(\"focusin\",f);},[live]);useEffect(()=>{if(!live)return;if(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches)return;if(!window.matchMedia(\"(hover: hover) and (pointer: fine)\").matches)return;const w=window;if(w.__ltLenis||w.__vcLenis)return;let lenis=null,off=()=>{},dead=false;const onHash=e=>{const a=e.target?.closest?.(\"a[href*='#']\");if(!a||!lenis)return;const href=a.getAttribute(\"href\")||\"\";const i=href.indexOf(\"#\");const path=href.slice(0,i);if(path&&path!==location.pathname&&path!==\"\")return;const id=href.slice(i+1);const el=id&&document.getElementById(id);if(!el)return;e.preventDefault();lenis.scrollTo(el,{offset:-offset});history.pushState(null,\"\",\"#\"+id);};// @ts-ignore — loaded at runtime on the published site\nimport(/* webpackIgnore: true */\"https://esm.sh/lenis@1.1.20\").then(mod=>{if(dead)return;const L=mod.default||mod.Lenis||mod;lenis=new L({lerp:smoothness,wheelMultiplier:wheelSpeed,smoothWheel:true});w.__ltLenis=lenis;off=onTick(()=>{},undefined,t=>lenis.raf(t));document.addEventListener(\"click\",onHash);document.documentElement.classList.add(\"lenis\");}).catch(()=>{});return()=>{dead=true;off();document.removeEventListener(\"click\",onHash);if(lenis)lenis.destroy();w.__ltLenis=null;};},[live,smoothness,wheelSpeed,offset]);// Decode-ahead: lazy images within ~2.5 screens below (and 1 above) are fetched + decoded in idle time, so a section never freezes a frame decoding several pictures the moment it scrolls in.\nuseEffect(()=>{if(!live||typeof window===\"undefined\")return;let busy=false,dead=false;const idle=fn=>window.requestIdleCallback?window.requestIdleCallback(fn,{timeout:600}):setTimeout(fn,120);const ahead=()=>{busy=false;if(dead)return;const H=window.innerHeight;let n=0;document.querySelectorAll('img[loading=\"lazy\"]').forEach(im=>{if(n>=8||im.dataset.ovPre)return;const r=im.getBoundingClientRect();if(r.top<H*2.5&&r.bottom>-H){im.dataset.ovPre=\"1\";n++;im.loading=\"eager\";if(im.decode)im.decode().catch(()=>{});}});};const kick=()=>{if(busy)return;busy=true;idle(ahead);};const t=setTimeout(kick,900);window.addEventListener(\"scroll\",kick,{passive:true});return()=>{dead=true;clearTimeout(t);window.removeEventListener(\"scroll\",kick);};},[live]);return /*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{...props.style,display:\"block\",width:\"100%\",height:0,opacity:RenderTarget.current()===RenderTarget.canvas?.4:0}});}addPropertyControls(RbSmooth,{smoothness:{type:ControlType.Number,title:\"Smoothness\",description:\"Lower = more glide\",defaultValue:.1,min:.03,max:.2,step:.01},wheelSpeed:{type:ControlType.Number,title:\"Wheel Speed\",defaultValue:1,min:.5,max:2,step:.1},anchorOffset:{type:ControlType.Number,title:\"Anchor Offset\",unit:\"px\",defaultValue:72,min:0,max:200,step:4}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"RbSmooth\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"40\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RbSmooth.map","function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t;}var e,r,i=Object.create,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){try{return e||(0,t[o(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},h=(t,e,r,i)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let a of o(e))u.call(t,a)||a===r||n(t,a,{get:()=>e[a],enumerable:!(i=s(e,a))||i.enumerable});return t;},c=(t,e,r)=>(r=null!=t?i(a(t)):{},h(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !e&&t&&t.__esModule?r:n(r,\"default\",{value:t,enumerable:!0}),t)),f=l({\"../../../node_modules/dataloader/index.js\"(t,e){var r,i=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return n;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){o(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!a(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));o(e);for(var r=0;r<e.callbacks.length;r++){var i=t[r];i instanceof Error?e.callbacks[r].reject(i):e.callbacks[r].resolve(i);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,i=this._cacheKeyFn(t);if(r){var n=r.get(i);if(n){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(n);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(i,l),l;},e.loadMany=function(t){if(!a(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var i,n=this._cacheKeyFn(t);void 0===r.get(n)&&(e instanceof Error?(i=Promise.reject(e)).catch(function(){}):i=Promise.resolve(e),r.set(n,i));}return this;},t;}(),n=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){o(e);for(var i=0;i<e.keys.length;i++)t.clear(e.keys[i]),e.callbacks[i].reject(r);}function o(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function a(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=i;}}),d=c(f(),1);import{yieldToMain as g}from\"framer\";// ../../shared/src/yield.ts\nfunction v(t){return\"function\"==typeof t?t():t;}var y={background:0,\"user-visible\":1,\"user-blocking\":2};function p(t,e){return y[t]>y[e];}// ../../library/src/utils/schedulerPriority.ts\nfunction m(t){let e;for(let r of t){let t=v(r);if((void 0===e||p(t,e))&&(e=t),\"user-blocking\"===e)break;}return e;}// src/code-generation/components/cms/bundled/BufferReader.ts\nvar w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=(e=class e{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,i=this.bytes.subarray(e,r);return this.offset=r,i;}readString(){let t=this.readUint32(),r=this.readBytes(t);return e.textDecoder.decode(r);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(e){t(this,\"bytes\",void 0),t(this,\"offset\",0),t(this,\"view\",void 0),this.bytes=e,this.view=I(this.bytes);}},// TextDecoder has no per-decode state unless streaming is enabled. Reusing one class-owned decoder\n// avoids constructing one for every CMS item, where each item gets its own BufferReader.\nt(e,\"textDecoder\",new TextDecoder),e);function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as S,yieldToMain as U}from\"framer\";// ../../library/src/utils/utils.ts\nvar k=\"undefined\"!=typeof window,L=k&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction B(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function E(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar M=1024,P=1.5,T=t=>2**t-1,x=t=>-(2**(t-1)),F=t=>2**(t-1)-1,N={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:x(8),Int16:x(16),Int32:x(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},A={Uint8:T(8),Uint16:T(16),Uint32:T(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:F(8),Int16:F(16),Int32:F(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function q(t,e,r,i){B(t>=e,t,\"outside lower bound for\",i),B(t<=r,t,\"outside upper bound for\",i);}var O=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*P)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){q(t,N.Uint8,A.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){q(t,N.Uint16,A.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){q(t,N.Uint32,A.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){q(t,N.Uint64,A.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){q(t,N.BigUint64,A.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){q(t,N.Int8,A.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){q(t,N.Int16,A.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){q(t,N.Int32,A.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){q(t,N.Int64,A.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){q(t,N.BigInt64,A.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){t(this,\"offset\",0),t(this,\"bytes\",new Uint8Array(M)),t(this,\"view\",I(this.bytes)),t(this,\"encoder\",new TextEncoder),t(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction _(t){return\"string\"==typeof t;}function j(t){return Number.isFinite(t);}function D(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar R=class e{static fromString(t){let[r,i,n]=t.split(\"/\").map(Number);return B(j(r),\"Invalid chunkId\"),B(j(i),\"Invalid offset\"),B(j(n),\"Invalid length\"),new e(r,i,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let r=t.readUint16(),i=t.readUint32(),n=t.readUint32();return new e(r,i,n);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(B(this.length===t.length),0);}constructor(e,r,i){t(this,\"chunkId\",void 0),t(this,\"offset\",void 0),t(this,\"length\",void 0),this.chunkId=e,this.offset=r,this.length=i;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nfunction C(t){if(D(t))return 0/* Null */;switch(t.type){case\"array\"/* Array */:return 1/* Array */;case\"boolean\"/* Boolean */:return 2/* Boolean */;case\"color\"/* Color */:return 3/* Color */;case\"date\"/* Date */:return 4/* Date */;case\"enum\"/* Enum */:return 5/* Enum */;case\"file\"/* File */:return 6/* File */;case\"responsiveimage\"/* ResponsiveImage */:return 10/* ResponsiveImage */;case\"link\"/* Link */:return 7/* Link */;case\"number\"/* Number */:return 8/* Number */;case\"object\"/* Object */:return 9/* Object */;case\"richtext\"/* RichText */:return 11/* RichText */;case\"string\"/* String */:return 12/* String */;case\"vectorsetitem\"/* VectorSetItem */:return 13/* VectorSetItem */;default:E(t);}}function J(t){let e=t.readUint16(),i=[];for(let n=0;n<e;n++){let e=r.read(t);i.push(e);}return{type:\"array\"/* Array */,value:i};}function W(t,e){for(let i of(t.writeUint16(e.value.length),e.value))r.write(t,i);}function $(t,e,i){let n=t.value.length,s=e.value.length;if(n<s)return -1;if(n>s)return 1;for(let s=0;s<n;s++){let n=t.value[s],o=e.value[s],a=r.compare(n,o,i);if(0!==a)return a;}return 0;}function z(t){return{type:\"boolean\"/* Boolean */,value:0!==t.readUint8()};}function K(t,e){t.writeUint8(e.value?1:0);}function G(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:\"color\"/* Color */,value:t.readString()};}function H(t,e){t.writeString(e.value);}function X(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Q(t){let e=t.readInt64(),r=new Date(e);return{type:\"date\"/* Date */,value:r.toISOString()};}function Y(t,e){let r=new Date(e.value),i=r.getTime();t.writeInt64(i);}function Z(t,e){let r=new Date(t.value),i=new Date(e.value);return r<i?-1:r>i?1:0;}function tt(t){return{type:\"enum\"/* Enum */,value:t.readString()};}function te(t,e){t.writeString(e.value);}function tr(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function ti(t){return{type:\"file\"/* File */,value:t.readString()};}function tn(t,e){t.writeString(e.value);}function ts(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(t){return{type:\"link\"/* Link */,value:t.readJson()};}function ta(t,e){t.writeJson(e.value);}function tu(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tl(t){return{type:\"number\"/* Number */,value:t.readFloat64()};}function th(t,e){t.writeFloat64(e.value);}function tc(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tf(t){let e=t.readUint16(),i={};for(let n=0;n<e;n++){let e=t.readString();i[e]=r.read(t);}return{type:\"object\"/* Object */,value:i};}function td(t,e){let i=Object.entries(e.value);for(let[e,n]of(t.writeUint16(i.length),i))t.writeString(e),r.write(t,n);}function tg(t,e,i){let n=Object.keys(t.value).sort(),s=Object.keys(e.value).sort();if(n.length<s.length)return -1;if(n.length>s.length)return 1;for(let o=0;o<n.length;o++){let a=n[o],u=s[o];if(a<u)return -1;if(a>u)return 1;let l=t.value[a]??null,h=e.value[u]??null,c=r.compare(l,h,i);if(0!==c)return c;}return 0;}function tv(t){return{type:\"responsiveimage\"/* ResponsiveImage */,value:t.readJson()};}function ty(t,e){t.writeJson(e.value);}function tp(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tm(t){let e=t.readInt8();if(0===e)return{type:\"richtext\"/* RichText */,value:t.readUint32()};if(1===e)return{type:\"richtext\"/* RichText */,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tw(t,e){if(j(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(_(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tb(t,e){let r=t.value,i=e.value;if(j(r)&&j(i)||_(r)&&_(i))return r<i?-1:r>i?1:0;throw Error(\"Invalid rich text pointer\");}function tI(t){return{type:\"string\"/* String */,value:t.readString()};}function tS(t,e){t.writeString(e.value);}function tU(t,e,r){let i=t.value,n=e.value;return(0/* CaseInsensitive */===r.type&&(i=t.value.toLowerCase(),n=e.value.toLowerCase()),i<n)?-1:i>n?1:0;}function tk(t){return{type:\"vectorsetitem\"/* VectorSetItem */,value:t.readUint32()};}function tL(t,e){t.writeUint32(e.value);}function tB(t,e){let r=t.value,i=e.value;return r<i?-1:r>i?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return J(t);case 2/* Boolean */:return z(t);case 3/* Color */:return V(t);case 4/* Date */:return Q(t);case 5/* Enum */:return tt(t);case 6/* File */:return ti(t);case 7/* Link */:return to(t);case 8/* Number */:return tl(t);case 9/* Object */:return tf(t);case 10/* ResponsiveImage */:return tv(t);case 11/* RichText */:return tm(t);case 12/* String */:return tI(t);case 13/* VectorSetItem */:return tk(t);default:E(e);}},t.write=function(t,e){let r=C(e);if(t.writeUint8(r),!D(e))switch(e.type){case\"array\"/* Array */:return W(t,e);case\"boolean\"/* Boolean */:return K(t,e);case\"color\"/* Color */:return H(t,e);case\"date\"/* Date */:return Y(t,e);case\"enum\"/* Enum */:return te(t,e);case\"file\"/* File */:return tn(t,e);case\"link\"/* Link */:return ta(t,e);case\"number\"/* Number */:return th(t,e);case\"object\"/* Object */:return td(t,e);case\"responsiveimage\"/* ResponsiveImage */:return ty(t,e);case\"richtext\"/* RichText */:return tw(t,e);case\"vectorsetitem\"/* VectorSetItem */:return tL(t,e);case\"string\"/* String */:return tS(t,e);default:E(e);}},t.compare=function(t,e,r){let i=C(t),n=C(e);if(i<n)return -1;if(i>n)return 1;if(D(t)||D(e))return 0;switch(t.type){case\"array\"/* Array */:return B(\"array\"/* Array */===e.type),$(t,e,r);case\"boolean\"/* Boolean */:return B(\"boolean\"/* Boolean */===e.type),G(t,e);case\"color\"/* Color */:return B(\"color\"/* Color */===e.type),X(t,e);case\"date\"/* Date */:return B(\"date\"/* Date */===e.type),Z(t,e);case\"enum\"/* Enum */:return B(\"enum\"/* Enum */===e.type),tr(t,e);case\"file\"/* File */:return B(\"file\"/* File */===e.type),ts(t,e);case\"link\"/* Link */:return B(\"link\"/* Link */===e.type),tu(t,e);case\"number\"/* Number */:return B(\"number\"/* Number */===e.type),tc(t,e);case\"object\"/* Object */:return B(\"object\"/* Object */===e.type),tg(t,e,r);case\"responsiveimage\"/* ResponsiveImage */:return B(\"responsiveimage\"/* ResponsiveImage */===e.type),tp(t,e);case\"richtext\"/* RichText */:return B(\"richtext\"/* RichText */===e.type),tb(t,e);case\"vectorsetitem\"/* VectorSetItem */:return B(\"vectorsetitem\"/* VectorSetItem */===e.type),tB(t,e);case\"string\"/* String */:return B(\"string\"/* String */===e.type),tU(t,e,r);default:E(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tE=class e{sortEntries(){this.entries.sort((t,e)=>{for(let i=0;i<this.fieldNames.length;i++){let n=t.values[i],s=e.values[i],o=r.compare(n,s,this.options.collation);if(0!==o)return o;}return t.pointer.compare(e.pointer);});}static async deserialize(t,i){let n=new b(t),s=n.readJson(),o=n.readUint8(),a=[];for(let t=0;t<o;t++){let t=n.readString();a.push(t);}let u=new e(a,{collation:s}),l=n.readUint32(),h=()=>{let t=[];for(let e=0;e<o;e++){let e=r.read(n);t.push(e);}let e=R.read(n);u.entries.push({values:t,pointer:e});};for(let t=0;t<l;t++){let t=i?.();t&&await t,h();}return u;}serialize(){let t=new O;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:i,pointer:n}=e;for(let e of i)r.write(t,e);n.write(t);}return t.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(e,r){t(this,\"fieldNames\",void 0),t(this,\"options\",void 0),t(this,\"entries\",[]),this.fieldNames=e,this.options=r;}},tM=3,tP=250,tT=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tx=async(t,e)=>{let r=0;for(;;){try{let i=await fetch(t,e);if(!tT.includes(i.status)||++r>tM)return i;}catch(t){if(e?.signal?.aborted||++r>tM)throw t;}await tF(r);}};async function tF(t){let e=Math.floor(tP*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tN(t,e){let r=tO(e),i=[],n=0;for(let t of r)i.push(`${t.from}-${t.to-1}`),n+=t.to-t.from;let s=new URL(t),o=i.join(\",\");s.searchParams.set(\"range\",o);let a=await tx(s);if(200!==a.status)throw Error(`Request failed: ${a.status} ${a.statusText}`);let u=await a.arrayBuffer(),l=new Uint8Array(u);if(l.length!==n)throw Error(\"Request failed: Unexpected response length\");let h=new tA,c=0;for(let t of r){let e=t.to-t.from,r=c+e,i=l.subarray(c,r);h.write(t.from,i),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tA=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let i=t-r.start,n=i+e;return r.data.slice(i,n);}throw Error(\"Missing data\");}write(t,e){let r=t,i=r+e.length,n=0,s=this.chunks.length;for(;n<s;n++){let t=this.chunks[n];if(B(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let i=r-t.start,n=t.data.subarray(0,i);e=tq(n,e),r=t.start;}break;}}for(;s>n;s--){let t=this.chunks[s-1];if(B(t,\"Missing chunk\"),!(i<t.start)){if(i<t.end){let r=i-t.start,n=t.data.subarray(r);e=tq(e,n),i=t.end;}break;}}let o={start:r,end:i,data:e},a=s-n;this.chunks.splice(n,a,o);}constructor(){t(this,\"chunks\",[]);}};function tq(t,e){let r=t.length+e.length,i=new Uint8Array(r);return i.set(t,0),i.set(e,t.length),i;}function tO(t){B(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,i=r[e];i&&t.from<=i.to?r[e]={from:i.from,to:Math.max(i.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar t_=class{async loadModel(){let[t]=await tN(this.options.url,[this.options.range]);return B(t,\"Failed to load model\"),tE.deserialize(t,()=>{let t=m(this.modelPrioritySources);return t?U({batch:!0,priority:t}):void 0;});}async getModel(t){return this.model||(t&&this.modelPrioritySources.add(t),this.modelPromise??=this.loadModel().finally(()=>{this.modelPrioritySources.clear();}),this.model??=await this.modelPromise),this.model;}async lookupItems(t,e){B(t.length===this.fields.length,\"Invalid query length\");let r=await this.getModel(e),i=[r.entries];for(let[r,n]of t.entries()){let t=[];for(let s of i){let i;let o=e?U({batch:!0,priority:v(e)}):void 0;switch(o&&await o,n.type){case\"All\"/* All */:i=[s];break;case\"Equals\"/* Equals */:i=this.queryEquals(s,n,r);break;case\"NotEquals\"/* NotEquals */:i=this.queryNotEquals(s,n,r);break;case\"LessThan\"/* LessThan */:i=this.queryLessThan(s,n,r);break;case\"GreaterThan\"/* GreaterThan */:i=this.queryGreaterThan(s,n,r);break;case\"Contains\"/* Contains */:i=await this.queryContains(s,n,r,e);break;case\"StartsWith\"/* StartsWith */:i=await this.queryStartsWith(s,n,r,e);break;case\"EndsWith\"/* EndsWith */:i=await this.queryEndsWith(s,n,r,e);break;default:E(n);}t.push(...i);}i=t;}let n=[];for(let t of i)for(let r of t){let t=e?U({batch:!0,priority:v(e)}):void 0;t&&await t;let i={};for(let t=0;t<this.options.fieldNames.length;t++){let e=this.options.fieldNames[t],n=r.values[t];i[e]=n;}n.push({pointer:r.pointer.toString(),data:i});}return n;}queryEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=t.slice(i,n+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=[],o=t.slice(0,i);o.length>0&&s.push(o);let a=t.slice(n+1);return a.length>0&&s.push(a),s;}queryLessThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getRightMost(t,r,e.value),n=t.slice(0,i+1);return n.length>0?[n]:[];}let n=this.getLeftMost(t,r,e.value),s=t.slice(0,n);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getLeftMost(t,r,e.value),n=t.slice(i);return n.length>0?[n]:[];}let n=this.getRightMost(t,r,e.value),s=t.slice(n+1);return s.length>0?[s]:[];}queryContains(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.includes(i);});}queryStartsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.startsWith(i);});}queryEndsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.endsWith(i);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];0>r.compare(u,i,this.collation)?n=o+1:s=o;}return n;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];r.compare(u,i,this.collation)>0?s=o:n=o+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */async findItems(t,e,r,i){let n=[],s=0;for(let o=0;o<t.length;o++){let a=r?U({batch:!0,priority:v(r)}):void 0;a&&await a;let u=t[o],l=u.values[e],h=i(l);if(!h){if(s<o){let e=t.slice(s,o);n.push(e);}s=o+1;}}if(s<t.length){let e=t.slice(s);n.push(e);}return n;}constructor(e){t(this,\"options\",void 0),t(this,\"schema\",void 0),t(this,\"fields\",void 0),t(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),t(this,\"modelPromise\",void 0),t(this,\"model\",void 0),t(this,\"modelPrioritySources\",/* @__PURE__ */new Set),t(this,\"collation\",void 0),this.options=e;let r={},i=[];for(let t of this.options.fieldNames){let e=this.options.collectionSchema[t];B(e,\"Missing definition for field\",t),r[t]=e,i.push({type:\"Identifier\",name:t});}this.schema=r,this.fields=i,this.collation=this.options.collation;}};// src/code-generation/components/cms/bundled/models/DatabaseItemModel.ts\nfunction tj(t){let e={},i=t.readUint16();for(let n=0;n<i;n++){let i=t.readString();e[i]=r.read(t);}return e;}// src/code-generation/components/cms/bundled/DatabaseCollection.ts?bundle\nfunction*tD(t){for(let e of t)yield*e.prioritySources;}var tR=class{scanItems(t){return this.itemsPromise?this.isScanning&&t&&this.scanPrioritySources.add(t):(this.isScanning=!0,t&&this.scanPrioritySources.add(t),this.itemsPromise=tx(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),i=new b(r),n=[],s=i.readUint32();for(let t=0;t<s;t++){let t=m(this.scanPrioritySources),e=t?g({batch:!0,priority:t}):void 0;e&&await e;let r=i.getOffset(),s=tj(i),o=i.getOffset()-r,a=new R(this.id,r,o),u=a.toString(),l={pointer:u,data:s};this.itemLoader.prime({pointer:u,prioritySources:/* @__PURE__ */new Set},l),n.push(l);}return n;}).finally(()=>{this.isScanning=!1,this.scanPrioritySources.clear();})),this.itemsPromise;}resolveItem(t,e){let r=this.itemPrioritySources.get(t);r||(r=/* @__PURE__ */new Set,this.itemPrioritySources.set(t,r)),e&&r.add(e);let i=this.itemLoader.load({pointer:t,prioritySources:r}),n=()=>this.itemPrioritySources.delete(t);return i.then(n,n),i;}constructor(e,r){t(this,\"id\",void 0),t(this,\"url\",void 0),t(this,\"itemsPromise\",void 0),t(this,\"isScanning\",!1),t(this,\"scanPrioritySources\",/* @__PURE__ */new Set),t(this,\"itemPrioritySources\",/* @__PURE__ */new Map),t(this,\"itemLoader\",new d.default(async t=>{let e=t.map(({pointer:t})=>{let e=R.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tN(this.url,e),i=[];for(let e=0;e<r.length;e++){let n=m(tD(t)),s=n?g({batch:!0,priority:n}):void 0;s&&await s;let o=r[e];B(o,\"Missing range bytes\");let a=new b(o),u=tj(a),l=t[e]?.pointer;B(l,\"Missing pointer\"),i.push({pointer:l,data:u});}return i;},{// capping to 250 avoids overly long URLs that can cause requests to fail with 414\nmaxBatchSize:250,// Different route workflows can request the same item. Keep DataLoader's cache keyed by the\n// pointer while still carrying the strongest scheduling priority into the shared batch\ncacheKeyFn:t=>t.pointer})),this.id=e,this.url=r;}},tC=class{async scanItems(t){let e=await Promise.all(this.chunks.map(async e=>e.scanItems(t)));return e.flat();}resolveItems(t,e){return Promise.all(t.map(t=>{let r=R.fromString(t),i=this.chunks[r.chunkId];return B(i,\"Missing chunk\"),i.resolveItem(t,e);}));}compareItems(t,e){let r=R.fromString(t.pointer),i=R.fromString(e.pointer);return r.compare(i);}compareValues(t,e,i){return r.compare(t,e,i);}constructor(e){t(this,\"options\",void 0),t(this,\"id\",void 0),t(this,\"schema\",void 0),t(this,\"indexes\",void 0),t(this,\"resolveRichText\",void 0),t(this,\"resolveVectorSetItem\",void 0),t(this,\"chunks\",void 0),this.options=e,this.chunks=this.options.chunks.map((t,e)=>new tR(e,t)),this.schema=e.schema,this.indexes=e.indexes,this.resolveRichText=e.resolveRichText,this.resolveVectorSetItem=e.resolveVectorSetItem,this.id=e.id;}};export{tC as DatabaseCollection,t_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as r,ComponentPresetsConsumer as t,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,f,u=\"undefined\"!=typeof window,c=u&&\"function\"==typeof window.requestIdleCallback,l=\"preload\";function p(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&l in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as s,createElement as m}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction d(e,...r){if(!e)throw Error(\"Assertion Error\"+(r.length>0?\": \"+r.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar y=((a=y||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a),h=((f=h||{})[f.RichText=1]=\"RichText\",f[f.VectorSetItem=2]=\"VectorSetItem\",f);function x(e,r,t){for(let[n,o]of Object.entries(r)){let r=e[n];if(\"number\"==typeof o){e[n]=t(o,r);continue;}T(r,o,t);}}function T(e,r,t){if(\"number\"!=typeof r){if(Array.isArray(r)){if(!Array.isArray(e))return;let[n]=r;for(let r=0;r<e.length;r++){let o=e[r];\"number\"==typeof n?e[r]=t(n,o):T(o,n,t);}return;}null===e||\"object\"!=typeof e||Array.isArray(e)||x(e,r,t);}}function g(i){let a=/* @__PURE__ */new Map;return f=>{let u=a.get(f);if(u)return u;let c=JSON.parse(f),l=function a(f){switch(f[0]){case 1/* Fragment */:{let[,...e]=f,r=e.map(a);return /*#__PURE__*/m(s,void 0,...r);}case 2/* Link */:{let[,e,...r]=f,t=r.map(a);return /*#__PURE__*/m(n,e,...t);}case 3/* Module */:{let[,n,o,u]=f;x(o,u,(e,r)=>{if(1/* RichText */===e)return r?a(r):r;if(\"string\"!=typeof r)return r;let t=i[r];return t?(p(t)&&t.preload(),t):r;});let c=i[n];return d(c,\"Module not found\"),p(c)&&c.preload(),/*#__PURE__*/e(t,{componentIdentifier:n,children:t=>/*#__PURE__*/e(r,{component:c,props:{...t,...o}})});}case 4/* Tag */:{let[,e,r,...t]=f,n=t.map(a);if(\"a\"===e)return /*#__PURE__*/m(o.a,r,...n);return /*#__PURE__*/m(e,r,...n);}case 5/* Text */:{let[,e]=f;return e;}}}(c);return a.set(f,l),l;};}export{h as RichTextJsonPropKind,y as RichTextJsonType,g as getRichTextJsonResolver,x as mapRichTextJsonProps};\nexport const __FramerMetadata__ = {\"exports\":{\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonPropKind\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mapRichTextJsonProps\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{addPropertyControls as e,ControlType as t,QueryEngine as l}from\"framer\";import{DatabaseCollection as i}from\"./hxDaj92Q0-0.js\";import{getRichTextJsonResolver as a}from\"./hxDaj92Q0-1.js\";let r={API0fu97z:{isNullable:!0,type:t.String},createdAt:{isNullable:!0,type:t.Date},fWaTf2L6z:{isNullable:!0,type:t.String},id:{isNullable:!1,type:t.String},idH8wpcgB:{isNullable:!0,type:t.String},JsTvuJegV:{isNullable:!0,type:t.String},LEiNr67p_:{isNullable:!0,type:t.String},nbAOGR1su:{isNullable:!0,type:t.String},nextItemId:{isNullable:!0,type:t.String},O2TvkBDRw:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},q1EtCgvA9:{isNullable:!0,type:t.String},rqaEHuFng:{isNullable:!0,type:t.String},S7Fsnls9J:{isNullable:!0,type:t.String},updatedAt:{isNullable:!0,type:t.Date},YwyqBNuN0:{isNullable:!0,type:t.ResponsiveImage},Z0jl9I921:{isNullable:!0,type:t.String}},u=[],n=e=>{let t=u[e];if(t)return t().then(e=>e.default);},p={},y=a(p),o=new l,d={collectionByLocaleId:{default:new i({chunks:[new URL(\"./hxDaj92Q0-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"1bcc0e12-69f6-4528-8514-1c6fffe005ccdefault\",indexes:[],resolveRichText:y,resolveVectorSetItem:n,schema:r})},displayName:\"Site\",id:\"1bcc0e12-69f6-4528-8514-1c6fffe005cc\"};export default d;e(d,{q1EtCgvA9:{preventLocalization:!1,title:\"Slug\",type:t.String},nbAOGR1su:{defaultValue:\"\",title:\"Name\",type:t.String},S7Fsnls9J:{defaultValue:\"\",title:\"Descriptor\",type:t.String},O2TvkBDRw:{defaultValue:\"\",title:\"Tagline\",type:t.String},rqaEHuFng:{defaultValue:\"\",title:\"Email\",type:t.String},JsTvuJegV:{defaultValue:\"\",title:\"Book Link\",type:t.String},API0fu97z:{defaultValue:\"\",title:\"Work Link\",type:t.String},fWaTf2L6z:{defaultValue:\"\",title:\"Eyebrow\",type:t.String},LEiNr67p_:{defaultValue:\"\",title:\"Proof Line\",type:t.String},Z0jl9I921:{defaultValue:\"\",title:\"Services Link\",type:t.String},YwyqBNuN0:{title:\"Picture\",type:t.ResponsiveImage},idH8wpcgB:{defaultValue:\"\",title:\"Picture Alt\",type:t.String},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/hxDaj92Q0:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/hxDaj92Q0:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await o.query({from:{data:d,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"q1EtCgvA9\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.q1EtCgvA9;},async getRecordIdBySlug(e,t){let[l]=await o.query({from:{data:d,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"q1EtCgvA9\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerSlug\":\"q1EtCgvA9\",\"framerRecordIdKey\":\"id\",\"framerCollectionUtils\":\"1\",\"framerColorSyntax\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerData\":\"true\",\"framerContractVersion\":\"1\",\"framerCollectionId\":\"hxDaj92Q0\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t;}var e,r,i=Object.create,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){try{return e||(0,t[o(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},h=(t,e,r,i)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let a of o(e))u.call(t,a)||a===r||n(t,a,{get:()=>e[a],enumerable:!(i=s(e,a))||i.enumerable});return t;},c=(t,e,r)=>(r=null!=t?i(a(t)):{},h(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !e&&t&&t.__esModule?r:n(r,\"default\",{value:t,enumerable:!0}),t)),f=l({\"../../../node_modules/dataloader/index.js\"(t,e){var r,i=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return n;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){o(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!a(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));o(e);for(var r=0;r<e.callbacks.length;r++){var i=t[r];i instanceof Error?e.callbacks[r].reject(i):e.callbacks[r].resolve(i);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,i=this._cacheKeyFn(t);if(r){var n=r.get(i);if(n){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(n);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(i,l),l;},e.loadMany=function(t){if(!a(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var i,n=this._cacheKeyFn(t);void 0===r.get(n)&&(e instanceof Error?(i=Promise.reject(e)).catch(function(){}):i=Promise.resolve(e),r.set(n,i));}return this;},t;}(),n=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){o(e);for(var i=0;i<e.keys.length;i++)t.clear(e.keys[i]),e.callbacks[i].reject(r);}function o(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function a(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=i;}}),d=c(f(),1);import{yieldToMain as g}from\"framer\";// ../../shared/src/yield.ts\nfunction v(t){return\"function\"==typeof t?t():t;}var y={background:0,\"user-visible\":1,\"user-blocking\":2};function p(t,e){return y[t]>y[e];}// ../../library/src/utils/schedulerPriority.ts\nfunction m(t){let e;for(let r of t){let t=v(r);if((void 0===e||p(t,e))&&(e=t),\"user-blocking\"===e)break;}return e;}// src/code-generation/components/cms/bundled/BufferReader.ts\nvar w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=(e=class e{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,i=this.bytes.subarray(e,r);return this.offset=r,i;}readString(){let t=this.readUint32(),r=this.readBytes(t);return e.textDecoder.decode(r);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(e){t(this,\"bytes\",void 0),t(this,\"offset\",0),t(this,\"view\",void 0),this.bytes=e,this.view=I(this.bytes);}},// TextDecoder has no per-decode state unless streaming is enabled. Reusing one class-owned decoder\n// avoids constructing one for every CMS item, where each item gets its own BufferReader.\nt(e,\"textDecoder\",new TextDecoder),e);function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as S,yieldToMain as U}from\"framer\";// ../../library/src/utils/utils.ts\nvar k=\"undefined\"!=typeof window,L=k&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction B(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function E(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar M=1024,P=1.5,T=t=>2**t-1,x=t=>-(2**(t-1)),F=t=>2**(t-1)-1,N={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:x(8),Int16:x(16),Int32:x(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},A={Uint8:T(8),Uint16:T(16),Uint32:T(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:F(8),Int16:F(16),Int32:F(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function q(t,e,r,i){B(t>=e,t,\"outside lower bound for\",i),B(t<=r,t,\"outside upper bound for\",i);}var O=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*P)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){q(t,N.Uint8,A.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){q(t,N.Uint16,A.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){q(t,N.Uint32,A.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){q(t,N.Uint64,A.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){q(t,N.BigUint64,A.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){q(t,N.Int8,A.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){q(t,N.Int16,A.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){q(t,N.Int32,A.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){q(t,N.Int64,A.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){q(t,N.BigInt64,A.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){t(this,\"offset\",0),t(this,\"bytes\",new Uint8Array(M)),t(this,\"view\",I(this.bytes)),t(this,\"encoder\",new TextEncoder),t(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction _(t){return\"string\"==typeof t;}function j(t){return Number.isFinite(t);}function D(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar R=class e{static fromString(t){let[r,i,n]=t.split(\"/\").map(Number);return B(j(r),\"Invalid chunkId\"),B(j(i),\"Invalid offset\"),B(j(n),\"Invalid length\"),new e(r,i,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let r=t.readUint16(),i=t.readUint32(),n=t.readUint32();return new e(r,i,n);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(B(this.length===t.length),0);}constructor(e,r,i){t(this,\"chunkId\",void 0),t(this,\"offset\",void 0),t(this,\"length\",void 0),this.chunkId=e,this.offset=r,this.length=i;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nfunction C(t){if(D(t))return 0/* Null */;switch(t.type){case\"array\"/* Array */:return 1/* Array */;case\"boolean\"/* Boolean */:return 2/* Boolean */;case\"color\"/* Color */:return 3/* Color */;case\"date\"/* Date */:return 4/* Date */;case\"enum\"/* Enum */:return 5/* Enum */;case\"file\"/* File */:return 6/* File */;case\"responsiveimage\"/* ResponsiveImage */:return 10/* ResponsiveImage */;case\"link\"/* Link */:return 7/* Link */;case\"number\"/* Number */:return 8/* Number */;case\"object\"/* Object */:return 9/* Object */;case\"richtext\"/* RichText */:return 11/* RichText */;case\"string\"/* String */:return 12/* String */;case\"vectorsetitem\"/* VectorSetItem */:return 13/* VectorSetItem */;default:E(t);}}function J(t){let e=t.readUint16(),i=[];for(let n=0;n<e;n++){let e=r.read(t);i.push(e);}return{type:\"array\"/* Array */,value:i};}function W(t,e){for(let i of(t.writeUint16(e.value.length),e.value))r.write(t,i);}function $(t,e,i){let n=t.value.length,s=e.value.length;if(n<s)return -1;if(n>s)return 1;for(let s=0;s<n;s++){let n=t.value[s],o=e.value[s],a=r.compare(n,o,i);if(0!==a)return a;}return 0;}function z(t){return{type:\"boolean\"/* Boolean */,value:0!==t.readUint8()};}function K(t,e){t.writeUint8(e.value?1:0);}function G(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:\"color\"/* Color */,value:t.readString()};}function H(t,e){t.writeString(e.value);}function X(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Q(t){let e=t.readInt64(),r=new Date(e);return{type:\"date\"/* Date */,value:r.toISOString()};}function Y(t,e){let r=new Date(e.value),i=r.getTime();t.writeInt64(i);}function Z(t,e){let r=new Date(t.value),i=new Date(e.value);return r<i?-1:r>i?1:0;}function tt(t){return{type:\"enum\"/* Enum */,value:t.readString()};}function te(t,e){t.writeString(e.value);}function tr(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function ti(t){return{type:\"file\"/* File */,value:t.readString()};}function tn(t,e){t.writeString(e.value);}function ts(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(t){return{type:\"link\"/* Link */,value:t.readJson()};}function ta(t,e){t.writeJson(e.value);}function tu(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tl(t){return{type:\"number\"/* Number */,value:t.readFloat64()};}function th(t,e){t.writeFloat64(e.value);}function tc(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tf(t){let e=t.readUint16(),i={};for(let n=0;n<e;n++){let e=t.readString();i[e]=r.read(t);}return{type:\"object\"/* Object */,value:i};}function td(t,e){let i=Object.entries(e.value);for(let[e,n]of(t.writeUint16(i.length),i))t.writeString(e),r.write(t,n);}function tg(t,e,i){let n=Object.keys(t.value).sort(),s=Object.keys(e.value).sort();if(n.length<s.length)return -1;if(n.length>s.length)return 1;for(let o=0;o<n.length;o++){let a=n[o],u=s[o];if(a<u)return -1;if(a>u)return 1;let l=t.value[a]??null,h=e.value[u]??null,c=r.compare(l,h,i);if(0!==c)return c;}return 0;}function tv(t){return{type:\"responsiveimage\"/* ResponsiveImage */,value:t.readJson()};}function ty(t,e){t.writeJson(e.value);}function tp(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tm(t){let e=t.readInt8();if(0===e)return{type:\"richtext\"/* RichText */,value:t.readUint32()};if(1===e)return{type:\"richtext\"/* RichText */,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tw(t,e){if(j(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(_(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tb(t,e){let r=t.value,i=e.value;if(j(r)&&j(i)||_(r)&&_(i))return r<i?-1:r>i?1:0;throw Error(\"Invalid rich text pointer\");}function tI(t){return{type:\"string\"/* String */,value:t.readString()};}function tS(t,e){t.writeString(e.value);}function tU(t,e,r){let i=t.value,n=e.value;return(0/* CaseInsensitive */===r.type&&(i=t.value.toLowerCase(),n=e.value.toLowerCase()),i<n)?-1:i>n?1:0;}function tk(t){return{type:\"vectorsetitem\"/* VectorSetItem */,value:t.readUint32()};}function tL(t,e){t.writeUint32(e.value);}function tB(t,e){let r=t.value,i=e.value;return r<i?-1:r>i?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return J(t);case 2/* Boolean */:return z(t);case 3/* Color */:return V(t);case 4/* Date */:return Q(t);case 5/* Enum */:return tt(t);case 6/* File */:return ti(t);case 7/* Link */:return to(t);case 8/* Number */:return tl(t);case 9/* Object */:return tf(t);case 10/* ResponsiveImage */:return tv(t);case 11/* RichText */:return tm(t);case 12/* String */:return tI(t);case 13/* VectorSetItem */:return tk(t);default:E(e);}},t.write=function(t,e){let r=C(e);if(t.writeUint8(r),!D(e))switch(e.type){case\"array\"/* Array */:return W(t,e);case\"boolean\"/* Boolean */:return K(t,e);case\"color\"/* Color */:return H(t,e);case\"date\"/* Date */:return Y(t,e);case\"enum\"/* Enum */:return te(t,e);case\"file\"/* File */:return tn(t,e);case\"link\"/* Link */:return ta(t,e);case\"number\"/* Number */:return th(t,e);case\"object\"/* Object */:return td(t,e);case\"responsiveimage\"/* ResponsiveImage */:return ty(t,e);case\"richtext\"/* RichText */:return tw(t,e);case\"vectorsetitem\"/* VectorSetItem */:return tL(t,e);case\"string\"/* String */:return tS(t,e);default:E(e);}},t.compare=function(t,e,r){let i=C(t),n=C(e);if(i<n)return -1;if(i>n)return 1;if(D(t)||D(e))return 0;switch(t.type){case\"array\"/* Array */:return B(\"array\"/* Array */===e.type),$(t,e,r);case\"boolean\"/* Boolean */:return B(\"boolean\"/* Boolean */===e.type),G(t,e);case\"color\"/* Color */:return B(\"color\"/* Color */===e.type),X(t,e);case\"date\"/* Date */:return B(\"date\"/* Date */===e.type),Z(t,e);case\"enum\"/* Enum */:return B(\"enum\"/* Enum */===e.type),tr(t,e);case\"file\"/* File */:return B(\"file\"/* File */===e.type),ts(t,e);case\"link\"/* Link */:return B(\"link\"/* Link */===e.type),tu(t,e);case\"number\"/* Number */:return B(\"number\"/* Number */===e.type),tc(t,e);case\"object\"/* Object */:return B(\"object\"/* Object */===e.type),tg(t,e,r);case\"responsiveimage\"/* ResponsiveImage */:return B(\"responsiveimage\"/* ResponsiveImage */===e.type),tp(t,e);case\"richtext\"/* RichText */:return B(\"richtext\"/* RichText */===e.type),tb(t,e);case\"vectorsetitem\"/* VectorSetItem */:return B(\"vectorsetitem\"/* VectorSetItem */===e.type),tB(t,e);case\"string\"/* String */:return B(\"string\"/* String */===e.type),tU(t,e,r);default:E(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tE=class e{sortEntries(){this.entries.sort((t,e)=>{for(let i=0;i<this.fieldNames.length;i++){let n=t.values[i],s=e.values[i],o=r.compare(n,s,this.options.collation);if(0!==o)return o;}return t.pointer.compare(e.pointer);});}static async deserialize(t,i){let n=new b(t),s=n.readJson(),o=n.readUint8(),a=[];for(let t=0;t<o;t++){let t=n.readString();a.push(t);}let u=new e(a,{collation:s}),l=n.readUint32(),h=()=>{let t=[];for(let e=0;e<o;e++){let e=r.read(n);t.push(e);}let e=R.read(n);u.entries.push({values:t,pointer:e});};for(let t=0;t<l;t++){let t=i?.();t&&await t,h();}return u;}serialize(){let t=new O;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:i,pointer:n}=e;for(let e of i)r.write(t,e);n.write(t);}return t.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(e,r){t(this,\"fieldNames\",void 0),t(this,\"options\",void 0),t(this,\"entries\",[]),this.fieldNames=e,this.options=r;}},tM=3,tP=250,tT=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tx=async(t,e)=>{let r=0;for(;;){try{let i=await fetch(t,e);if(!tT.includes(i.status)||++r>tM)return i;}catch(t){if(e?.signal?.aborted||++r>tM)throw t;}await tF(r);}};async function tF(t){let e=Math.floor(tP*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tN(t,e){let r=tO(e),i=[],n=0;for(let t of r)i.push(`${t.from}-${t.to-1}`),n+=t.to-t.from;let s=new URL(t),o=i.join(\",\");s.searchParams.set(\"range\",o);let a=await tx(s);if(200!==a.status)throw Error(`Request failed: ${a.status} ${a.statusText}`);let u=await a.arrayBuffer(),l=new Uint8Array(u);if(l.length!==n)throw Error(\"Request failed: Unexpected response length\");let h=new tA,c=0;for(let t of r){let e=t.to-t.from,r=c+e,i=l.subarray(c,r);h.write(t.from,i),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tA=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let i=t-r.start,n=i+e;return r.data.slice(i,n);}throw Error(\"Missing data\");}write(t,e){let r=t,i=r+e.length,n=0,s=this.chunks.length;for(;n<s;n++){let t=this.chunks[n];if(B(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let i=r-t.start,n=t.data.subarray(0,i);e=tq(n,e),r=t.start;}break;}}for(;s>n;s--){let t=this.chunks[s-1];if(B(t,\"Missing chunk\"),!(i<t.start)){if(i<t.end){let r=i-t.start,n=t.data.subarray(r);e=tq(e,n),i=t.end;}break;}}let o={start:r,end:i,data:e},a=s-n;this.chunks.splice(n,a,o);}constructor(){t(this,\"chunks\",[]);}};function tq(t,e){let r=t.length+e.length,i=new Uint8Array(r);return i.set(t,0),i.set(e,t.length),i;}function tO(t){B(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,i=r[e];i&&t.from<=i.to?r[e]={from:i.from,to:Math.max(i.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar t_=class{async loadModel(){let[t]=await tN(this.options.url,[this.options.range]);return B(t,\"Failed to load model\"),tE.deserialize(t,()=>{let t=m(this.modelPrioritySources);return t?U({batch:!0,priority:t}):void 0;});}async getModel(t){return this.model||(t&&this.modelPrioritySources.add(t),this.modelPromise??=this.loadModel().finally(()=>{this.modelPrioritySources.clear();}),this.model??=await this.modelPromise),this.model;}async lookupItems(t,e){B(t.length===this.fields.length,\"Invalid query length\");let r=await this.getModel(e),i=[r.entries];for(let[r,n]of t.entries()){let t=[];for(let s of i){let i;let o=e?U({batch:!0,priority:v(e)}):void 0;switch(o&&await o,n.type){case\"All\"/* All */:i=[s];break;case\"Equals\"/* Equals */:i=this.queryEquals(s,n,r);break;case\"NotEquals\"/* NotEquals */:i=this.queryNotEquals(s,n,r);break;case\"LessThan\"/* LessThan */:i=this.queryLessThan(s,n,r);break;case\"GreaterThan\"/* GreaterThan */:i=this.queryGreaterThan(s,n,r);break;case\"Contains\"/* Contains */:i=await this.queryContains(s,n,r,e);break;case\"StartsWith\"/* StartsWith */:i=await this.queryStartsWith(s,n,r,e);break;case\"EndsWith\"/* EndsWith */:i=await this.queryEndsWith(s,n,r,e);break;default:E(n);}t.push(...i);}i=t;}let n=[];for(let t of i)for(let r of t){let t=e?U({batch:!0,priority:v(e)}):void 0;t&&await t;let i={};for(let t=0;t<this.options.fieldNames.length;t++){let e=this.options.fieldNames[t],n=r.values[t];i[e]=n;}n.push({pointer:r.pointer.toString(),data:i});}return n;}queryEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=t.slice(i,n+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=[],o=t.slice(0,i);o.length>0&&s.push(o);let a=t.slice(n+1);return a.length>0&&s.push(a),s;}queryLessThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getRightMost(t,r,e.value),n=t.slice(0,i+1);return n.length>0?[n]:[];}let n=this.getLeftMost(t,r,e.value),s=t.slice(0,n);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getLeftMost(t,r,e.value),n=t.slice(i);return n.length>0?[n]:[];}let n=this.getRightMost(t,r,e.value),s=t.slice(n+1);return s.length>0?[s]:[];}queryContains(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.includes(i);});}queryStartsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.startsWith(i);});}queryEndsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.endsWith(i);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];0>r.compare(u,i,this.collation)?n=o+1:s=o;}return n;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];r.compare(u,i,this.collation)>0?s=o:n=o+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */async findItems(t,e,r,i){let n=[],s=0;for(let o=0;o<t.length;o++){let a=r?U({batch:!0,priority:v(r)}):void 0;a&&await a;let u=t[o],l=u.values[e],h=i(l);if(!h){if(s<o){let e=t.slice(s,o);n.push(e);}s=o+1;}}if(s<t.length){let e=t.slice(s);n.push(e);}return n;}constructor(e){t(this,\"options\",void 0),t(this,\"schema\",void 0),t(this,\"fields\",void 0),t(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),t(this,\"modelPromise\",void 0),t(this,\"model\",void 0),t(this,\"modelPrioritySources\",/* @__PURE__ */new Set),t(this,\"collation\",void 0),this.options=e;let r={},i=[];for(let t of this.options.fieldNames){let e=this.options.collectionSchema[t];B(e,\"Missing definition for field\",t),r[t]=e,i.push({type:\"Identifier\",name:t});}this.schema=r,this.fields=i,this.collation=this.options.collation;}};// src/code-generation/components/cms/bundled/models/DatabaseItemModel.ts\nfunction tj(t){let e={},i=t.readUint16();for(let n=0;n<i;n++){let i=t.readString();e[i]=r.read(t);}return e;}// src/code-generation/components/cms/bundled/DatabaseCollection.ts?bundle\nfunction*tD(t){for(let e of t)yield*e.prioritySources;}var tR=class{scanItems(t){return this.itemsPromise?this.isScanning&&t&&this.scanPrioritySources.add(t):(this.isScanning=!0,t&&this.scanPrioritySources.add(t),this.itemsPromise=tx(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),i=new b(r),n=[],s=i.readUint32();for(let t=0;t<s;t++){let t=m(this.scanPrioritySources),e=t?g({batch:!0,priority:t}):void 0;e&&await e;let r=i.getOffset(),s=tj(i),o=i.getOffset()-r,a=new R(this.id,r,o),u=a.toString(),l={pointer:u,data:s};this.itemLoader.prime({pointer:u,prioritySources:/* @__PURE__ */new Set},l),n.push(l);}return n;}).finally(()=>{this.isScanning=!1,this.scanPrioritySources.clear();})),this.itemsPromise;}resolveItem(t,e){let r=this.itemPrioritySources.get(t);r||(r=/* @__PURE__ */new Set,this.itemPrioritySources.set(t,r)),e&&r.add(e);let i=this.itemLoader.load({pointer:t,prioritySources:r}),n=()=>this.itemPrioritySources.delete(t);return i.then(n,n),i;}constructor(e,r){t(this,\"id\",void 0),t(this,\"url\",void 0),t(this,\"itemsPromise\",void 0),t(this,\"isScanning\",!1),t(this,\"scanPrioritySources\",/* @__PURE__ */new Set),t(this,\"itemPrioritySources\",/* @__PURE__ */new Map),t(this,\"itemLoader\",new d.default(async t=>{let e=t.map(({pointer:t})=>{let e=R.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tN(this.url,e),i=[];for(let e=0;e<r.length;e++){let n=m(tD(t)),s=n?g({batch:!0,priority:n}):void 0;s&&await s;let o=r[e];B(o,\"Missing range bytes\");let a=new b(o),u=tj(a),l=t[e]?.pointer;B(l,\"Missing pointer\"),i.push({pointer:l,data:u});}return i;},{// capping to 250 avoids overly long URLs that can cause requests to fail with 414\nmaxBatchSize:250,// Different route workflows can request the same item. Keep DataLoader's cache keyed by the\n// pointer while still carrying the strongest scheduling priority into the shared batch\ncacheKeyFn:t=>t.pointer})),this.id=e,this.url=r;}},tC=class{async scanItems(t){let e=await Promise.all(this.chunks.map(async e=>e.scanItems(t)));return e.flat();}resolveItems(t,e){return Promise.all(t.map(t=>{let r=R.fromString(t),i=this.chunks[r.chunkId];return B(i,\"Missing chunk\"),i.resolveItem(t,e);}));}compareItems(t,e){let r=R.fromString(t.pointer),i=R.fromString(e.pointer);return r.compare(i);}compareValues(t,e,i){return r.compare(t,e,i);}constructor(e){t(this,\"options\",void 0),t(this,\"id\",void 0),t(this,\"schema\",void 0),t(this,\"indexes\",void 0),t(this,\"resolveRichText\",void 0),t(this,\"resolveVectorSetItem\",void 0),t(this,\"chunks\",void 0),this.options=e,this.chunks=this.options.chunks.map((t,e)=>new tR(e,t)),this.schema=e.schema,this.indexes=e.indexes,this.resolveRichText=e.resolveRichText,this.resolveVectorSetItem=e.resolveVectorSetItem,this.id=e.id;}};export{tC as DatabaseCollection,t_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as r,ComponentPresetsConsumer as t,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,f,u=\"undefined\"!=typeof window,c=u&&\"function\"==typeof window.requestIdleCallback,l=\"preload\";function p(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&l in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as s,createElement as m}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction d(e,...r){if(!e)throw Error(\"Assertion Error\"+(r.length>0?\": \"+r.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar y=((a=y||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a),h=((f=h||{})[f.RichText=1]=\"RichText\",f[f.VectorSetItem=2]=\"VectorSetItem\",f);function x(e,r,t){for(let[n,o]of Object.entries(r)){let r=e[n];if(\"number\"==typeof o){e[n]=t(o,r);continue;}T(r,o,t);}}function T(e,r,t){if(\"number\"!=typeof r){if(Array.isArray(r)){if(!Array.isArray(e))return;let[n]=r;for(let r=0;r<e.length;r++){let o=e[r];\"number\"==typeof n?e[r]=t(n,o):T(o,n,t);}return;}null===e||\"object\"!=typeof e||Array.isArray(e)||x(e,r,t);}}function g(i){let a=/* @__PURE__ */new Map;return f=>{let u=a.get(f);if(u)return u;let c=JSON.parse(f),l=function a(f){switch(f[0]){case 1/* Fragment */:{let[,...e]=f,r=e.map(a);return /*#__PURE__*/m(s,void 0,...r);}case 2/* Link */:{let[,e,...r]=f,t=r.map(a);return /*#__PURE__*/m(n,e,...t);}case 3/* Module */:{let[,n,o,u]=f;x(o,u,(e,r)=>{if(1/* RichText */===e)return r?a(r):r;if(\"string\"!=typeof r)return r;let t=i[r];return t?(p(t)&&t.preload(),t):r;});let c=i[n];return d(c,\"Module not found\"),p(c)&&c.preload(),/*#__PURE__*/e(t,{componentIdentifier:n,children:t=>/*#__PURE__*/e(r,{component:c,props:{...t,...o}})});}case 4/* Tag */:{let[,e,r,...t]=f,n=t.map(a);if(\"a\"===e)return /*#__PURE__*/m(o.a,r,...n);return /*#__PURE__*/m(e,r,...n);}case 5/* Text */:{let[,e]=f;return e;}}}(c);return a.set(f,l),l;};}export{h as RichTextJsonPropKind,y as RichTextJsonType,g as getRichTextJsonResolver,x as mapRichTextJsonProps};\nexport const __FramerMetadata__ = {\"exports\":{\"mapRichTextJsonProps\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonPropKind\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{addPropertyControls as e,ControlType as l,QueryEngine as t}from\"framer\";import{DatabaseCollection as a,DatabaseDictionaryIndex as r}from\"./PgloSUgqG-0.js\";import{getRichTextJsonResolver as o}from\"./PgloSUgqG-1.js\";let i={a6lR3XqN5:{isNullable:!0,type:l.String},c3HdyBcg5:{isNullable:!0,type:l.Number},createdAt:{isNullable:!0,type:l.Date},id:{isNullable:!1,type:l.String},l3NSscRvY:{isNullable:!0,type:l.String},mQenyEPWS:{isNullable:!0,type:l.String},nextItemId:{isNullable:!0,type:l.String},previousItemId:{isNullable:!0,type:l.String},qlrZJj4fP:{isNullable:!0,type:l.ResponsiveImage},RdjMxOibZ:{isNullable:!0,type:l.String},updatedAt:{isNullable:!0,type:l.Date},wOqzwLTD3:{isNullable:!0,type:l.String},XbH7LhsY7:{isNullable:!0,type:l.String},xjea57bcD:{isNullable:!0,type:l.String}},m=[\"id\"],n={type:1},c=[\"previousItemId\"],d=[\"nextItemId\"],u=[\"id\",\"xjea57bcD\"],s=[\"xjea57bcD\",\"id\"],f={type:0},p=[\"xjea57bcD\"],g=[\"mQenyEPWS\"],S=[\"a6lR3XqN5\"],y=[\"XbH7LhsY7\"],w=[\"l3NSscRvY\"],h=[\"RdjMxOibZ\"],N=[\"wOqzwLTD3\"],b=[\"qlrZJj4fP\"],U=[\"c3HdyBcg5\"],x=[],q=e=>{let l=x[e];if(l)return l().then(e=>e.default);},R={},L=o(R),P=new t,I={collectionByLocaleId:{default:new a({chunks:[new URL(\"./PgloSUgqG-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"cdfd114e-f62b-4d68-ad6b-047bdaafbf92default\",indexes:[new r({collation:n,collectionSchema:i,fieldNames:m,range:{from:0,to:169},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:n,collectionSchema:i,fieldNames:c,range:{from:169,to:337},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:n,collectionSchema:i,fieldNames:d,range:{from:337,to:501},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:n,collectionSchema:i,fieldNames:u,range:{from:501,to:751},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:s,range:{from:751,to:1001},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:p,range:{from:1001,to:1161},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:g,range:{from:1161,to:1321},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:S,range:{from:1321,to:1475},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:y,range:{from:1475,to:2002},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:w,range:{from:2002,to:2296},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:h,range:{from:2296,to:2532},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:N,range:{from:2532,to:2714},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:b,range:{from:2714,to:5580},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new r({collation:f,collectionSchema:i,fieldNames:U,range:{from:5580,to:5726},url:new URL(\"./PgloSUgqG-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:L,resolveVectorSetItem:q,schema:i})},displayName:\"Tools\",id:\"cdfd114e-f62b-4d68-ad6b-047bdaafbf92\"};export default I;e(I,{xjea57bcD:{preventLocalization:!1,title:\"Slug\",type:l.String},mQenyEPWS:{defaultValue:\"\",title:\"Name\",type:l.String},a6lR3XqN5:{defaultValue:\"\",title:\"Category\",type:l.String},XbH7LhsY7:{defaultValue:\"\",title:\"Line\",type:l.String},l3NSscRvY:{defaultValue:\"\",title:\"Connects to\",type:l.String},RdjMxOibZ:{defaultValue:\"\",title:\"Used in\",type:l.String},wOqzwLTD3:{defaultValue:\"\",title:\"Since\",type:l.String},qlrZJj4fP:{title:\"Picture\",type:l.ResponsiveImage},c3HdyBcg5:{defaultValue:0,title:\"Order\",type:l.Number},createdAt:{title:\"Created\",type:l.Date},updatedAt:{title:\"Updated\",type:l.Date},previousItemId:{dataIdentifier:\"local-module:collection/PgloSUgqG:default\",title:\"Previous\",type:l.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/PgloSUgqG:default\",title:\"Next\",type:l.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,l){let[t]=await P.query({from:{data:I,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"xjea57bcD\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.xjea57bcD;},async getRecordIdBySlug(e,l){let[t]=await P.query({from:{data:I,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"xjea57bcD\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},l);return t?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerData\":\"true\",\"framerCollectionId\":\"PgloSUgqG\",\"framerContractVersion\":\"1\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerCollectionUtils\":\"1\",\"framerSlug\":\"xjea57bcD\",\"framerColorSyntax\":\"false\",\"framerRecordIdKey\":\"id\",\"framerAutoSizeImages\":\"true\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t;}var e,r,i=Object.create,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){try{return e||(0,t[o(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},h=(t,e,r,i)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let a of o(e))u.call(t,a)||a===r||n(t,a,{get:()=>e[a],enumerable:!(i=s(e,a))||i.enumerable});return t;},c=(t,e,r)=>(r=null!=t?i(a(t)):{},h(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !e&&t&&t.__esModule?r:n(r,\"default\",{value:t,enumerable:!0}),t)),f=l({\"../../../node_modules/dataloader/index.js\"(t,e){var r,i=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return n;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){o(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!a(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));o(e);for(var r=0;r<e.callbacks.length;r++){var i=t[r];i instanceof Error?e.callbacks[r].reject(i):e.callbacks[r].resolve(i);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,i=this._cacheKeyFn(t);if(r){var n=r.get(i);if(n){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(n);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(i,l),l;},e.loadMany=function(t){if(!a(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var i,n=this._cacheKeyFn(t);void 0===r.get(n)&&(e instanceof Error?(i=Promise.reject(e)).catch(function(){}):i=Promise.resolve(e),r.set(n,i));}return this;},t;}(),n=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){o(e);for(var i=0;i<e.keys.length;i++)t.clear(e.keys[i]),e.callbacks[i].reject(r);}function o(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function a(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=i;}}),d=c(f(),1);import{yieldToMain as g}from\"framer\";// ../../shared/src/yield.ts\nfunction v(t){return\"function\"==typeof t?t():t;}var y={background:0,\"user-visible\":1,\"user-blocking\":2};function p(t,e){return y[t]>y[e];}// ../../library/src/utils/schedulerPriority.ts\nfunction m(t){let e;for(let r of t){let t=v(r);if((void 0===e||p(t,e))&&(e=t),\"user-blocking\"===e)break;}return e;}// src/code-generation/components/cms/bundled/BufferReader.ts\nvar w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=(e=class e{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,i=this.bytes.subarray(e,r);return this.offset=r,i;}readString(){let t=this.readUint32(),r=this.readBytes(t);return e.textDecoder.decode(r);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(e){t(this,\"bytes\",void 0),t(this,\"offset\",0),t(this,\"view\",void 0),this.bytes=e,this.view=I(this.bytes);}},// TextDecoder has no per-decode state unless streaming is enabled. Reusing one class-owned decoder\n// avoids constructing one for every CMS item, where each item gets its own BufferReader.\nt(e,\"textDecoder\",new TextDecoder),e);function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as S,yieldToMain as U}from\"framer\";// ../../library/src/utils/utils.ts\nvar k=\"undefined\"!=typeof window,L=k&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction B(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function E(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar M=1024,P=1.5,T=t=>2**t-1,x=t=>-(2**(t-1)),F=t=>2**(t-1)-1,N={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:x(8),Int16:x(16),Int32:x(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},A={Uint8:T(8),Uint16:T(16),Uint32:T(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:F(8),Int16:F(16),Int32:F(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function q(t,e,r,i){B(t>=e,t,\"outside lower bound for\",i),B(t<=r,t,\"outside upper bound for\",i);}var O=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*P)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){q(t,N.Uint8,A.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){q(t,N.Uint16,A.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){q(t,N.Uint32,A.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){q(t,N.Uint64,A.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){q(t,N.BigUint64,A.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){q(t,N.Int8,A.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){q(t,N.Int16,A.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){q(t,N.Int32,A.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){q(t,N.Int64,A.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){q(t,N.BigInt64,A.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){t(this,\"offset\",0),t(this,\"bytes\",new Uint8Array(M)),t(this,\"view\",I(this.bytes)),t(this,\"encoder\",new TextEncoder),t(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction _(t){return\"string\"==typeof t;}function j(t){return Number.isFinite(t);}function D(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar R=class e{static fromString(t){let[r,i,n]=t.split(\"/\").map(Number);return B(j(r),\"Invalid chunkId\"),B(j(i),\"Invalid offset\"),B(j(n),\"Invalid length\"),new e(r,i,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let r=t.readUint16(),i=t.readUint32(),n=t.readUint32();return new e(r,i,n);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(B(this.length===t.length),0);}constructor(e,r,i){t(this,\"chunkId\",void 0),t(this,\"offset\",void 0),t(this,\"length\",void 0),this.chunkId=e,this.offset=r,this.length=i;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nfunction C(t){if(D(t))return 0/* Null */;switch(t.type){case\"array\"/* Array */:return 1/* Array */;case\"boolean\"/* Boolean */:return 2/* Boolean */;case\"color\"/* Color */:return 3/* Color */;case\"date\"/* Date */:return 4/* Date */;case\"enum\"/* Enum */:return 5/* Enum */;case\"file\"/* File */:return 6/* File */;case\"responsiveimage\"/* ResponsiveImage */:return 10/* ResponsiveImage */;case\"link\"/* Link */:return 7/* Link */;case\"number\"/* Number */:return 8/* Number */;case\"object\"/* Object */:return 9/* Object */;case\"richtext\"/* RichText */:return 11/* RichText */;case\"string\"/* String */:return 12/* String */;case\"vectorsetitem\"/* VectorSetItem */:return 13/* VectorSetItem */;default:E(t);}}function J(t){let e=t.readUint16(),i=[];for(let n=0;n<e;n++){let e=r.read(t);i.push(e);}return{type:\"array\"/* Array */,value:i};}function W(t,e){for(let i of(t.writeUint16(e.value.length),e.value))r.write(t,i);}function $(t,e,i){let n=t.value.length,s=e.value.length;if(n<s)return -1;if(n>s)return 1;for(let s=0;s<n;s++){let n=t.value[s],o=e.value[s],a=r.compare(n,o,i);if(0!==a)return a;}return 0;}function z(t){return{type:\"boolean\"/* Boolean */,value:0!==t.readUint8()};}function K(t,e){t.writeUint8(e.value?1:0);}function G(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:\"color\"/* Color */,value:t.readString()};}function H(t,e){t.writeString(e.value);}function X(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Q(t){let e=t.readInt64(),r=new Date(e);return{type:\"date\"/* Date */,value:r.toISOString()};}function Y(t,e){let r=new Date(e.value),i=r.getTime();t.writeInt64(i);}function Z(t,e){let r=new Date(t.value),i=new Date(e.value);return r<i?-1:r>i?1:0;}function tt(t){return{type:\"enum\"/* Enum */,value:t.readString()};}function te(t,e){t.writeString(e.value);}function tr(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function ti(t){return{type:\"file\"/* File */,value:t.readString()};}function tn(t,e){t.writeString(e.value);}function ts(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(t){return{type:\"link\"/* Link */,value:t.readJson()};}function ta(t,e){t.writeJson(e.value);}function tu(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tl(t){return{type:\"number\"/* Number */,value:t.readFloat64()};}function th(t,e){t.writeFloat64(e.value);}function tc(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tf(t){let e=t.readUint16(),i={};for(let n=0;n<e;n++){let e=t.readString();i[e]=r.read(t);}return{type:\"object\"/* Object */,value:i};}function td(t,e){let i=Object.entries(e.value);for(let[e,n]of(t.writeUint16(i.length),i))t.writeString(e),r.write(t,n);}function tg(t,e,i){let n=Object.keys(t.value).sort(),s=Object.keys(e.value).sort();if(n.length<s.length)return -1;if(n.length>s.length)return 1;for(let o=0;o<n.length;o++){let a=n[o],u=s[o];if(a<u)return -1;if(a>u)return 1;let l=t.value[a]??null,h=e.value[u]??null,c=r.compare(l,h,i);if(0!==c)return c;}return 0;}function tv(t){return{type:\"responsiveimage\"/* ResponsiveImage */,value:t.readJson()};}function ty(t,e){t.writeJson(e.value);}function tp(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tm(t){let e=t.readInt8();if(0===e)return{type:\"richtext\"/* RichText */,value:t.readUint32()};if(1===e)return{type:\"richtext\"/* RichText */,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tw(t,e){if(j(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(_(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tb(t,e){let r=t.value,i=e.value;if(j(r)&&j(i)||_(r)&&_(i))return r<i?-1:r>i?1:0;throw Error(\"Invalid rich text pointer\");}function tI(t){return{type:\"string\"/* String */,value:t.readString()};}function tS(t,e){t.writeString(e.value);}function tU(t,e,r){let i=t.value,n=e.value;return(0/* CaseInsensitive */===r.type&&(i=t.value.toLowerCase(),n=e.value.toLowerCase()),i<n)?-1:i>n?1:0;}function tk(t){return{type:\"vectorsetitem\"/* VectorSetItem */,value:t.readUint32()};}function tL(t,e){t.writeUint32(e.value);}function tB(t,e){let r=t.value,i=e.value;return r<i?-1:r>i?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return J(t);case 2/* Boolean */:return z(t);case 3/* Color */:return V(t);case 4/* Date */:return Q(t);case 5/* Enum */:return tt(t);case 6/* File */:return ti(t);case 7/* Link */:return to(t);case 8/* Number */:return tl(t);case 9/* Object */:return tf(t);case 10/* ResponsiveImage */:return tv(t);case 11/* RichText */:return tm(t);case 12/* String */:return tI(t);case 13/* VectorSetItem */:return tk(t);default:E(e);}},t.write=function(t,e){let r=C(e);if(t.writeUint8(r),!D(e))switch(e.type){case\"array\"/* Array */:return W(t,e);case\"boolean\"/* Boolean */:return K(t,e);case\"color\"/* Color */:return H(t,e);case\"date\"/* Date */:return Y(t,e);case\"enum\"/* Enum */:return te(t,e);case\"file\"/* File */:return tn(t,e);case\"link\"/* Link */:return ta(t,e);case\"number\"/* Number */:return th(t,e);case\"object\"/* Object */:return td(t,e);case\"responsiveimage\"/* ResponsiveImage */:return ty(t,e);case\"richtext\"/* RichText */:return tw(t,e);case\"vectorsetitem\"/* VectorSetItem */:return tL(t,e);case\"string\"/* String */:return tS(t,e);default:E(e);}},t.compare=function(t,e,r){let i=C(t),n=C(e);if(i<n)return -1;if(i>n)return 1;if(D(t)||D(e))return 0;switch(t.type){case\"array\"/* Array */:return B(\"array\"/* Array */===e.type),$(t,e,r);case\"boolean\"/* Boolean */:return B(\"boolean\"/* Boolean */===e.type),G(t,e);case\"color\"/* Color */:return B(\"color\"/* Color */===e.type),X(t,e);case\"date\"/* Date */:return B(\"date\"/* Date */===e.type),Z(t,e);case\"enum\"/* Enum */:return B(\"enum\"/* Enum */===e.type),tr(t,e);case\"file\"/* File */:return B(\"file\"/* File */===e.type),ts(t,e);case\"link\"/* Link */:return B(\"link\"/* Link */===e.type),tu(t,e);case\"number\"/* Number */:return B(\"number\"/* Number */===e.type),tc(t,e);case\"object\"/* Object */:return B(\"object\"/* Object */===e.type),tg(t,e,r);case\"responsiveimage\"/* ResponsiveImage */:return B(\"responsiveimage\"/* ResponsiveImage */===e.type),tp(t,e);case\"richtext\"/* RichText */:return B(\"richtext\"/* RichText */===e.type),tb(t,e);case\"vectorsetitem\"/* VectorSetItem */:return B(\"vectorsetitem\"/* VectorSetItem */===e.type),tB(t,e);case\"string\"/* String */:return B(\"string\"/* String */===e.type),tU(t,e,r);default:E(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tE=class e{sortEntries(){this.entries.sort((t,e)=>{for(let i=0;i<this.fieldNames.length;i++){let n=t.values[i],s=e.values[i],o=r.compare(n,s,this.options.collation);if(0!==o)return o;}return t.pointer.compare(e.pointer);});}static async deserialize(t,i){let n=new b(t),s=n.readJson(),o=n.readUint8(),a=[];for(let t=0;t<o;t++){let t=n.readString();a.push(t);}let u=new e(a,{collation:s}),l=n.readUint32(),h=()=>{let t=[];for(let e=0;e<o;e++){let e=r.read(n);t.push(e);}let e=R.read(n);u.entries.push({values:t,pointer:e});};for(let t=0;t<l;t++){let t=i?.();t&&await t,h();}return u;}serialize(){let t=new O;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:i,pointer:n}=e;for(let e of i)r.write(t,e);n.write(t);}return t.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(e,r){t(this,\"fieldNames\",void 0),t(this,\"options\",void 0),t(this,\"entries\",[]),this.fieldNames=e,this.options=r;}},tM=3,tP=250,tT=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tx=async(t,e)=>{let r=0;for(;;){try{let i=await fetch(t,e);if(!tT.includes(i.status)||++r>tM)return i;}catch(t){if(e?.signal?.aborted||++r>tM)throw t;}await tF(r);}};async function tF(t){let e=Math.floor(tP*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tN(t,e){let r=tO(e),i=[],n=0;for(let t of r)i.push(`${t.from}-${t.to-1}`),n+=t.to-t.from;let s=new URL(t),o=i.join(\",\");s.searchParams.set(\"range\",o);let a=await tx(s);if(200!==a.status)throw Error(`Request failed: ${a.status} ${a.statusText}`);let u=await a.arrayBuffer(),l=new Uint8Array(u);if(l.length!==n)throw Error(\"Request failed: Unexpected response length\");let h=new tA,c=0;for(let t of r){let e=t.to-t.from,r=c+e,i=l.subarray(c,r);h.write(t.from,i),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tA=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let i=t-r.start,n=i+e;return r.data.slice(i,n);}throw Error(\"Missing data\");}write(t,e){let r=t,i=r+e.length,n=0,s=this.chunks.length;for(;n<s;n++){let t=this.chunks[n];if(B(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let i=r-t.start,n=t.data.subarray(0,i);e=tq(n,e),r=t.start;}break;}}for(;s>n;s--){let t=this.chunks[s-1];if(B(t,\"Missing chunk\"),!(i<t.start)){if(i<t.end){let r=i-t.start,n=t.data.subarray(r);e=tq(e,n),i=t.end;}break;}}let o={start:r,end:i,data:e},a=s-n;this.chunks.splice(n,a,o);}constructor(){t(this,\"chunks\",[]);}};function tq(t,e){let r=t.length+e.length,i=new Uint8Array(r);return i.set(t,0),i.set(e,t.length),i;}function tO(t){B(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,i=r[e];i&&t.from<=i.to?r[e]={from:i.from,to:Math.max(i.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar t_=class{async loadModel(){let[t]=await tN(this.options.url,[this.options.range]);return B(t,\"Failed to load model\"),tE.deserialize(t,()=>{let t=m(this.modelPrioritySources);return t?U({batch:!0,priority:t}):void 0;});}async getModel(t){return this.model||(t&&this.modelPrioritySources.add(t),this.modelPromise??=this.loadModel().finally(()=>{this.modelPrioritySources.clear();}),this.model??=await this.modelPromise),this.model;}async lookupItems(t,e){B(t.length===this.fields.length,\"Invalid query length\");let r=await this.getModel(e),i=[r.entries];for(let[r,n]of t.entries()){let t=[];for(let s of i){let i;let o=e?U({batch:!0,priority:v(e)}):void 0;switch(o&&await o,n.type){case\"All\"/* All */:i=[s];break;case\"Equals\"/* Equals */:i=this.queryEquals(s,n,r);break;case\"NotEquals\"/* NotEquals */:i=this.queryNotEquals(s,n,r);break;case\"LessThan\"/* LessThan */:i=this.queryLessThan(s,n,r);break;case\"GreaterThan\"/* GreaterThan */:i=this.queryGreaterThan(s,n,r);break;case\"Contains\"/* Contains */:i=await this.queryContains(s,n,r,e);break;case\"StartsWith\"/* StartsWith */:i=await this.queryStartsWith(s,n,r,e);break;case\"EndsWith\"/* EndsWith */:i=await this.queryEndsWith(s,n,r,e);break;default:E(n);}t.push(...i);}i=t;}let n=[];for(let t of i)for(let r of t){let t=e?U({batch:!0,priority:v(e)}):void 0;t&&await t;let i={};for(let t=0;t<this.options.fieldNames.length;t++){let e=this.options.fieldNames[t],n=r.values[t];i[e]=n;}n.push({pointer:r.pointer.toString(),data:i});}return n;}queryEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=t.slice(i,n+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=[],o=t.slice(0,i);o.length>0&&s.push(o);let a=t.slice(n+1);return a.length>0&&s.push(a),s;}queryLessThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getRightMost(t,r,e.value),n=t.slice(0,i+1);return n.length>0?[n]:[];}let n=this.getLeftMost(t,r,e.value),s=t.slice(0,n);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getLeftMost(t,r,e.value),n=t.slice(i);return n.length>0?[n]:[];}let n=this.getRightMost(t,r,e.value),s=t.slice(n+1);return s.length>0?[s]:[];}queryContains(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.includes(i);});}queryStartsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.startsWith(i);});}queryEndsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.endsWith(i);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];0>r.compare(u,i,this.collation)?n=o+1:s=o;}return n;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];r.compare(u,i,this.collation)>0?s=o:n=o+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */async findItems(t,e,r,i){let n=[],s=0;for(let o=0;o<t.length;o++){let a=r?U({batch:!0,priority:v(r)}):void 0;a&&await a;let u=t[o],l=u.values[e],h=i(l);if(!h){if(s<o){let e=t.slice(s,o);n.push(e);}s=o+1;}}if(s<t.length){let e=t.slice(s);n.push(e);}return n;}constructor(e){t(this,\"options\",void 0),t(this,\"schema\",void 0),t(this,\"fields\",void 0),t(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),t(this,\"modelPromise\",void 0),t(this,\"model\",void 0),t(this,\"modelPrioritySources\",/* @__PURE__ */new Set),t(this,\"collation\",void 0),this.options=e;let r={},i=[];for(let t of this.options.fieldNames){let e=this.options.collectionSchema[t];B(e,\"Missing definition for field\",t),r[t]=e,i.push({type:\"Identifier\",name:t});}this.schema=r,this.fields=i,this.collation=this.options.collation;}};// src/code-generation/components/cms/bundled/models/DatabaseItemModel.ts\nfunction tj(t){let e={},i=t.readUint16();for(let n=0;n<i;n++){let i=t.readString();e[i]=r.read(t);}return e;}// src/code-generation/components/cms/bundled/DatabaseCollection.ts?bundle\nfunction*tD(t){for(let e of t)yield*e.prioritySources;}var tR=class{scanItems(t){return this.itemsPromise?this.isScanning&&t&&this.scanPrioritySources.add(t):(this.isScanning=!0,t&&this.scanPrioritySources.add(t),this.itemsPromise=tx(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),i=new b(r),n=[],s=i.readUint32();for(let t=0;t<s;t++){let t=m(this.scanPrioritySources),e=t?g({batch:!0,priority:t}):void 0;e&&await e;let r=i.getOffset(),s=tj(i),o=i.getOffset()-r,a=new R(this.id,r,o),u=a.toString(),l={pointer:u,data:s};this.itemLoader.prime({pointer:u,prioritySources:/* @__PURE__ */new Set},l),n.push(l);}return n;}).finally(()=>{this.isScanning=!1,this.scanPrioritySources.clear();})),this.itemsPromise;}resolveItem(t,e){let r=this.itemPrioritySources.get(t);r||(r=/* @__PURE__ */new Set,this.itemPrioritySources.set(t,r)),e&&r.add(e);let i=this.itemLoader.load({pointer:t,prioritySources:r}),n=()=>this.itemPrioritySources.delete(t);return i.then(n,n),i;}constructor(e,r){t(this,\"id\",void 0),t(this,\"url\",void 0),t(this,\"itemsPromise\",void 0),t(this,\"isScanning\",!1),t(this,\"scanPrioritySources\",/* @__PURE__ */new Set),t(this,\"itemPrioritySources\",/* @__PURE__ */new Map),t(this,\"itemLoader\",new d.default(async t=>{let e=t.map(({pointer:t})=>{let e=R.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tN(this.url,e),i=[];for(let e=0;e<r.length;e++){let n=m(tD(t)),s=n?g({batch:!0,priority:n}):void 0;s&&await s;let o=r[e];B(o,\"Missing range bytes\");let a=new b(o),u=tj(a),l=t[e]?.pointer;B(l,\"Missing pointer\"),i.push({pointer:l,data:u});}return i;},{// capping to 250 avoids overly long URLs that can cause requests to fail with 414\nmaxBatchSize:250,// Different route workflows can request the same item. Keep DataLoader's cache keyed by the\n// pointer while still carrying the strongest scheduling priority into the shared batch\ncacheKeyFn:t=>t.pointer})),this.id=e,this.url=r;}},tC=class{async scanItems(t){let e=await Promise.all(this.chunks.map(async e=>e.scanItems(t)));return e.flat();}resolveItems(t,e){return Promise.all(t.map(t=>{let r=R.fromString(t),i=this.chunks[r.chunkId];return B(i,\"Missing chunk\"),i.resolveItem(t,e);}));}compareItems(t,e){let r=R.fromString(t.pointer),i=R.fromString(e.pointer);return r.compare(i);}compareValues(t,e,i){return r.compare(t,e,i);}constructor(e){t(this,\"options\",void 0),t(this,\"id\",void 0),t(this,\"schema\",void 0),t(this,\"indexes\",void 0),t(this,\"resolveRichText\",void 0),t(this,\"resolveVectorSetItem\",void 0),t(this,\"chunks\",void 0),this.options=e,this.chunks=this.options.chunks.map((t,e)=>new tR(e,t)),this.schema=e.schema,this.indexes=e.indexes,this.resolveRichText=e.resolveRichText,this.resolveVectorSetItem=e.resolveVectorSetItem,this.id=e.id;}};export{tC as DatabaseCollection,t_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as r,ComponentPresetsConsumer as t,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,f,u=\"undefined\"!=typeof window,c=u&&\"function\"==typeof window.requestIdleCallback,l=\"preload\";function p(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&l in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as s,createElement as m}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction d(e,...r){if(!e)throw Error(\"Assertion Error\"+(r.length>0?\": \"+r.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar y=((a=y||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a),h=((f=h||{})[f.RichText=1]=\"RichText\",f[f.VectorSetItem=2]=\"VectorSetItem\",f);function x(e,r,t){for(let[n,o]of Object.entries(r)){let r=e[n];if(\"number\"==typeof o){e[n]=t(o,r);continue;}T(r,o,t);}}function T(e,r,t){if(\"number\"!=typeof r){if(Array.isArray(r)){if(!Array.isArray(e))return;let[n]=r;for(let r=0;r<e.length;r++){let o=e[r];\"number\"==typeof n?e[r]=t(n,o):T(o,n,t);}return;}null===e||\"object\"!=typeof e||Array.isArray(e)||x(e,r,t);}}function g(i){let a=/* @__PURE__ */new Map;return f=>{let u=a.get(f);if(u)return u;let c=JSON.parse(f),l=function a(f){switch(f[0]){case 1/* Fragment */:{let[,...e]=f,r=e.map(a);return /*#__PURE__*/m(s,void 0,...r);}case 2/* Link */:{let[,e,...r]=f,t=r.map(a);return /*#__PURE__*/m(n,e,...t);}case 3/* Module */:{let[,n,o,u]=f;x(o,u,(e,r)=>{if(1/* RichText */===e)return r?a(r):r;if(\"string\"!=typeof r)return r;let t=i[r];return t?(p(t)&&t.preload(),t):r;});let c=i[n];return d(c,\"Module not found\"),p(c)&&c.preload(),/*#__PURE__*/e(t,{componentIdentifier:n,children:t=>/*#__PURE__*/e(r,{component:c,props:{...t,...o}})});}case 4/* Tag */:{let[,e,r,...t]=f,n=t.map(a);if(\"a\"===e)return /*#__PURE__*/m(o.a,r,...n);return /*#__PURE__*/m(e,r,...n);}case 5/* Text */:{let[,e]=f;return e;}}}(c);return a.set(f,l),l;};}export{h as RichTextJsonPropKind,y as RichTextJsonType,g as getRichTextJsonResolver,x as mapRichTextJsonProps};\nexport const __FramerMetadata__ = {\"exports\":{\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mapRichTextJsonProps\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonPropKind\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{addPropertyControls as e,ControlType as t,QueryEngine as l}from\"framer\";import{DatabaseCollection as i}from\"./PkU8yZwyo-0.js\";import{getRichTextJsonResolver as a}from\"./PkU8yZwyo-1.js\";let r={createdAt:{isNullable:!0,type:t.Date},dl2gibDbs:{isNullable:!0,type:t.Number},g6GXjSPkO:{isNullable:!0,type:t.String},id:{isNullable:!1,type:t.String},nextItemId:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},SbCS2rDax:{isNullable:!0,type:t.String},Szj5qTmsw:{isNullable:!0,type:t.String},updatedAt:{isNullable:!0,type:t.Date}},n=[],o=e=>{let t=n[e];if(t)return t().then(e=>e.default);},u={},d=a(u),y=new l,p={collectionByLocaleId:{default:new i({chunks:[new URL(\"./PkU8yZwyo-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"e3f02b48-8c62-40a2-8518-8bebabe19b8edefault\",indexes:[],resolveRichText:d,resolveVectorSetItem:o,schema:r})},displayName:\"Faq\",id:\"e3f02b48-8c62-40a2-8518-8bebabe19b8e\"};export default p;e(p,{g6GXjSPkO:{preventLocalization:!1,title:\"Slug\",type:t.String},SbCS2rDax:{defaultValue:\"\",title:\"Question\",type:t.String},Szj5qTmsw:{defaultValue:\"\",title:\"Answer\",type:t.String},dl2gibDbs:{defaultValue:0,title:\"Order\",type:t.Number},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/PkU8yZwyo:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/PkU8yZwyo:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await y.query({from:{data:p,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"g6GXjSPkO\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.g6GXjSPkO;},async getRecordIdBySlug(e,t){let[l]=await y.query({from:{data:p,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"g6GXjSPkO\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerColorSyntax\":\"false\",\"framerRecordIdKey\":\"id\",\"framerCollectionId\":\"PkU8yZwyo\",\"framerContractVersion\":\"1\",\"framerData\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerSlug\":\"g6GXjSPkO\",\"framerCollectionUtils\":\"1\",\"framerEnumToDisplayNameUtils\":\"2\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t;}var e,r,i=Object.create,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){try{return e||(0,t[o(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},h=(t,e,r,i)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let a of o(e))u.call(t,a)||a===r||n(t,a,{get:()=>e[a],enumerable:!(i=s(e,a))||i.enumerable});return t;},c=(t,e,r)=>(r=null!=t?i(a(t)):{},h(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !e&&t&&t.__esModule?r:n(r,\"default\",{value:t,enumerable:!0}),t)),f=l({\"../../../node_modules/dataloader/index.js\"(t,e){var r,i=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return n;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){o(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!a(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));o(e);for(var r=0;r<e.callbacks.length;r++){var i=t[r];i instanceof Error?e.callbacks[r].reject(i):e.callbacks[r].resolve(i);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,i=this._cacheKeyFn(t);if(r){var n=r.get(i);if(n){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(n);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(i,l),l;},e.loadMany=function(t){if(!a(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var i,n=this._cacheKeyFn(t);void 0===r.get(n)&&(e instanceof Error?(i=Promise.reject(e)).catch(function(){}):i=Promise.resolve(e),r.set(n,i));}return this;},t;}(),n=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){o(e);for(var i=0;i<e.keys.length;i++)t.clear(e.keys[i]),e.callbacks[i].reject(r);}function o(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function a(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=i;}}),d=c(f(),1);import{yieldToMain as g}from\"framer\";// ../../shared/src/yield.ts\nfunction v(t){return\"function\"==typeof t?t():t;}var y={background:0,\"user-visible\":1,\"user-blocking\":2};function p(t,e){return y[t]>y[e];}// ../../library/src/utils/schedulerPriority.ts\nfunction m(t){let e;for(let r of t){let t=v(r);if((void 0===e||p(t,e))&&(e=t),\"user-blocking\"===e)break;}return e;}// src/code-generation/components/cms/bundled/BufferReader.ts\nvar w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=(e=class e{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,i=this.bytes.subarray(e,r);return this.offset=r,i;}readString(){let t=this.readUint32(),r=this.readBytes(t);return e.textDecoder.decode(r);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(e){t(this,\"bytes\",void 0),t(this,\"offset\",0),t(this,\"view\",void 0),this.bytes=e,this.view=I(this.bytes);}},// TextDecoder has no per-decode state unless streaming is enabled. Reusing one class-owned decoder\n// avoids constructing one for every CMS item, where each item gets its own BufferReader.\nt(e,\"textDecoder\",new TextDecoder),e);function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as S,yieldToMain as U}from\"framer\";// ../../library/src/utils/utils.ts\nvar k=\"undefined\"!=typeof window,L=k&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction B(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function E(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar M=1024,P=1.5,T=t=>2**t-1,x=t=>-(2**(t-1)),F=t=>2**(t-1)-1,N={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:x(8),Int16:x(16),Int32:x(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},A={Uint8:T(8),Uint16:T(16),Uint32:T(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:F(8),Int16:F(16),Int32:F(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function q(t,e,r,i){B(t>=e,t,\"outside lower bound for\",i),B(t<=r,t,\"outside upper bound for\",i);}var O=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*P)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){q(t,N.Uint8,A.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){q(t,N.Uint16,A.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){q(t,N.Uint32,A.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){q(t,N.Uint64,A.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){q(t,N.BigUint64,A.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){q(t,N.Int8,A.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){q(t,N.Int16,A.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){q(t,N.Int32,A.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){q(t,N.Int64,A.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){q(t,N.BigInt64,A.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){t(this,\"offset\",0),t(this,\"bytes\",new Uint8Array(M)),t(this,\"view\",I(this.bytes)),t(this,\"encoder\",new TextEncoder),t(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction _(t){return\"string\"==typeof t;}function j(t){return Number.isFinite(t);}function D(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar R=class e{static fromString(t){let[r,i,n]=t.split(\"/\").map(Number);return B(j(r),\"Invalid chunkId\"),B(j(i),\"Invalid offset\"),B(j(n),\"Invalid length\"),new e(r,i,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let r=t.readUint16(),i=t.readUint32(),n=t.readUint32();return new e(r,i,n);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(B(this.length===t.length),0);}constructor(e,r,i){t(this,\"chunkId\",void 0),t(this,\"offset\",void 0),t(this,\"length\",void 0),this.chunkId=e,this.offset=r,this.length=i;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nfunction C(t){if(D(t))return 0/* Null */;switch(t.type){case\"array\"/* Array */:return 1/* Array */;case\"boolean\"/* Boolean */:return 2/* Boolean */;case\"color\"/* Color */:return 3/* Color */;case\"date\"/* Date */:return 4/* Date */;case\"enum\"/* Enum */:return 5/* Enum */;case\"file\"/* File */:return 6/* File */;case\"responsiveimage\"/* ResponsiveImage */:return 10/* ResponsiveImage */;case\"link\"/* Link */:return 7/* Link */;case\"number\"/* Number */:return 8/* Number */;case\"object\"/* Object */:return 9/* Object */;case\"richtext\"/* RichText */:return 11/* RichText */;case\"string\"/* String */:return 12/* String */;case\"vectorsetitem\"/* VectorSetItem */:return 13/* VectorSetItem */;default:E(t);}}function J(t){let e=t.readUint16(),i=[];for(let n=0;n<e;n++){let e=r.read(t);i.push(e);}return{type:\"array\"/* Array */,value:i};}function W(t,e){for(let i of(t.writeUint16(e.value.length),e.value))r.write(t,i);}function $(t,e,i){let n=t.value.length,s=e.value.length;if(n<s)return -1;if(n>s)return 1;for(let s=0;s<n;s++){let n=t.value[s],o=e.value[s],a=r.compare(n,o,i);if(0!==a)return a;}return 0;}function z(t){return{type:\"boolean\"/* Boolean */,value:0!==t.readUint8()};}function K(t,e){t.writeUint8(e.value?1:0);}function G(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:\"color\"/* Color */,value:t.readString()};}function H(t,e){t.writeString(e.value);}function X(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Q(t){let e=t.readInt64(),r=new Date(e);return{type:\"date\"/* Date */,value:r.toISOString()};}function Y(t,e){let r=new Date(e.value),i=r.getTime();t.writeInt64(i);}function Z(t,e){let r=new Date(t.value),i=new Date(e.value);return r<i?-1:r>i?1:0;}function tt(t){return{type:\"enum\"/* Enum */,value:t.readString()};}function te(t,e){t.writeString(e.value);}function tr(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function ti(t){return{type:\"file\"/* File */,value:t.readString()};}function tn(t,e){t.writeString(e.value);}function ts(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(t){return{type:\"link\"/* Link */,value:t.readJson()};}function ta(t,e){t.writeJson(e.value);}function tu(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tl(t){return{type:\"number\"/* Number */,value:t.readFloat64()};}function th(t,e){t.writeFloat64(e.value);}function tc(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tf(t){let e=t.readUint16(),i={};for(let n=0;n<e;n++){let e=t.readString();i[e]=r.read(t);}return{type:\"object\"/* Object */,value:i};}function td(t,e){let i=Object.entries(e.value);for(let[e,n]of(t.writeUint16(i.length),i))t.writeString(e),r.write(t,n);}function tg(t,e,i){let n=Object.keys(t.value).sort(),s=Object.keys(e.value).sort();if(n.length<s.length)return -1;if(n.length>s.length)return 1;for(let o=0;o<n.length;o++){let a=n[o],u=s[o];if(a<u)return -1;if(a>u)return 1;let l=t.value[a]??null,h=e.value[u]??null,c=r.compare(l,h,i);if(0!==c)return c;}return 0;}function tv(t){return{type:\"responsiveimage\"/* ResponsiveImage */,value:t.readJson()};}function ty(t,e){t.writeJson(e.value);}function tp(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tm(t){let e=t.readInt8();if(0===e)return{type:\"richtext\"/* RichText */,value:t.readUint32()};if(1===e)return{type:\"richtext\"/* RichText */,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tw(t,e){if(j(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(_(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tb(t,e){let r=t.value,i=e.value;if(j(r)&&j(i)||_(r)&&_(i))return r<i?-1:r>i?1:0;throw Error(\"Invalid rich text pointer\");}function tI(t){return{type:\"string\"/* String */,value:t.readString()};}function tS(t,e){t.writeString(e.value);}function tU(t,e,r){let i=t.value,n=e.value;return(0/* CaseInsensitive */===r.type&&(i=t.value.toLowerCase(),n=e.value.toLowerCase()),i<n)?-1:i>n?1:0;}function tk(t){return{type:\"vectorsetitem\"/* VectorSetItem */,value:t.readUint32()};}function tL(t,e){t.writeUint32(e.value);}function tB(t,e){let r=t.value,i=e.value;return r<i?-1:r>i?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return J(t);case 2/* Boolean */:return z(t);case 3/* Color */:return V(t);case 4/* Date */:return Q(t);case 5/* Enum */:return tt(t);case 6/* File */:return ti(t);case 7/* Link */:return to(t);case 8/* Number */:return tl(t);case 9/* Object */:return tf(t);case 10/* ResponsiveImage */:return tv(t);case 11/* RichText */:return tm(t);case 12/* String */:return tI(t);case 13/* VectorSetItem */:return tk(t);default:E(e);}},t.write=function(t,e){let r=C(e);if(t.writeUint8(r),!D(e))switch(e.type){case\"array\"/* Array */:return W(t,e);case\"boolean\"/* Boolean */:return K(t,e);case\"color\"/* Color */:return H(t,e);case\"date\"/* Date */:return Y(t,e);case\"enum\"/* Enum */:return te(t,e);case\"file\"/* File */:return tn(t,e);case\"link\"/* Link */:return ta(t,e);case\"number\"/* Number */:return th(t,e);case\"object\"/* Object */:return td(t,e);case\"responsiveimage\"/* ResponsiveImage */:return ty(t,e);case\"richtext\"/* RichText */:return tw(t,e);case\"vectorsetitem\"/* VectorSetItem */:return tL(t,e);case\"string\"/* String */:return tS(t,e);default:E(e);}},t.compare=function(t,e,r){let i=C(t),n=C(e);if(i<n)return -1;if(i>n)return 1;if(D(t)||D(e))return 0;switch(t.type){case\"array\"/* Array */:return B(\"array\"/* Array */===e.type),$(t,e,r);case\"boolean\"/* Boolean */:return B(\"boolean\"/* Boolean */===e.type),G(t,e);case\"color\"/* Color */:return B(\"color\"/* Color */===e.type),X(t,e);case\"date\"/* Date */:return B(\"date\"/* Date */===e.type),Z(t,e);case\"enum\"/* Enum */:return B(\"enum\"/* Enum */===e.type),tr(t,e);case\"file\"/* File */:return B(\"file\"/* File */===e.type),ts(t,e);case\"link\"/* Link */:return B(\"link\"/* Link */===e.type),tu(t,e);case\"number\"/* Number */:return B(\"number\"/* Number */===e.type),tc(t,e);case\"object\"/* Object */:return B(\"object\"/* Object */===e.type),tg(t,e,r);case\"responsiveimage\"/* ResponsiveImage */:return B(\"responsiveimage\"/* ResponsiveImage */===e.type),tp(t,e);case\"richtext\"/* RichText */:return B(\"richtext\"/* RichText */===e.type),tb(t,e);case\"vectorsetitem\"/* VectorSetItem */:return B(\"vectorsetitem\"/* VectorSetItem */===e.type),tB(t,e);case\"string\"/* String */:return B(\"string\"/* String */===e.type),tU(t,e,r);default:E(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tE=class e{sortEntries(){this.entries.sort((t,e)=>{for(let i=0;i<this.fieldNames.length;i++){let n=t.values[i],s=e.values[i],o=r.compare(n,s,this.options.collation);if(0!==o)return o;}return t.pointer.compare(e.pointer);});}static async deserialize(t,i){let n=new b(t),s=n.readJson(),o=n.readUint8(),a=[];for(let t=0;t<o;t++){let t=n.readString();a.push(t);}let u=new e(a,{collation:s}),l=n.readUint32(),h=()=>{let t=[];for(let e=0;e<o;e++){let e=r.read(n);t.push(e);}let e=R.read(n);u.entries.push({values:t,pointer:e});};for(let t=0;t<l;t++){let t=i?.();t&&await t,h();}return u;}serialize(){let t=new O;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:i,pointer:n}=e;for(let e of i)r.write(t,e);n.write(t);}return t.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(e,r){t(this,\"fieldNames\",void 0),t(this,\"options\",void 0),t(this,\"entries\",[]),this.fieldNames=e,this.options=r;}},tM=3,tP=250,tT=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tx=async(t,e)=>{let r=0;for(;;){try{let i=await fetch(t,e);if(!tT.includes(i.status)||++r>tM)return i;}catch(t){if(e?.signal?.aborted||++r>tM)throw t;}await tF(r);}};async function tF(t){let e=Math.floor(tP*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tN(t,e){let r=tO(e),i=[],n=0;for(let t of r)i.push(`${t.from}-${t.to-1}`),n+=t.to-t.from;let s=new URL(t),o=i.join(\",\");s.searchParams.set(\"range\",o);let a=await tx(s);if(200!==a.status)throw Error(`Request failed: ${a.status} ${a.statusText}`);let u=await a.arrayBuffer(),l=new Uint8Array(u);if(l.length!==n)throw Error(\"Request failed: Unexpected response length\");let h=new tA,c=0;for(let t of r){let e=t.to-t.from,r=c+e,i=l.subarray(c,r);h.write(t.from,i),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tA=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let i=t-r.start,n=i+e;return r.data.slice(i,n);}throw Error(\"Missing data\");}write(t,e){let r=t,i=r+e.length,n=0,s=this.chunks.length;for(;n<s;n++){let t=this.chunks[n];if(B(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let i=r-t.start,n=t.data.subarray(0,i);e=tq(n,e),r=t.start;}break;}}for(;s>n;s--){let t=this.chunks[s-1];if(B(t,\"Missing chunk\"),!(i<t.start)){if(i<t.end){let r=i-t.start,n=t.data.subarray(r);e=tq(e,n),i=t.end;}break;}}let o={start:r,end:i,data:e},a=s-n;this.chunks.splice(n,a,o);}constructor(){t(this,\"chunks\",[]);}};function tq(t,e){let r=t.length+e.length,i=new Uint8Array(r);return i.set(t,0),i.set(e,t.length),i;}function tO(t){B(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,i=r[e];i&&t.from<=i.to?r[e]={from:i.from,to:Math.max(i.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar t_=class{async loadModel(){let[t]=await tN(this.options.url,[this.options.range]);return B(t,\"Failed to load model\"),tE.deserialize(t,()=>{let t=m(this.modelPrioritySources);return t?U({batch:!0,priority:t}):void 0;});}async getModel(t){return this.model||(t&&this.modelPrioritySources.add(t),this.modelPromise??=this.loadModel().finally(()=>{this.modelPrioritySources.clear();}),this.model??=await this.modelPromise),this.model;}async lookupItems(t,e){B(t.length===this.fields.length,\"Invalid query length\");let r=await this.getModel(e),i=[r.entries];for(let[r,n]of t.entries()){let t=[];for(let s of i){let i;let o=e?U({batch:!0,priority:v(e)}):void 0;switch(o&&await o,n.type){case\"All\"/* All */:i=[s];break;case\"Equals\"/* Equals */:i=this.queryEquals(s,n,r);break;case\"NotEquals\"/* NotEquals */:i=this.queryNotEquals(s,n,r);break;case\"LessThan\"/* LessThan */:i=this.queryLessThan(s,n,r);break;case\"GreaterThan\"/* GreaterThan */:i=this.queryGreaterThan(s,n,r);break;case\"Contains\"/* Contains */:i=await this.queryContains(s,n,r,e);break;case\"StartsWith\"/* StartsWith */:i=await this.queryStartsWith(s,n,r,e);break;case\"EndsWith\"/* EndsWith */:i=await this.queryEndsWith(s,n,r,e);break;default:E(n);}t.push(...i);}i=t;}let n=[];for(let t of i)for(let r of t){let t=e?U({batch:!0,priority:v(e)}):void 0;t&&await t;let i={};for(let t=0;t<this.options.fieldNames.length;t++){let e=this.options.fieldNames[t],n=r.values[t];i[e]=n;}n.push({pointer:r.pointer.toString(),data:i});}return n;}queryEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=t.slice(i,n+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=[],o=t.slice(0,i);o.length>0&&s.push(o);let a=t.slice(n+1);return a.length>0&&s.push(a),s;}queryLessThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getRightMost(t,r,e.value),n=t.slice(0,i+1);return n.length>0?[n]:[];}let n=this.getLeftMost(t,r,e.value),s=t.slice(0,n);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getLeftMost(t,r,e.value),n=t.slice(i);return n.length>0?[n]:[];}let n=this.getRightMost(t,r,e.value),s=t.slice(n+1);return s.length>0?[s]:[];}queryContains(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.includes(i);});}queryStartsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.startsWith(i);});}queryEndsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.endsWith(i);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];0>r.compare(u,i,this.collation)?n=o+1:s=o;}return n;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];r.compare(u,i,this.collation)>0?s=o:n=o+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */async findItems(t,e,r,i){let n=[],s=0;for(let o=0;o<t.length;o++){let a=r?U({batch:!0,priority:v(r)}):void 0;a&&await a;let u=t[o],l=u.values[e],h=i(l);if(!h){if(s<o){let e=t.slice(s,o);n.push(e);}s=o+1;}}if(s<t.length){let e=t.slice(s);n.push(e);}return n;}constructor(e){t(this,\"options\",void 0),t(this,\"schema\",void 0),t(this,\"fields\",void 0),t(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),t(this,\"modelPromise\",void 0),t(this,\"model\",void 0),t(this,\"modelPrioritySources\",/* @__PURE__ */new Set),t(this,\"collation\",void 0),this.options=e;let r={},i=[];for(let t of this.options.fieldNames){let e=this.options.collectionSchema[t];B(e,\"Missing definition for field\",t),r[t]=e,i.push({type:\"Identifier\",name:t});}this.schema=r,this.fields=i,this.collation=this.options.collation;}};// src/code-generation/components/cms/bundled/models/DatabaseItemModel.ts\nfunction tj(t){let e={},i=t.readUint16();for(let n=0;n<i;n++){let i=t.readString();e[i]=r.read(t);}return e;}// src/code-generation/components/cms/bundled/DatabaseCollection.ts?bundle\nfunction*tD(t){for(let e of t)yield*e.prioritySources;}var tR=class{scanItems(t){return this.itemsPromise?this.isScanning&&t&&this.scanPrioritySources.add(t):(this.isScanning=!0,t&&this.scanPrioritySources.add(t),this.itemsPromise=tx(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),i=new b(r),n=[],s=i.readUint32();for(let t=0;t<s;t++){let t=m(this.scanPrioritySources),e=t?g({batch:!0,priority:t}):void 0;e&&await e;let r=i.getOffset(),s=tj(i),o=i.getOffset()-r,a=new R(this.id,r,o),u=a.toString(),l={pointer:u,data:s};this.itemLoader.prime({pointer:u,prioritySources:/* @__PURE__ */new Set},l),n.push(l);}return n;}).finally(()=>{this.isScanning=!1,this.scanPrioritySources.clear();})),this.itemsPromise;}resolveItem(t,e){let r=this.itemPrioritySources.get(t);r||(r=/* @__PURE__ */new Set,this.itemPrioritySources.set(t,r)),e&&r.add(e);let i=this.itemLoader.load({pointer:t,prioritySources:r}),n=()=>this.itemPrioritySources.delete(t);return i.then(n,n),i;}constructor(e,r){t(this,\"id\",void 0),t(this,\"url\",void 0),t(this,\"itemsPromise\",void 0),t(this,\"isScanning\",!1),t(this,\"scanPrioritySources\",/* @__PURE__ */new Set),t(this,\"itemPrioritySources\",/* @__PURE__ */new Map),t(this,\"itemLoader\",new d.default(async t=>{let e=t.map(({pointer:t})=>{let e=R.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tN(this.url,e),i=[];for(let e=0;e<r.length;e++){let n=m(tD(t)),s=n?g({batch:!0,priority:n}):void 0;s&&await s;let o=r[e];B(o,\"Missing range bytes\");let a=new b(o),u=tj(a),l=t[e]?.pointer;B(l,\"Missing pointer\"),i.push({pointer:l,data:u});}return i;},{// capping to 250 avoids overly long URLs that can cause requests to fail with 414\nmaxBatchSize:250,// Different route workflows can request the same item. Keep DataLoader's cache keyed by the\n// pointer while still carrying the strongest scheduling priority into the shared batch\ncacheKeyFn:t=>t.pointer})),this.id=e,this.url=r;}},tC=class{async scanItems(t){let e=await Promise.all(this.chunks.map(async e=>e.scanItems(t)));return e.flat();}resolveItems(t,e){return Promise.all(t.map(t=>{let r=R.fromString(t),i=this.chunks[r.chunkId];return B(i,\"Missing chunk\"),i.resolveItem(t,e);}));}compareItems(t,e){let r=R.fromString(t.pointer),i=R.fromString(e.pointer);return r.compare(i);}compareValues(t,e,i){return r.compare(t,e,i);}constructor(e){t(this,\"options\",void 0),t(this,\"id\",void 0),t(this,\"schema\",void 0),t(this,\"indexes\",void 0),t(this,\"resolveRichText\",void 0),t(this,\"resolveVectorSetItem\",void 0),t(this,\"chunks\",void 0),this.options=e,this.chunks=this.options.chunks.map((t,e)=>new tR(e,t)),this.schema=e.schema,this.indexes=e.indexes,this.resolveRichText=e.resolveRichText,this.resolveVectorSetItem=e.resolveVectorSetItem,this.id=e.id;}};export{tC as DatabaseCollection,t_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as r,ComponentPresetsConsumer as t,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,f,u=\"undefined\"!=typeof window,c=u&&\"function\"==typeof window.requestIdleCallback,l=\"preload\";function p(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&l in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as s,createElement as m}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction d(e,...r){if(!e)throw Error(\"Assertion Error\"+(r.length>0?\": \"+r.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar y=((a=y||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a),h=((f=h||{})[f.RichText=1]=\"RichText\",f[f.VectorSetItem=2]=\"VectorSetItem\",f);function x(e,r,t){for(let[n,o]of Object.entries(r)){let r=e[n];if(\"number\"==typeof o){e[n]=t(o,r);continue;}T(r,o,t);}}function T(e,r,t){if(\"number\"!=typeof r){if(Array.isArray(r)){if(!Array.isArray(e))return;let[n]=r;for(let r=0;r<e.length;r++){let o=e[r];\"number\"==typeof n?e[r]=t(n,o):T(o,n,t);}return;}null===e||\"object\"!=typeof e||Array.isArray(e)||x(e,r,t);}}function g(i){let a=/* @__PURE__ */new Map;return f=>{let u=a.get(f);if(u)return u;let c=JSON.parse(f),l=function a(f){switch(f[0]){case 1/* Fragment */:{let[,...e]=f,r=e.map(a);return /*#__PURE__*/m(s,void 0,...r);}case 2/* Link */:{let[,e,...r]=f,t=r.map(a);return /*#__PURE__*/m(n,e,...t);}case 3/* Module */:{let[,n,o,u]=f;x(o,u,(e,r)=>{if(1/* RichText */===e)return r?a(r):r;if(\"string\"!=typeof r)return r;let t=i[r];return t?(p(t)&&t.preload(),t):r;});let c=i[n];return d(c,\"Module not found\"),p(c)&&c.preload(),/*#__PURE__*/e(t,{componentIdentifier:n,children:t=>/*#__PURE__*/e(r,{component:c,props:{...t,...o}})});}case 4/* Tag */:{let[,e,r,...t]=f,n=t.map(a);if(\"a\"===e)return /*#__PURE__*/m(o.a,r,...n);return /*#__PURE__*/m(e,r,...n);}case 5/* Text */:{let[,e]=f;return e;}}}(c);return a.set(f,l),l;};}export{h as RichTextJsonPropKind,y as RichTextJsonType,g as getRichTextJsonResolver,x as mapRichTextJsonProps};\nexport const __FramerMetadata__ = {\"exports\":{\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mapRichTextJsonProps\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonPropKind\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{addPropertyControls as e,ControlType as t,QueryEngine as l}from\"framer\";import{DatabaseCollection as r,DatabaseDictionaryIndex as a}from\"./pSwsSrCbE-0.js\";import{getRichTextJsonResolver as i}from\"./pSwsSrCbE-1.js\";let m={AVcRhP2OB:{isNullable:!0,type:t.String},CPLhsmRnu:{isNullable:!0,type:t.ResponsiveImage},createdAt:{isNullable:!0,type:t.Date},id:{isNullable:!1,type:t.String},mEcO12ZaE:{isNullable:!0,type:t.String},nextItemId:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},SGWnxg4Nt:{isNullable:!0,type:t.String},T5PVy8Kfi:{isNullable:!0,type:t.String},updatedAt:{isNullable:!0,type:t.Date},WO_0Al_y0:{isNullable:!0,type:t.String},xxPo6fm2g:{isNullable:!0,type:t.Number}},o=[\"id\"],n={type:1},c=[\"previousItemId\"],s=[\"nextItemId\"],u=[\"id\",\"mEcO12ZaE\"],d=[\"mEcO12ZaE\",\"id\"],p={type:0},f=[\"mEcO12ZaE\"],S=[\"T5PVy8Kfi\"],y=[\"AVcRhP2OB\"],w=[\"WO_0Al_y0\"],g=[\"SGWnxg4Nt\"],h=[\"CPLhsmRnu\"],E=[\"xxPo6fm2g\"],N=[],b=e=>{let t=N[e];if(t)return t().then(e=>e.default);},x={},C=i(x),R=new l,I={collectionByLocaleId:{default:new r({chunks:[new URL(\"./pSwsSrCbE-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"a4028093-c21c-45af-8f31-11e66c52074adefault\",indexes:[new a({collation:n,collectionSchema:m,fieldNames:o,range:{from:0,to:169},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:n,collectionSchema:m,fieldNames:c,range:{from:169,to:337},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:n,collectionSchema:m,fieldNames:s,range:{from:337,to:501},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:n,collectionSchema:m,fieldNames:u,range:{from:501,to:762},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:d,range:{from:762,to:1023},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:f,range:{from:1023,to:1194},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:S,range:{from:1194,to:1366},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:y,range:{from:1366,to:1979},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:w,range:{from:1979,to:2398},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:g,range:{from:2398,to:2544},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:h,range:{from:2544,to:5402},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")}),new a({collation:p,collectionSchema:m,fieldNames:E,range:{from:5402,to:5548},url:new URL(\"./pSwsSrCbE-indexes-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")})],resolveRichText:C,resolveVectorSetItem:b,schema:m})},displayName:\"Industries\",id:\"a4028093-c21c-45af-8f31-11e66c52074a\"};export default I;e(I,{mEcO12ZaE:{preventLocalization:!1,title:\"Slug\",type:t.String},T5PVy8Kfi:{defaultValue:\"\",title:\"Name\",type:t.String},AVcRhP2OB:{defaultValue:\"\",title:\"Line\",type:t.String},WO_0Al_y0:{defaultValue:\"\",title:\"Typical workflows\",type:t.String},SGWnxg4Nt:{defaultValue:\"\",title:\"Share\",type:t.String},CPLhsmRnu:{title:\"Picture\",type:t.ResponsiveImage},xxPo6fm2g:{defaultValue:0,title:\"Order\",type:t.Number},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/pSwsSrCbE:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/pSwsSrCbE:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await R.query({from:{data:I,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"mEcO12ZaE\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.mEcO12ZaE;},async getRecordIdBySlug(e,t){let[l]=await R.query({from:{data:I,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"mEcO12ZaE\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerCollectionId\":\"pSwsSrCbE\",\"framerRecordIdKey\":\"id\",\"framerCollectionUtils\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerData\":\"true\",\"framerColorSyntax\":\"false\",\"framerSlug\":\"mEcO12ZaE\",\"framerEnumToDisplayNameUtils\":\"2\",\"framerContractVersion\":\"1\"}},\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t;}var e,r,i=Object.create,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,l=(t,e)=>function(){try{return e||(0,t[o(t)[0]])((e={exports:{}}).exports,e),e.exports;}catch(t){throw e=0,t;}},h=(t,e,r,i)=>{if(e&&\"object\"==typeof e||\"function\"==typeof e)for(let a of o(e))u.call(t,a)||a===r||n(t,a,{get:()=>e[a],enumerable:!(i=s(e,a))||i.enumerable});return t;},c=(t,e,r)=>(r=null!=t?i(a(t)):{},h(// If the importer is in node compatibility mode or this is not an ESM\n    // file that has been converted to a CommonJS file using a Babel-\n    // compatible transform (i.e. \"__esModule\" has not been set), then set\n    // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n    !e&&t&&t.__esModule?r:n(r,\"default\",{value:t,enumerable:!0}),t)),f=l({\"../../../node_modules/dataloader/index.js\"(t,e){var r,i=/* @__PURE__ */function(){function t(t,e){if(\"function\"!=typeof t)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: \"+t+\".\");this._batchLoadFn=t,this._maxBatchSize=function(t){if(!(!t||!1!==t.batch))return 1;var e=t&&t.maxBatchSize;if(void 0===e)return 1/0;if(\"number\"!=typeof e||e<1)throw TypeError(\"maxBatchSize must be a positive number: \"+e);return e;}(e),this._batchScheduleFn=function(t){var e=t&&t.batchScheduleFn;if(void 0===e)return n;if(\"function\"!=typeof e)throw TypeError(\"batchScheduleFn must be a function: \"+e);return e;}(e),this._cacheKeyFn=function(t){var e=t&&t.cacheKeyFn;if(void 0===e)return function(t){return t;};if(\"function\"!=typeof e)throw TypeError(\"cacheKeyFn must be a function: \"+e);return e;}(e),this._cacheMap=function(t){if(!(!t||!1!==t.cache))return null;var e=t&&t.cacheMap;if(void 0===e)return /* @__PURE__ */new Map;if(null!==e){var r=[\"get\",\"set\",\"delete\",\"clear\"].filter(function(t){return e&&\"function\"!=typeof e[t];});if(0!==r.length)throw TypeError(\"Custom cacheMap missing methods: \"+r.join(\", \"));}return e;}(e),this._batch=null,this.name=e&&e.name?e.name:null;}var e=t.prototype;return e.load=function(t){if(null==t)throw TypeError(\"The loader.load() function must be called with a value, but got: \"+String(t)+\".\");var e=function(t){var e=t._batch;if(null!==e&&!e.hasDispatched&&e.keys.length<t._maxBatchSize)return e;var r={hasDispatched:!1,keys:[],callbacks:[]};return t._batch=r,t._batchScheduleFn(function(){(function(t,e){var r;if(e.hasDispatched=!0,0===e.keys.length){o(e);return;}try{r=t._batchLoadFn(e.keys);}catch(r){return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: \"+String(r)+\".\"));}if(!r||\"function\"!=typeof r.then)return s(t,e,TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: \"+String(r)+\".\"));r.then(function(t){if(!a(t))throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: \"+String(t)+\".\");if(t.length!==e.keys.length)throw TypeError(\"DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.\\n\\nKeys:\\n\"+String(e.keys)+\"\\n\\nValues:\\n\"+String(t));o(e);for(var r=0;r<e.callbacks.length;r++){var i=t[r];i instanceof Error?e.callbacks[r].reject(i):e.callbacks[r].resolve(i);}}).catch(function(r){s(t,e,r);});})(t,r);}),r;}(this),r=this._cacheMap,i=this._cacheKeyFn(t);if(r){var n=r.get(i);if(n){var u=e.cacheHits||(e.cacheHits=[]);return new Promise(function(t){u.push(function(){t(n);});});}}e.keys.push(t);var l=new Promise(function(t,r){e.callbacks.push({resolve:t,reject:r});});return r&&r.set(i,l),l;},e.loadMany=function(t){if(!a(t))throw TypeError(\"The loader.loadMany() function must be called with Array<key> but got: \"+t+\".\");for(var e=[],r=0;r<t.length;r++)e.push(this.load(t[r]).catch(function(t){return t;}));return Promise.all(e);},e.clear=function(t){var e=this._cacheMap;if(e){var r=this._cacheKeyFn(t);e.delete(r);}return this;},e.clearAll=function(){var t=this._cacheMap;return t&&t.clear(),this;},e.prime=function(t,e){var r=this._cacheMap;if(r){var i,n=this._cacheKeyFn(t);void 0===r.get(n)&&(e instanceof Error?(i=Promise.reject(e)).catch(function(){}):i=Promise.resolve(e),r.set(n,i));}return this;},t;}(),n=\"object\"==typeof process&&\"function\"==typeof process.nextTick?function(t){r||(r=Promise.resolve()),r.then(function(){process.nextTick(t);});}:\"function\"==typeof setImmediate?function(t){setImmediate(t);}:function(t){setTimeout(t);};function s(t,e,r){o(e);for(var i=0;i<e.keys.length;i++)t.clear(e.keys[i]),e.callbacks[i].reject(r);}function o(t){if(t.cacheHits)for(var e=0;e<t.cacheHits.length;e++)t.cacheHits[e]();}function a(t){return\"object\"==typeof t&&null!==t&&\"number\"==typeof t.length&&(0===t.length||t.length>0&&Object.prototype.hasOwnProperty.call(t,t.length-1));}e.exports=i;}}),d=c(f(),1);import{yieldToMain as g}from\"framer\";// ../../shared/src/yield.ts\nfunction v(t){return\"function\"==typeof t?t():t;}var y={background:0,\"user-visible\":1,\"user-blocking\":2};function p(t,e){return y[t]>y[e];}// ../../library/src/utils/schedulerPriority.ts\nfunction m(t){let e;for(let r of t){let t=v(r);if((void 0===e||p(t,e))&&(e=t),\"user-blocking\"===e)break;}return e;}// src/code-generation/components/cms/bundled/BufferReader.ts\nvar w={Uint8:1,Uint16:2,Uint32:4,BigUint64:8,Int8:1,Int16:2,Int32:4,BigInt64:8,Float32:4,Float64:8},b=(e=class e{getOffset(){return this.offset;}ensureLength(t){let e=this.bytes.length;if(!(this.offset+t<=e))throw Error(\"Reading out of bounds\");}readUint8(){let t=w.Uint8;this.ensureLength(t);let e=this.view.getUint8(this.offset);return this.offset+=t,e;}readUint16(){let t=w.Uint16;this.ensureLength(t);let e=this.view.getUint16(this.offset);return this.offset+=t,e;}readUint32(){let t=w.Uint32;this.ensureLength(t);let e=this.view.getUint32(this.offset);return this.offset+=t,e;}readUint64(){let t=this.readBigUint64();return Number(t);}readBigUint64(){let t=w.BigUint64;this.ensureLength(t);let e=this.view.getBigUint64(this.offset);return this.offset+=t,e;}readInt8(){let t=w.Int8;this.ensureLength(t);let e=this.view.getInt8(this.offset);return this.offset+=t,e;}readInt16(){let t=w.Int16;this.ensureLength(t);let e=this.view.getInt16(this.offset);return this.offset+=t,e;}readInt32(){let t=w.Int32;this.ensureLength(t);let e=this.view.getInt32(this.offset);return this.offset+=t,e;}readInt64(){let t=this.readBigInt64();return Number(t);}readBigInt64(){let t=w.BigInt64;this.ensureLength(t);let e=this.view.getBigInt64(this.offset);return this.offset+=t,e;}readFloat32(){let t=w.Float32;this.ensureLength(t);let e=this.view.getFloat32(this.offset);return this.offset+=t,e;}readFloat64(){let t=w.Float64;this.ensureLength(t);let e=this.view.getFloat64(this.offset);return this.offset+=t,e;}readBytes(t){let e=this.offset,r=e+t,i=this.bytes.subarray(e,r);return this.offset=r,i;}readString(){let t=this.readUint32(),r=this.readBytes(t);return e.textDecoder.decode(r);}readJson(){let t=this.readString();return JSON.parse(t);}constructor(e){t(this,\"bytes\",void 0),t(this,\"offset\",0),t(this,\"view\",void 0),this.bytes=e,this.view=I(this.bytes);}},// TextDecoder has no per-decode state unless streaming is enabled. Reusing one class-owned decoder\n// avoids constructing one for every CMS item, where each item gets its own BufferReader.\nt(e,\"textDecoder\",new TextDecoder),e);function I(t){return new DataView(t.buffer,t.byteOffset,t.byteLength);}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nimport{ControlType as S,yieldToMain as U}from\"framer\";// ../../library/src/utils/utils.ts\nvar k=\"undefined\"!=typeof window,L=k&&\"function\"==typeof window.requestIdleCallback;// src/code-generation/components/cms/bundled/assert.ts\nfunction B(t,...e){if(!t)throw Error(\"Assertion Error\"+(e.length>0?\": \"+e.join(\" \"):\"\"));}function E(t){throw Error(`Unexpected value: ${t}`);}// src/code-generation/components/cms/bundled/BufferWriter.ts\nvar M=1024,P=1.5,T=t=>2**t-1,x=t=>-(2**(t-1)),F=t=>2**(t-1)-1,N={Uint8:0,Uint16:0,Uint32:0,Uint64:0,BigUint64:0,Int8:x(8),Int16:x(16),Int32:x(32),Int64:Number.MIN_SAFE_INTEGER,BigInt64:-(BigInt(2)**BigInt(63))},A={Uint8:T(8),Uint16:T(16),Uint32:T(32),Uint64:Number.MAX_SAFE_INTEGER,BigUint64:BigInt(2)**BigInt(64)-BigInt(1),Int8:F(8),Int16:F(16),Int32:F(32),Int64:Number.MAX_SAFE_INTEGER,BigInt64:BigInt(2)**BigInt(63)-BigInt(1)};function q(t,e,r,i){B(t>=e,t,\"outside lower bound for\",i),B(t<=r,t,\"outside upper bound for\",i);}var O=class{getOffset(){return this.offset;}slice(t=0,e=this.offset){return this.bytes.slice(t,e);}subarray(t=0,e=this.offset){return this.bytes.subarray(t,e);}ensureLength(t){let e=this.bytes.length;if(this.offset+t<=e)return;let r=new Uint8Array(Math.ceil(e*P)+t);r.set(this.bytes),this.bytes=r,this.view=I(r);}writeUint8(t){q(t,N.Uint8,A.Uint8,\"Uint8\");let e=w.Uint8;this.ensureLength(e),this.view.setUint8(this.offset,t),this.offset+=e;}writeUint16(t){q(t,N.Uint16,A.Uint16,\"Uint16\");let e=w.Uint16;this.ensureLength(e),this.view.setUint16(this.offset,t),this.offset+=e;}writeUint32(t){q(t,N.Uint32,A.Uint32,\"Uint32\");let e=w.Uint32;this.ensureLength(e),this.view.setUint32(this.offset,t),this.offset+=e;}writeUint64(t){q(t,N.Uint64,A.Uint64,\"Uint64\");let e=BigInt(t);this.writeBigUint64(e);}writeBigUint64(t){q(t,N.BigUint64,A.BigUint64,\"BigUint64\");let e=w.BigUint64;this.ensureLength(e),this.view.setBigUint64(this.offset,t),this.offset+=e;}writeInt8(t){q(t,N.Int8,A.Int8,\"Int8\");let e=w.Int8;this.ensureLength(e),this.view.setInt8(this.offset,t),this.offset+=e;}writeInt16(t){q(t,N.Int16,A.Int16,\"Int16\");let e=w.Int16;this.ensureLength(e),this.view.setInt16(this.offset,t),this.offset+=e;}writeInt32(t){q(t,N.Int32,A.Int32,\"Int32\");let e=w.Int32;this.ensureLength(e),this.view.setInt32(this.offset,t),this.offset+=e;}writeInt64(t){q(t,N.Int64,A.Int64,\"Int64\");let e=BigInt(t);this.writeBigInt64(e);}writeBigInt64(t){q(t,N.BigInt64,A.BigInt64,\"BigInt64\");let e=w.BigInt64;this.ensureLength(e),this.view.setBigInt64(this.offset,t),this.offset+=e;}writeFloat32(t){let e=w.Float32;this.ensureLength(e),this.view.setFloat32(this.offset,t),this.offset+=e;}writeFloat64(t){let e=w.Float64;this.ensureLength(e),this.view.setFloat64(this.offset,t),this.offset+=e;}writeBytes(t){let e=t.length;this.ensureLength(e),this.bytes.set(t,this.offset),this.offset+=e;}encodeString(t){let e=this.encodedStrings.get(t);if(e)return e;let r=this.encoder.encode(t);return this.encodedStrings.set(t,r),r;}writeString(t){let e=this.encodeString(t),r=e.length;this.writeUint32(r),this.writeBytes(e);}writeJson(t){let e=JSON.stringify(t);this.writeString(e);}constructor(){t(this,\"offset\",0),t(this,\"bytes\",new Uint8Array(M)),t(this,\"view\",I(this.bytes)),t(this,\"encoder\",new TextEncoder),t(this,\"encodedStrings\",/* @__PURE__ */new Map);}};// src/utils/typeChecks.ts\nfunction _(t){return\"string\"==typeof t;}function j(t){return Number.isFinite(t);}function D(t){return null===t;}// src/code-generation/components/cms/bundled/models/DatabaseItemPointerModel.ts\nvar R=class e{static fromString(t){let[r,i,n]=t.split(\"/\").map(Number);return B(j(r),\"Invalid chunkId\"),B(j(i),\"Invalid offset\"),B(j(n),\"Invalid length\"),new e(r,i,n);}toString(){return`${this.chunkId}/${this.offset}/${this.length}`;}static read(t){let r=t.readUint16(),i=t.readUint32(),n=t.readUint32();return new e(r,i,n);}write(t){t.writeUint16(this.chunkId),t.writeUint32(this.offset),t.writeUint32(this.length);}compare(t){return this.chunkId<t.chunkId?-1:this.chunkId>t.chunkId?1:this.offset<t.offset?-1:this.offset>t.offset?1:(B(this.length===t.length),0);}constructor(e,r,i){t(this,\"chunkId\",void 0),t(this,\"offset\",void 0),t(this,\"length\",void 0),this.chunkId=e,this.offset=r,this.length=i;}};// src/code-generation/components/cms/bundled/models/DatabaseValueModel.ts\nfunction C(t){if(D(t))return 0/* Null */;switch(t.type){case\"array\"/* Array */:return 1/* Array */;case\"boolean\"/* Boolean */:return 2/* Boolean */;case\"color\"/* Color */:return 3/* Color */;case\"date\"/* Date */:return 4/* Date */;case\"enum\"/* Enum */:return 5/* Enum */;case\"file\"/* File */:return 6/* File */;case\"responsiveimage\"/* ResponsiveImage */:return 10/* ResponsiveImage */;case\"link\"/* Link */:return 7/* Link */;case\"number\"/* Number */:return 8/* Number */;case\"object\"/* Object */:return 9/* Object */;case\"richtext\"/* RichText */:return 11/* RichText */;case\"string\"/* String */:return 12/* String */;case\"vectorsetitem\"/* VectorSetItem */:return 13/* VectorSetItem */;default:E(t);}}function J(t){let e=t.readUint16(),i=[];for(let n=0;n<e;n++){let e=r.read(t);i.push(e);}return{type:\"array\"/* Array */,value:i};}function W(t,e){for(let i of(t.writeUint16(e.value.length),e.value))r.write(t,i);}function $(t,e,i){let n=t.value.length,s=e.value.length;if(n<s)return -1;if(n>s)return 1;for(let s=0;s<n;s++){let n=t.value[s],o=e.value[s],a=r.compare(n,o,i);if(0!==a)return a;}return 0;}function z(t){return{type:\"boolean\"/* Boolean */,value:0!==t.readUint8()};}function K(t,e){t.writeUint8(e.value?1:0);}function G(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function V(t){return{type:\"color\"/* Color */,value:t.readString()};}function H(t,e){t.writeString(e.value);}function X(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function Q(t){let e=t.readInt64(),r=new Date(e);return{type:\"date\"/* Date */,value:r.toISOString()};}function Y(t,e){let r=new Date(e.value),i=r.getTime();t.writeInt64(i);}function Z(t,e){let r=new Date(t.value),i=new Date(e.value);return r<i?-1:r>i?1:0;}function tt(t){return{type:\"enum\"/* Enum */,value:t.readString()};}function te(t,e){t.writeString(e.value);}function tr(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function ti(t){return{type:\"file\"/* File */,value:t.readString()};}function tn(t,e){t.writeString(e.value);}function ts(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function to(t){return{type:\"link\"/* Link */,value:t.readJson()};}function ta(t,e){t.writeJson(e.value);}function tu(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tl(t){return{type:\"number\"/* Number */,value:t.readFloat64()};}function th(t,e){t.writeFloat64(e.value);}function tc(t,e){return t.value<e.value?-1:t.value>e.value?1:0;}function tf(t){let e=t.readUint16(),i={};for(let n=0;n<e;n++){let e=t.readString();i[e]=r.read(t);}return{type:\"object\"/* Object */,value:i};}function td(t,e){let i=Object.entries(e.value);for(let[e,n]of(t.writeUint16(i.length),i))t.writeString(e),r.write(t,n);}function tg(t,e,i){let n=Object.keys(t.value).sort(),s=Object.keys(e.value).sort();if(n.length<s.length)return -1;if(n.length>s.length)return 1;for(let o=0;o<n.length;o++){let a=n[o],u=s[o];if(a<u)return -1;if(a>u)return 1;let l=t.value[a]??null,h=e.value[u]??null,c=r.compare(l,h,i);if(0!==c)return c;}return 0;}function tv(t){return{type:\"responsiveimage\"/* ResponsiveImage */,value:t.readJson()};}function ty(t,e){t.writeJson(e.value);}function tp(t,e){let r=JSON.stringify(t.value),i=JSON.stringify(e.value);return r<i?-1:r>i?1:0;}function tm(t){let e=t.readInt8();if(0===e)return{type:\"richtext\"/* RichText */,value:t.readUint32()};if(1===e)return{type:\"richtext\"/* RichText */,value:t.readString()};throw Error(\"Invalid rich text pointer\");}function tw(t,e){if(j(e.value)){t.writeInt8(0),t.writeUint32(e.value);return;}if(_(e.value)){t.writeInt8(1),t.writeString(e.value);return;}throw Error(\"Invalid rich text pointer\");}function tb(t,e){let r=t.value,i=e.value;if(j(r)&&j(i)||_(r)&&_(i))return r<i?-1:r>i?1:0;throw Error(\"Invalid rich text pointer\");}function tI(t){return{type:\"string\"/* String */,value:t.readString()};}function tS(t,e){t.writeString(e.value);}function tU(t,e,r){let i=t.value,n=e.value;return(0/* CaseInsensitive */===r.type&&(i=t.value.toLowerCase(),n=e.value.toLowerCase()),i<n)?-1:i>n?1:0;}function tk(t){return{type:\"vectorsetitem\"/* VectorSetItem */,value:t.readUint32()};}function tL(t,e){t.writeUint32(e.value);}function tB(t,e){let r=t.value,i=e.value;return r<i?-1:r>i?1:0;}(t=>{t.read=function(t){let e=t.readUint8();switch(e){case 0/* Null */:return null;case 1/* Array */:return J(t);case 2/* Boolean */:return z(t);case 3/* Color */:return V(t);case 4/* Date */:return Q(t);case 5/* Enum */:return tt(t);case 6/* File */:return ti(t);case 7/* Link */:return to(t);case 8/* Number */:return tl(t);case 9/* Object */:return tf(t);case 10/* ResponsiveImage */:return tv(t);case 11/* RichText */:return tm(t);case 12/* String */:return tI(t);case 13/* VectorSetItem */:return tk(t);default:E(e);}},t.write=function(t,e){let r=C(e);if(t.writeUint8(r),!D(e))switch(e.type){case\"array\"/* Array */:return W(t,e);case\"boolean\"/* Boolean */:return K(t,e);case\"color\"/* Color */:return H(t,e);case\"date\"/* Date */:return Y(t,e);case\"enum\"/* Enum */:return te(t,e);case\"file\"/* File */:return tn(t,e);case\"link\"/* Link */:return ta(t,e);case\"number\"/* Number */:return th(t,e);case\"object\"/* Object */:return td(t,e);case\"responsiveimage\"/* ResponsiveImage */:return ty(t,e);case\"richtext\"/* RichText */:return tw(t,e);case\"vectorsetitem\"/* VectorSetItem */:return tL(t,e);case\"string\"/* String */:return tS(t,e);default:E(e);}},t.compare=function(t,e,r){let i=C(t),n=C(e);if(i<n)return -1;if(i>n)return 1;if(D(t)||D(e))return 0;switch(t.type){case\"array\"/* Array */:return B(\"array\"/* Array */===e.type),$(t,e,r);case\"boolean\"/* Boolean */:return B(\"boolean\"/* Boolean */===e.type),G(t,e);case\"color\"/* Color */:return B(\"color\"/* Color */===e.type),X(t,e);case\"date\"/* Date */:return B(\"date\"/* Date */===e.type),Z(t,e);case\"enum\"/* Enum */:return B(\"enum\"/* Enum */===e.type),tr(t,e);case\"file\"/* File */:return B(\"file\"/* File */===e.type),ts(t,e);case\"link\"/* Link */:return B(\"link\"/* Link */===e.type),tu(t,e);case\"number\"/* Number */:return B(\"number\"/* Number */===e.type),tc(t,e);case\"object\"/* Object */:return B(\"object\"/* Object */===e.type),tg(t,e,r);case\"responsiveimage\"/* ResponsiveImage */:return B(\"responsiveimage\"/* ResponsiveImage */===e.type),tp(t,e);case\"richtext\"/* RichText */:return B(\"richtext\"/* RichText */===e.type),tb(t,e);case\"vectorsetitem\"/* VectorSetItem */:return B(\"vectorsetitem\"/* VectorSetItem */===e.type),tB(t,e);case\"string\"/* String */:return B(\"string\"/* String */===e.type),tU(t,e,r);default:E(t);}};})(r||(r={}));// src/code-generation/components/cms/bundled/models/DatabaseDictionaryIndexModel.ts\nvar tE=class e{sortEntries(){this.entries.sort((t,e)=>{for(let i=0;i<this.fieldNames.length;i++){let n=t.values[i],s=e.values[i],o=r.compare(n,s,this.options.collation);if(0!==o)return o;}return t.pointer.compare(e.pointer);});}static async deserialize(t,i){let n=new b(t),s=n.readJson(),o=n.readUint8(),a=[];for(let t=0;t<o;t++){let t=n.readString();a.push(t);}let u=new e(a,{collation:s}),l=n.readUint32(),h=()=>{let t=[];for(let e=0;e<o;e++){let e=r.read(n);t.push(e);}let e=R.read(n);u.entries.push({values:t,pointer:e});};for(let t=0;t<l;t++){let t=i?.();t&&await t,h();}return u;}serialize(){let t=new O;for(let e of(t.writeJson(this.options.collation),t.writeUint8(this.fieldNames.length),this.fieldNames))t.writeString(e);for(let e of(this.sortEntries(),t.writeUint32(this.entries.length),this.entries)){let{values:i,pointer:n}=e;for(let e of i)r.write(t,e);n.write(t);}return t.subarray();}addItem(t,e){let r=this.fieldNames.map(e=>t.getField(e)??null);this.entries.push({values:r,pointer:e});}constructor(e,r){t(this,\"fieldNames\",void 0),t(this,\"options\",void 0),t(this,\"entries\",[]),this.fieldNames=e,this.options=r;}},tM=3,tP=250,tT=[408,// Request Timeout\n429,// Too Many Requests\n500,// Internal Server Error\n502,// Bad Gateway\n503,// Service Unavailable\n504],tx=async(t,e)=>{let r=0;for(;;){try{let i=await fetch(t,e);if(!tT.includes(i.status)||++r>tM)return i;}catch(t){if(e?.signal?.aborted||++r>tM)throw t;}await tF(r);}};async function tF(t){let e=Math.floor(tP*(Math.random()+1)*2**(t-1));await new Promise(t=>{setTimeout(t,e);});}// src/code-generation/components/cms/bundled/rangeRequest.ts\nasync function tN(t,e){let r=tO(e),i=[],n=0;for(let t of r)i.push(`${t.from}-${t.to-1}`),n+=t.to-t.from;let s=new URL(t),o=i.join(\",\");s.searchParams.set(\"range\",o);let a=await tx(s);if(200!==a.status)throw Error(`Request failed: ${a.status} ${a.statusText}`);let u=await a.arrayBuffer(),l=new Uint8Array(u);if(l.length!==n)throw Error(\"Request failed: Unexpected response length\");let h=new tA,c=0;for(let t of r){let e=t.to-t.from,r=c+e,i=l.subarray(c,r);h.write(t.from,i),c=r;}return e.map(t=>h.read(t.from,t.to-t.from));}var tA=class{read(t,e){for(let r of this.chunks){if(t<r.start)break;if(t>r.end)continue;if(t+e>r.end)break;let i=t-r.start,n=i+e;return r.data.slice(i,n);}throw Error(\"Missing data\");}write(t,e){let r=t,i=r+e.length,n=0,s=this.chunks.length;for(;n<s;n++){let t=this.chunks[n];if(B(t,\"Missing chunk\"),!(r>t.end)){if(r>t.start){let i=r-t.start,n=t.data.subarray(0,i);e=tq(n,e),r=t.start;}break;}}for(;s>n;s--){let t=this.chunks[s-1];if(B(t,\"Missing chunk\"),!(i<t.start)){if(i<t.end){let r=i-t.start,n=t.data.subarray(r);e=tq(e,n),i=t.end;}break;}}let o={start:r,end:i,data:e},a=s-n;this.chunks.splice(n,a,o);}constructor(){t(this,\"chunks\",[]);}};function tq(t,e){let r=t.length+e.length,i=new Uint8Array(r);return i.set(t,0),i.set(e,t.length),i;}function tO(t){B(t.length>0,\"Must have at least one range\");let e=[...t].sort((t,e)=>t.from-e.from),r=[];for(let t of e){let e=r.length-1,i=r[e];i&&t.from<=i.to?r[e]={from:i.from,to:Math.max(i.to,t.to)}:r.push(t);}return r;}// src/code-generation/components/cms/bundled/DatabaseDictionaryIndex.ts\nvar t_=class{async loadModel(){let[t]=await tN(this.options.url,[this.options.range]);return B(t,\"Failed to load model\"),tE.deserialize(t,()=>{let t=m(this.modelPrioritySources);return t?U({batch:!0,priority:t}):void 0;});}async getModel(t){return this.model||(t&&this.modelPrioritySources.add(t),this.modelPromise??=this.loadModel().finally(()=>{this.modelPrioritySources.clear();}),this.model??=await this.modelPromise),this.model;}async lookupItems(t,e){B(t.length===this.fields.length,\"Invalid query length\");let r=await this.getModel(e),i=[r.entries];for(let[r,n]of t.entries()){let t=[];for(let s of i){let i;let o=e?U({batch:!0,priority:v(e)}):void 0;switch(o&&await o,n.type){case\"All\"/* All */:i=[s];break;case\"Equals\"/* Equals */:i=this.queryEquals(s,n,r);break;case\"NotEquals\"/* NotEquals */:i=this.queryNotEquals(s,n,r);break;case\"LessThan\"/* LessThan */:i=this.queryLessThan(s,n,r);break;case\"GreaterThan\"/* GreaterThan */:i=this.queryGreaterThan(s,n,r);break;case\"Contains\"/* Contains */:i=await this.queryContains(s,n,r,e);break;case\"StartsWith\"/* StartsWith */:i=await this.queryStartsWith(s,n,r,e);break;case\"EndsWith\"/* EndsWith */:i=await this.queryEndsWith(s,n,r,e);break;default:E(n);}t.push(...i);}i=t;}let n=[];for(let t of i)for(let r of t){let t=e?U({batch:!0,priority:v(e)}):void 0;t&&await t;let i={};for(let t=0;t<this.options.fieldNames.length;t++){let e=this.options.fieldNames[t],n=r.values[t];i[e]=n;}n.push({pointer:r.pointer.toString(),data:i});}return n;}queryEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=t.slice(i,n+1);return s.length>0?[s]:[];}queryNotEquals(t,e,r){let i=this.getLeftMost(t,r,e.value),n=this.getRightMost(t,r,e.value),s=[],o=t.slice(0,i);o.length>0&&s.push(o);let a=t.slice(n+1);return a.length>0&&s.push(a),s;}queryLessThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getRightMost(t,r,e.value),n=t.slice(0,i+1);return n.length>0?[n]:[];}let n=this.getLeftMost(t,r,e.value),s=t.slice(0,n);return s.length>0?[s]:[];}queryGreaterThan(t,e,r){let i=this.getRightMost(t,r,null);if(t=t.slice(i+1),e.inclusive){let i=this.getLeftMost(t,r,e.value),n=t.slice(i);return n.length>0?[n]:[];}let n=this.getRightMost(t,r,e.value),s=t.slice(n+1);return s.length>0?[s]:[];}queryContains(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.includes(i);});}queryStartsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.startsWith(i);});}queryEndsWith(t,e,r,i){return this.findItems(t,r,i,t=>{if(t?.type!==S.String||e.value?.type!==S.String)return!1;let r=t.value,i=e.value.value;return 0/* CaseInsensitive */===this.collation.type&&(r=r.toLowerCase(),i=i.toLowerCase()),r.endsWith(i);});}/**\n   * Returns the index of the left most entry that is equal to the target.\n   *\n   * ```text\n   *   Left most\n   *       ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the left most entry that is equal to the target.\n   */getLeftMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];0>r.compare(u,i,this.collation)?n=o+1:s=o;}return n;}/**\n   * Returns the index of the right most entry that is equal to the target.\n   *\n   * ```text\n   *              Right most\n   *                   ↓\n   * ┌───┬───┬───┬───┬───┬───┐\n   * │ 1 │ 2 │ 2 │ 2 │ 2 │ 3 │\n   * └───┴───┴───┴───┴───┴───┘\n   * ```\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param target The target value to search for.\n   * @returns The index of the right most entry that is equal to the target.\n   */getRightMost(t,e,i){let n=0,s=t.length;for(;n<s;){let o=n+s>>1,a=t[o],u=a.values[e];r.compare(u,i,this.collation)>0?s=o:n=o+1;}return s-1;}/**\n   * Finds all items that are matching the predicate and groups adjacent items together.\n   *\n   * @param entries The entries array to search in.\n   * @param position The position of the value in the entry.\n   * @param predicate The predicate to match the values against.\n   * @returns An array of chunks that match the predicate.\n   */async findItems(t,e,r,i){let n=[],s=0;for(let o=0;o<t.length;o++){let a=r?U({batch:!0,priority:v(r)}):void 0;a&&await a;let u=t[o],l=u.values[e],h=i(l);if(!h){if(s<o){let e=t.slice(s,o);n.push(e);}s=o+1;}}if(s<t.length){let e=t.slice(s);n.push(e);}return n;}constructor(e){t(this,\"options\",void 0),t(this,\"schema\",void 0),t(this,\"fields\",void 0),t(this,\"supportedLookupTypes\",[\"All\"/* All */,\"Equals\"/* Equals */,\"NotEquals\"/* NotEquals */,\"LessThan\"/* LessThan */,\"GreaterThan\"/* GreaterThan */,\"Contains\"/* Contains */,\"StartsWith\"/* StartsWith */,\"EndsWith\"/* EndsWith */]),t(this,\"modelPromise\",void 0),t(this,\"model\",void 0),t(this,\"modelPrioritySources\",/* @__PURE__ */new Set),t(this,\"collation\",void 0),this.options=e;let r={},i=[];for(let t of this.options.fieldNames){let e=this.options.collectionSchema[t];B(e,\"Missing definition for field\",t),r[t]=e,i.push({type:\"Identifier\",name:t});}this.schema=r,this.fields=i,this.collation=this.options.collation;}};// src/code-generation/components/cms/bundled/models/DatabaseItemModel.ts\nfunction tj(t){let e={},i=t.readUint16();for(let n=0;n<i;n++){let i=t.readString();e[i]=r.read(t);}return e;}// src/code-generation/components/cms/bundled/DatabaseCollection.ts?bundle\nfunction*tD(t){for(let e of t)yield*e.prioritySources;}var tR=class{scanItems(t){return this.itemsPromise?this.isScanning&&t&&this.scanPrioritySources.add(t):(this.isScanning=!0,t&&this.scanPrioritySources.add(t),this.itemsPromise=tx(this.url).then(async t=>{if(!t.ok)throw Error(`Request failed: ${t.status} ${t.statusText}`);let e=await t.arrayBuffer(),r=new Uint8Array(e),i=new b(r),n=[],s=i.readUint32();for(let t=0;t<s;t++){let t=m(this.scanPrioritySources),e=t?g({batch:!0,priority:t}):void 0;e&&await e;let r=i.getOffset(),s=tj(i),o=i.getOffset()-r,a=new R(this.id,r,o),u=a.toString(),l={pointer:u,data:s};this.itemLoader.prime({pointer:u,prioritySources:/* @__PURE__ */new Set},l),n.push(l);}return n;}).finally(()=>{this.isScanning=!1,this.scanPrioritySources.clear();})),this.itemsPromise;}resolveItem(t,e){let r=this.itemPrioritySources.get(t);r||(r=/* @__PURE__ */new Set,this.itemPrioritySources.set(t,r)),e&&r.add(e);let i=this.itemLoader.load({pointer:t,prioritySources:r}),n=()=>this.itemPrioritySources.delete(t);return i.then(n,n),i;}constructor(e,r){t(this,\"id\",void 0),t(this,\"url\",void 0),t(this,\"itemsPromise\",void 0),t(this,\"isScanning\",!1),t(this,\"scanPrioritySources\",/* @__PURE__ */new Set),t(this,\"itemPrioritySources\",/* @__PURE__ */new Map),t(this,\"itemLoader\",new d.default(async t=>{let e=t.map(({pointer:t})=>{let e=R.fromString(t);return{from:e.offset,to:e.offset+e.length};}),r=await tN(this.url,e),i=[];for(let e=0;e<r.length;e++){let n=m(tD(t)),s=n?g({batch:!0,priority:n}):void 0;s&&await s;let o=r[e];B(o,\"Missing range bytes\");let a=new b(o),u=tj(a),l=t[e]?.pointer;B(l,\"Missing pointer\"),i.push({pointer:l,data:u});}return i;},{// capping to 250 avoids overly long URLs that can cause requests to fail with 414\nmaxBatchSize:250,// Different route workflows can request the same item. Keep DataLoader's cache keyed by the\n// pointer while still carrying the strongest scheduling priority into the shared batch\ncacheKeyFn:t=>t.pointer})),this.id=e,this.url=r;}},tC=class{async scanItems(t){let e=await Promise.all(this.chunks.map(async e=>e.scanItems(t)));return e.flat();}resolveItems(t,e){return Promise.all(t.map(t=>{let r=R.fromString(t),i=this.chunks[r.chunkId];return B(i,\"Missing chunk\"),i.resolveItem(t,e);}));}compareItems(t,e){let r=R.fromString(t.pointer),i=R.fromString(e.pointer);return r.compare(i);}compareValues(t,e,i){return r.compare(t,e,i);}constructor(e){t(this,\"options\",void 0),t(this,\"id\",void 0),t(this,\"schema\",void 0),t(this,\"indexes\",void 0),t(this,\"resolveRichText\",void 0),t(this,\"resolveVectorSetItem\",void 0),t(this,\"chunks\",void 0),this.options=e,this.chunks=this.options.chunks.map((t,e)=>new tR(e,t)),this.schema=e.schema,this.indexes=e.indexes,this.resolveRichText=e.resolveRichText,this.resolveVectorSetItem=e.resolveVectorSetItem,this.id=e.id;}};export{tC as DatabaseCollection,t_ as DatabaseDictionaryIndex};\nexport const __FramerMetadata__ = {\"exports\":{\"DatabaseCollection\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"DatabaseDictionaryIndex\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{jsx as e}from\"react/jsx-runtime\";import{AutoBreakpointVariant as r,ComponentPresetsConsumer as t,Link as n,motion as o}from\"framer\";// ../../library/src/router/lazy.tsx\nimport{isValidElement as i}from\"react\";// ../../library/src/utils/utils.ts\nvar a,f,u=\"undefined\"!=typeof window,c=u&&\"function\"==typeof window.requestIdleCallback,l=\"preload\";function p(e){return\"object\"==typeof e&&null!==e&&!/*#__PURE__*/i(e)&&l in e;}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nimport{Fragment as s,createElement as m}from\"react\";// src/code-generation/components/cms/bundled/assert.ts\nfunction d(e,...r){if(!e)throw Error(\"Assertion Error\"+(r.length>0?\": \"+r.join(\" \"):\"\"));}// src/code-generation/components/cms/bundled/getRichTextJsonResolver.tsx?bundle\nvar y=((a=y||{})[a.Fragment=1]=\"Fragment\",a[a.Link=2]=\"Link\",a[a.Module=3]=\"Module\",a[a.Tag=4]=\"Tag\",a[a.Text=5]=\"Text\",a),h=((f=h||{})[f.RichText=1]=\"RichText\",f[f.VectorSetItem=2]=\"VectorSetItem\",f);function x(e,r,t){for(let[n,o]of Object.entries(r)){let r=e[n];if(\"number\"==typeof o){e[n]=t(o,r);continue;}T(r,o,t);}}function T(e,r,t){if(\"number\"!=typeof r){if(Array.isArray(r)){if(!Array.isArray(e))return;let[n]=r;for(let r=0;r<e.length;r++){let o=e[r];\"number\"==typeof n?e[r]=t(n,o):T(o,n,t);}return;}null===e||\"object\"!=typeof e||Array.isArray(e)||x(e,r,t);}}function g(i){let a=/* @__PURE__ */new Map;return f=>{let u=a.get(f);if(u)return u;let c=JSON.parse(f),l=function a(f){switch(f[0]){case 1/* Fragment */:{let[,...e]=f,r=e.map(a);return /*#__PURE__*/m(s,void 0,...r);}case 2/* Link */:{let[,e,...r]=f,t=r.map(a);return /*#__PURE__*/m(n,e,...t);}case 3/* Module */:{let[,n,o,u]=f;x(o,u,(e,r)=>{if(1/* RichText */===e)return r?a(r):r;if(\"string\"!=typeof r)return r;let t=i[r];return t?(p(t)&&t.preload(),t):r;});let c=i[n];return d(c,\"Module not found\"),p(c)&&c.preload(),/*#__PURE__*/e(t,{componentIdentifier:n,children:t=>/*#__PURE__*/e(r,{component:c,props:{...t,...o}})});}case 4/* Tag */:{let[,e,r,...t]=f,n=t.map(a);if(\"a\"===e)return /*#__PURE__*/m(o.a,r,...n);return /*#__PURE__*/m(e,r,...n);}case 5/* Text */:{let[,e]=f;return e;}}}(c);return a.set(f,l),l;};}export{h as RichTextJsonPropKind,y as RichTextJsonType,g as getRichTextJsonResolver,x as mapRichTextJsonProps};\nexport const __FramerMetadata__ = {\"exports\":{\"mapRichTextJsonProps\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getRichTextJsonResolver\":{\"type\":\"reactComponent\",\"name\":\"getRichTextJsonResolver\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonType\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RichTextJsonPropKind\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{addPropertyControls as e,ControlType as t,QueryEngine as l}from\"framer\";import{DatabaseCollection as i}from\"./XjoOiDtHB-0.js\";import{getRichTextJsonResolver as a}from\"./XjoOiDtHB-1.js\";let r={createdAt:{isNullable:!0,type:t.Date},fcHkwxtpn:{isNullable:!0,type:t.Number},id:{isNullable:!1,type:t.String},KEznoO3Fc:{isNullable:!0,type:t.String},kVumO8Xlm:{isNullable:!0,type:t.String},nextItemId:{isNullable:!0,type:t.String},oxQQHDFAK:{isNullable:!0,type:t.String},previousItemId:{isNullable:!0,type:t.String},SqZL5iLvT:{isNullable:!0,type:t.String},updatedAt:{isNullable:!0,type:t.Date},vgzNzuqey:{isNullable:!0,type:t.String},zzw49OXOh:{isNullable:!0,type:t.ResponsiveImage}},u=[],n=e=>{let t=u[e];if(t)return t().then(e=>e.default);},o={},p=a(o),d=new l,c={collectionByLocaleId:{default:new i({chunks:[new URL(\"./XjoOiDtHB-chunk-default-0.framercms\",import.meta.url).href.replace(\"/modules/\",\"/cms/\")],id:\"7220ac2c-8fcf-45dc-9cbe-c666674912c8default\",indexes:[],resolveRichText:p,resolveVectorSetItem:n,schema:r})},displayName:\"Reviews\",id:\"7220ac2c-8fcf-45dc-9cbe-c666674912c8\"};export default c;e(c,{kVumO8Xlm:{preventLocalization:!1,title:\"Slug\",type:t.String},SqZL5iLvT:{defaultValue:\"\",title:\"Quote\",type:t.String},KEznoO3Fc:{defaultValue:\"\",title:\"Person\",type:t.String},oxQQHDFAK:{defaultValue:\"\",title:\"Role\",type:t.String},vgzNzuqey:{defaultValue:\"\",title:\"Company\",type:t.String},zzw49OXOh:{title:\"Picture\",type:t.ResponsiveImage},fcHkwxtpn:{defaultValue:0,title:\"Order\",type:t.Number},createdAt:{title:\"Created\",type:t.Date},updatedAt:{title:\"Updated\",type:t.Date},previousItemId:{dataIdentifier:\"local-module:collection/XjoOiDtHB:default\",title:\"Previous\",type:t.CollectionReference},nextItemId:{dataIdentifier:\"local-module:collection/XjoOiDtHB:default\",title:\"Next\",type:t.CollectionReference}});export const enumToDisplayNameFunctions={};export const utils={async getSlugByRecordId(e,t){let[l]=await d.query({from:{data:c,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"kVumO8Xlm\",type:\"Identifier\"}],where:{left:{name:\"id\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.kVumO8Xlm;},async getRecordIdBySlug(e,t){let[l]=await d.query({from:{data:c,type:\"Collection\"},limit:{type:\"LiteralValue\",value:1},select:[{name:\"id\",type:\"Identifier\"}],where:{left:{name:\"kVumO8Xlm\",type:\"Identifier\"},operator:\"==\",right:{type:\"LiteralValue\",value:e},type:\"BinaryOperation\"}},t);return l?.id;}};\nexport const __FramerMetadata__ = {\"exports\":{\"utils\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"data\",\"name\":\"data\",\"annotations\":{\"framerEnumToDisplayNameUtils\":\"2\",\"framerCollectionId\":\"XjoOiDtHB\",\"framerColorSyntax\":\"false\",\"framerContractVersion\":\"1\",\"framerSlug\":\"kVumO8Xlm\",\"framerAutoSizeImages\":\"true\",\"framerRecordIdKey\":\"id\",\"framerData\":\"true\",\"framerCollectionUtils\":\"1\"}},\"enumToDisplayNameFunctions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,ChildrenCanSuspend,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,PathVariablesContext,PropertyOverrides,queryCache,RenderTarget,runTasksWithYield,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useQueryData,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import RbCmsRow from\"#framer/local/codeFile/Gmj2Pes/RbCmsRow.js\";import RbFooter from\"#framer/local/codeFile/asQlgJw/RbFooter.js\";import RbHeader from\"#framer/local/codeFile/uLPnffl/RbHeader.js\";import RbLoader from\"#framer/local/codeFile/nVgMSrk/RbLoader.js\";import RbSmooth from\"#framer/local/codeFile/doHXfKj/RbSmooth.js\";import Posts from\"#framer/local/collection/CceZOhjx3/CceZOhjx3.js\";import Results from\"#framer/local/collection/f7aZL1mDQ/f7aZL1mDQ.js\";import Site from\"#framer/local/collection/hxDaj92Q0/hxDaj92Q0.js\";import Tools from\"#framer/local/collection/PgloSUgqG/PgloSUgqG.js\";import Faq from\"#framer/local/collection/PkU8yZwyo/PkU8yZwyo.js\";import Industries from\"#framer/local/collection/pSwsSrCbE/pSwsSrCbE.js\";import Workflows from\"#framer/local/collection/sm0q1oIkH/sm0q1oIkH.js\";import Reviews from\"#framer/local/collection/XjoOiDtHB/XjoOiDtHB.js\";const RbHeaderFonts=getFonts(RbHeader);const RbLoaderFonts=getFonts(RbLoader);const RbCmsRowFonts=getFonts(RbCmsRow);const RbSmoothFonts=getFonts(RbSmooth);const RbFooterFonts=getFonts(RbFooter);const breakpoints={JpqQA6b4L:\"(max-width: 809.98px)\",Uqt6obtQc:\"(min-width: 810px) and (max-width: 1199.98px)\",ZH90tasJA:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-83w5x\";const variantClassNames={JpqQA6b4L:\"framer-v-q4fdnn\",Uqt6obtQc:\"framer-v-1l244tq\",ZH90tasJA:\"framer-v-tz13c6\"};const g6GXjSPkObvrLjb3a5=undefined;const SbCS2rDaxbvrLjb3a5=undefined;const Szj5qTmswbvrLjb3a5=undefined;const dl2gibDbsbvrLjb3a5=undefined;const idbvrLjb3a5=undefined;const lZnj8Q61YqBX88atv1=undefined;const Reeb5th7PqBX88atv1=undefined;const fxpxVycMLqBX88atv1=undefined;const cQ2vuHjRaqBX88atv1=undefined;const rLDKjBmFgqBX88atv1=undefined;const LR3IW3PoxqBX88atv1=undefined;const upfVbAi54qBX88atv1=undefined;const wM5f1x0AJqBX88atv1=undefined;const MkSmpapl3qBX88atv1=undefined;const idqBX88atv1=undefined;const kVumO8Xlmy2DGpSdw4=undefined;const SqZL5iLvTy2DGpSdw4=undefined;const KEznoO3Fcy2DGpSdw4=undefined;const oxQQHDFAKy2DGpSdw4=undefined;const vgzNzuqeyy2DGpSdw4=undefined;const fcHkwxtpny2DGpSdw4=undefined;const zzw49OXOhy2DGpSdw4=undefined;const idy2DGpSdw4=undefined;const xjea57bcDvE95T4XbK=undefined;const mQenyEPWSvE95T4XbK=undefined;const a6lR3XqN5vE95T4XbK=undefined;const XbH7LhsY7vE95T4XbK=undefined;const l3NSscRvYvE95T4XbK=undefined;const RdjMxOibZvE95T4XbK=undefined;const wOqzwLTD3vE95T4XbK=undefined;const c3HdyBcg5vE95T4XbK=undefined;const qlrZJj4fPvE95T4XbK=undefined;const idvE95T4XbK=undefined;const wbhnYW8xMCIlNSWkfB=undefined;const Tm8yTLG6iCIlNSWkfB=undefined;const qwLI1FIecCIlNSWkfB=undefined;const kz9ggevxfCIlNSWkfB=undefined;const h0SXqliLKCIlNSWkfB=undefined;const Pb_HOaw2UCIlNSWkfB=undefined;const g7gwc7g2bCIlNSWkfB=undefined;const LqyhOcNv_CIlNSWkfB=undefined;const WAXVP4aWUCIlNSWkfB=undefined;const KqT6nlT3ZCIlNSWkfB=undefined;const S10ttArUACIlNSWkfB=undefined;const idCIlNSWkfB=undefined;const mEcO12ZaETrSKXiMp3=undefined;const T5PVy8KfiTrSKXiMp3=undefined;const AVcRhP2OBTrSKXiMp3=undefined;const WO_0Al_y0TrSKXiMp3=undefined;const SGWnxg4NtTrSKXiMp3=undefined;const xxPo6fm2gTrSKXiMp3=undefined;const CPLhsmRnuTrSKXiMp3=undefined;const idTrSKXiMp3=undefined;const iBrfsm01Pwtqz3QH0T=undefined;const UGUQvxQODwtqz3QH0T=undefined;const qRCxzocuJwtqz3QH0T=undefined;const tL3HWwVTtwtqz3QH0T=undefined;const phTiIsGggwtqz3QH0T=undefined;const vH8ugh5fvwtqz3QH0T=undefined;const s8JiwIytowtqz3QH0T=undefined;const ZsQmBaIxvwtqz3QH0T=undefined;const YKtMc5XGvwtqz3QH0T=undefined;const idwtqz3QH0T=undefined;const q1EtCgvA9Hg0OkwSrn=undefined;const nbAOGR1suHg0OkwSrn=undefined;const S7Fsnls9JHg0OkwSrn=undefined;const O2TvkBDRwHg0OkwSrn=undefined;const rqaEHuFngHg0OkwSrn=undefined;const JsTvuJegVHg0OkwSrn=undefined;const API0fu97zHg0OkwSrn=undefined;const fWaTf2L6zHg0OkwSrn=undefined;const LEiNr67p_Hg0OkwSrn=undefined;const Z0jl9I921Hg0OkwSrn=undefined;const idH8wpcgBHg0OkwSrn=undefined;const YwyqBNuN0Hg0OkwSrn=undefined;const idHg0OkwSrn=undefined;const query=prequery=>prequery({from:{alias:\"bvrLjb3a5\",data:Faq,type:\"Collection\"},orderBy:[{collection:\"bvrLjb3a5\",name:\"dl2gibDbs\",type:\"Identifier\"}],select:[{collection:\"bvrLjb3a5\",name:\"g6GXjSPkO\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"SbCS2rDax\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"Szj5qTmsw\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"dl2gibDbs\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"id\",type:\"Identifier\"}]});const query1=()=>({from:{alias:\"bvrLjb3a5\",data:Faq,type:\"Collection\"},orderBy:[{collection:\"bvrLjb3a5\",name:\"dl2gibDbs\",type:\"Identifier\"}],select:[{collection:\"bvrLjb3a5\",name:\"g6GXjSPkO\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"SbCS2rDax\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"Szj5qTmsw\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"dl2gibDbs\",type:\"Identifier\"},{collection:\"bvrLjb3a5\",name:\"id\",type:\"Identifier\"}]});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const query2=prequery=>prequery({from:{alias:\"qBX88atv1\",data:Posts,type:\"Collection\"},orderBy:[{collection:\"qBX88atv1\",name:\"wM5f1x0AJ\",type:\"Identifier\"}],select:[{collection:\"qBX88atv1\",name:\"lZnj8Q61Y\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"Reeb5th7P\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"fxpxVycML\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"cQ2vuHjRa\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"rLDKjBmFg\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"LR3IW3Pox\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"upfVbAi54\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"wM5f1x0AJ\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"MkSmpapl3\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"id\",type:\"Identifier\"}]});const query3=()=>({from:{alias:\"qBX88atv1\",data:Posts,type:\"Collection\"},orderBy:[{collection:\"qBX88atv1\",name:\"wM5f1x0AJ\",type:\"Identifier\"}],select:[{collection:\"qBX88atv1\",name:\"lZnj8Q61Y\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"Reeb5th7P\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"fxpxVycML\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"cQ2vuHjRa\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"rLDKjBmFg\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"LR3IW3Pox\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"upfVbAi54\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"wM5f1x0AJ\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"MkSmpapl3\",type:\"Identifier\"},{collection:\"qBX88atv1\",name:\"id\",type:\"Identifier\"}]});const query4=prequery=>prequery({from:{alias:\"y2DGpSdw4\",data:Reviews,type:\"Collection\"},orderBy:[{collection:\"y2DGpSdw4\",name:\"fcHkwxtpn\",type:\"Identifier\"}],select:[{collection:\"y2DGpSdw4\",name:\"kVumO8Xlm\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"SqZL5iLvT\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"KEznoO3Fc\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"oxQQHDFAK\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"vgzNzuqey\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"fcHkwxtpn\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"zzw49OXOh\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"id\",type:\"Identifier\"}]});const query5=()=>({from:{alias:\"y2DGpSdw4\",data:Reviews,type:\"Collection\"},orderBy:[{collection:\"y2DGpSdw4\",name:\"fcHkwxtpn\",type:\"Identifier\"}],select:[{collection:\"y2DGpSdw4\",name:\"kVumO8Xlm\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"SqZL5iLvT\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"KEznoO3Fc\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"oxQQHDFAK\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"vgzNzuqey\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"fcHkwxtpn\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"zzw49OXOh\",type:\"Identifier\"},{collection:\"y2DGpSdw4\",name:\"id\",type:\"Identifier\"}]});const query6=prequery=>prequery({from:{alias:\"vE95T4XbK\",data:Tools,type:\"Collection\"},orderBy:[{collection:\"vE95T4XbK\",name:\"c3HdyBcg5\",type:\"Identifier\"}],select:[{collection:\"vE95T4XbK\",name:\"xjea57bcD\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"mQenyEPWS\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"a6lR3XqN5\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"XbH7LhsY7\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"l3NSscRvY\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"RdjMxOibZ\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"wOqzwLTD3\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"c3HdyBcg5\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"qlrZJj4fP\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"id\",type:\"Identifier\"}]});const query7=()=>({from:{alias:\"vE95T4XbK\",data:Tools,type:\"Collection\"},orderBy:[{collection:\"vE95T4XbK\",name:\"c3HdyBcg5\",type:\"Identifier\"}],select:[{collection:\"vE95T4XbK\",name:\"xjea57bcD\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"mQenyEPWS\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"a6lR3XqN5\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"XbH7LhsY7\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"l3NSscRvY\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"RdjMxOibZ\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"wOqzwLTD3\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"c3HdyBcg5\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"qlrZJj4fP\",type:\"Identifier\"},{collection:\"vE95T4XbK\",name:\"id\",type:\"Identifier\"}]});const query8=prequery=>prequery({from:{alias:\"CIlNSWkfB\",data:Results,type:\"Collection\"},orderBy:[{collection:\"CIlNSWkfB\",name:\"KqT6nlT3Z\",type:\"Identifier\"}],select:[{collection:\"CIlNSWkfB\",name:\"wbhnYW8xM\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"Tm8yTLG6i\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"qwLI1FIec\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"kz9ggevxf\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"h0SXqliLK\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"Pb_HOaw2U\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"g7gwc7g2b\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"LqyhOcNv_\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"WAXVP4aWU\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"KqT6nlT3Z\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"S10ttArUA\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"id\",type:\"Identifier\"}]});const query9=()=>({from:{alias:\"CIlNSWkfB\",data:Results,type:\"Collection\"},orderBy:[{collection:\"CIlNSWkfB\",name:\"KqT6nlT3Z\",type:\"Identifier\"}],select:[{collection:\"CIlNSWkfB\",name:\"wbhnYW8xM\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"Tm8yTLG6i\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"qwLI1FIec\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"kz9ggevxf\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"h0SXqliLK\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"Pb_HOaw2U\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"g7gwc7g2b\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"LqyhOcNv_\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"WAXVP4aWU\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"KqT6nlT3Z\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"S10ttArUA\",type:\"Identifier\"},{collection:\"CIlNSWkfB\",name:\"id\",type:\"Identifier\"}]});const query10=prequery=>prequery({from:{alias:\"TrSKXiMp3\",data:Industries,type:\"Collection\"},orderBy:[{collection:\"TrSKXiMp3\",name:\"xxPo6fm2g\",type:\"Identifier\"}],select:[{collection:\"TrSKXiMp3\",name:\"mEcO12ZaE\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"T5PVy8Kfi\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"AVcRhP2OB\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"WO_0Al_y0\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"SGWnxg4Nt\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"xxPo6fm2g\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"CPLhsmRnu\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"id\",type:\"Identifier\"}]});const query11=()=>({from:{alias:\"TrSKXiMp3\",data:Industries,type:\"Collection\"},orderBy:[{collection:\"TrSKXiMp3\",name:\"xxPo6fm2g\",type:\"Identifier\"}],select:[{collection:\"TrSKXiMp3\",name:\"mEcO12ZaE\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"T5PVy8Kfi\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"AVcRhP2OB\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"WO_0Al_y0\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"SGWnxg4Nt\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"xxPo6fm2g\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"CPLhsmRnu\",type:\"Identifier\"},{collection:\"TrSKXiMp3\",name:\"id\",type:\"Identifier\"}]});const query12=prequery=>prequery({from:{alias:\"wtqz3QH0T\",data:Workflows,type:\"Collection\"},orderBy:[{collection:\"wtqz3QH0T\",name:\"ZsQmBaIxv\",type:\"Identifier\"}],select:[{collection:\"wtqz3QH0T\",name:\"iBrfsm01P\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"UGUQvxQOD\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"qRCxzocuJ\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"tL3HWwVTt\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"phTiIsGgg\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"vH8ugh5fv\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"s8JiwIyto\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"ZsQmBaIxv\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"YKtMc5XGv\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"id\",type:\"Identifier\"}]});const query13=()=>({from:{alias:\"wtqz3QH0T\",data:Workflows,type:\"Collection\"},orderBy:[{collection:\"wtqz3QH0T\",name:\"ZsQmBaIxv\",type:\"Identifier\"}],select:[{collection:\"wtqz3QH0T\",name:\"iBrfsm01P\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"UGUQvxQOD\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"qRCxzocuJ\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"tL3HWwVTt\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"phTiIsGgg\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"vH8ugh5fv\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"s8JiwIyto\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"ZsQmBaIxv\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"YKtMc5XGv\",type:\"Identifier\"},{collection:\"wtqz3QH0T\",name:\"id\",type:\"Identifier\"}]});const query14=prequery=>prequery({from:{alias:\"Hg0OkwSrn\",data:Site,type:\"Collection\"},select:[{collection:\"Hg0OkwSrn\",name:\"q1EtCgvA9\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"nbAOGR1su\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"S7Fsnls9J\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"O2TvkBDRw\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"rqaEHuFng\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"JsTvuJegV\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"API0fu97z\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"fWaTf2L6z\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"LEiNr67p_\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"Z0jl9I921\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"idH8wpcgB\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"YwyqBNuN0\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"id\",type:\"Identifier\"}]});const query15=()=>({from:{alias:\"Hg0OkwSrn\",data:Site,type:\"Collection\"},select:[{collection:\"Hg0OkwSrn\",name:\"q1EtCgvA9\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"nbAOGR1su\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"S7Fsnls9J\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"O2TvkBDRw\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"rqaEHuFng\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"JsTvuJegV\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"API0fu97z\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"fWaTf2L6z\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"LEiNr67p_\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"Z0jl9I921\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"idH8wpcgB\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"YwyqBNuN0\",type:\"Identifier\"},{collection:\"Hg0OkwSrn\",name:\"id\",type:\"Identifier\"}]});const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\".framer-83w5x.framer-21ejdl, .framer-83w5x .framer-21ejdl { display: block; }\",\".framer-83w5x.framer-tz13c6 { align-content: center; align-items: center; background-color: var(--token-97ad89d4-4ba7-47d2-8e3e-75642e6e84b7); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-83w5x .framer-54o8vj { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 0px; justify-content: flex-start; order: -1000; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-83w5x .framer-lxeu6l-container, .framer-83w5x .framer-1ifq7vs-container, .framer-83w5x .framer-1wur9ga-container { flex: none; height: 0px; position: relative; width: 100%; }\",\".framer-83w5x .framer-1jgpqsy { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 0px; justify-content: flex-start; order: -999; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-83w5x .framer-1fhtqmb { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -998; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-x0ph69, .framer-83w5x .framer-1i2orbf, .framer-83w5x .framer-zw8f47, .framer-83w5x .framer-17qduox, .framer-83w5x .framer-16c71y0, .framer-83w5x .framer-4uqaga, .framer-83w5x .framer-1vabvv9, .framer-83w5x .framer-ilo9rx { flex: none; height: 1px; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 1px; }\",\".framer-83w5x .framer-1jcs1v9-container, .framer-83w5x .framer-573rd3-container, .framer-83w5x .framer-1e6p93u-container, .framer-83w5x .framer-187swzk-container, .framer-83w5x .framer-1keyq0c-container, .framer-83w5x .framer-4476k4-container, .framer-83w5x .framer-1vu3svv-container, .framer-83w5x .framer-1bdp7q8-container { flex: none; height: 1px; left: calc(2.220446049250313e-14% - 1px / 2); position: absolute; top: calc(2.220446049250313e-14% - 1px / 2); width: 1px; }\",\".framer-83w5x .framer-s0q5mj { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -997; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-1r3oa90 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -996; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-1sfe97 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -995; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-aerxsj { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -994; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-23dugl { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -993; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-1cwpgmb { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -992; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-1xnue5z { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; left: 0px; order: -991; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-1jk9wiz-container { flex: none; height: 1px; left: 0px; order: -990; position: absolute; top: 0px; width: 1px; }\",\".framer-83w5x .framer-jlp1zp { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 0px; justify-content: flex-start; order: -989; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-83w5x .framer-jvv8s0 { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-83w5x .framer-4d2msd { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; order: 1013; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-83w5x .framer-1ixci8b-container { flex: none; height: auto; position: relative; width: 100%; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={JpqQA6b4L:\"(max-width: 809.98px)\",Uqt6obtQc:\"(min-width: 810px) and (max-width: 1199.98px)\",ZH90tasJA:\"(min-width: 1200px)\"};const humanReadableVariantMap={Desktop:\"ZH90tasJA\",Phone:\"JpqQA6b4L\",Tablet:\"Uqt6obtQc\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"ZH90tasJA\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"ZH90tasJA\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-97ad89d4-4ba7-47d2-8e3e-75642e6e84b7); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-tz13c6\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-54o8vj\",\"data-framer-name\":\"L RbHeader\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-lxeu6l-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"RbHeader\",isAuthoredByUser:true,name:\"RbHeader\",nodeId:\"REAr0XYiI\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{JpqQA6b4L:{bpHint:\"phone\"},Uqt6obtQc:{bpHint:\"tablet\"}},children:/*#__PURE__*/_jsx(RbHeader,{bodyFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:400},bone:\"var(--token-d59003dd-d4d2-4e1c-baac-87ffe322aad8)\",bpHint:\"desktop\",brass:\"var(--token-72d1df37-2dcf-45cb-8dff-eae9dda0f4aa)\",cloud:\"var(--token-b1603cb0-6ad1-4fa0-91c1-6b511472e88f)\",cta:\"Book a call\",customFonts:false,displayFont:{fontFamily:'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:600},fog:\"var(--token-2acd7bd6-c4a0-4148-81c9-6c808b25e147)\",height:\"100%\",hide:true,id:\"REAr0XYiI\",ink:\"var(--token-68cbe6af-9b0a-4a4c-9254-18ab5c3f9889)\",layoutId:\"REAr0XYiI\",links:\"Services:/workflows, Results:/results, Process:/process, Pricing:/pricing, About:/about\",menuNote:\"A 20-minute call \\xb7 No prep needed\",monoFont:{fontFamily:'\"JetBrains Mono\", \"JetBrains Mono Placeholder\", monospace',fontStyle:\"normal\",fontWeight:500},more:\"Industries:/industries, Tools:/tools, Insights:/insights, Careers:/careers, FAQ:/faq, Contact:/contact\",name:\"RbHeader\",night:\"var(--token-97ad89d4-4ba7-47d2-8e3e-75642e6e84b7)\",pine:\"var(--token-6b365b65-204c-4075-83ce-e17652c51c7e)\",stone:\"var(--token-3b967c1e-c29b-428e-af9b-bc04b03adbf0)\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",words:\"\"})})})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1jgpqsy\",\"data-framer-name\":\"L RbLoader\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ifq7vs-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"RbLoader\",isAuthoredByUser:true,name:\"RbLoader\",nodeId:\"x7yhbi_wi\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{JpqQA6b4L:{bpHint:\"phone\"},Uqt6obtQc:{bpHint:\"tablet\"}},children:/*#__PURE__*/_jsx(RbLoader,{bodyFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:400},bone:\"var(--token-d59003dd-d4d2-4e1c-baac-87ffe322aad8)\",bpHint:\"desktop\",brass:\"var(--token-72d1df37-2dcf-45cb-8dff-eae9dda0f4aa)\",clockFrom:\"02:14\",cloud:\"var(--token-b1603cb0-6ad1-4fa0-91c1-6b511472e88f)\",customFonts:false,displayFont:{fontFamily:'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:600},duration:2,fog:\"var(--token-2acd7bd6-c4a0-4148-81c9-6c808b25e147)\",height:\"100%\",id:\"x7yhbi_wi\",ink:\"var(--token-68cbe6af-9b0a-4a4c-9254-18ab5c3f9889)\",layoutId:\"x7yhbi_wi\",line:\"The night shift starts\",loader:true,monoFont:{fontFamily:'\"JetBrains Mono\", \"JetBrains Mono Placeholder\", monospace',fontStyle:\"normal\",fontWeight:500},name:\"RbLoader\",night:\"var(--token-97ad89d4-4ba7-47d2-8e3e-75642e6e84b7)\",once:true,pine:\"var(--token-6b365b65-204c-4075-83ce-e17652c51c7e)\",skipLabel:\"Skip\",stone:\"var(--token-3b967c1e-c29b-428e-af9b-bc04b03adbf0)\",style:{height:\"100%\",width:\"100%\"},tasks:\"1,284\",tasksWord:\"Tasks tonight\",ticks:6,transition:true,width:\"100%\",wordmark:\"\"})})})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1fhtqmb\",\"data-framer-name\":\"CMS Bridge \\xb7 faq\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query1(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({dl2gibDbs:dl2gibDbsbvrLjb3a5,g6GXjSPkO:g6GXjSPkObvrLjb3a5,id:idbvrLjb3a5,SbCS2rDax:SbCS2rDaxbvrLjb3a5,Szj5qTmsw:Szj5qTmswbvrLjb3a5},index)=>{g6GXjSPkObvrLjb3a5??=\"\";SbCS2rDaxbvrLjb3a5??=\"\";Szj5qTmswbvrLjb3a5??=\"\";dl2gibDbsbvrLjb3a5??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`bvrLjb3a5-${idbvrLjb3a5}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{g6GXjSPkO:g6GXjSPkObvrLjb3a5},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-x0ph69\",\"data-framer-name\":\"faq-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1jcs1v9-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"faq-row\",isAuthoredByUser:true,name:\"faq-row\",nodeId:\"XhMhrif2Z\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:SbCS2rDaxbvrLjb3a5,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:Szj5qTmswbvrLjb3a5,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:\"\",f4:\"\",f5:\"\",f6:\"\",f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"XhMhrif2Z\",kind:\"faq\",layoutId:\"XhMhrif2Z\",n1:dl2gibDbsbvrLjb3a5,n2:0,name:\"faq-row\",slug:g6GXjSPkObvrLjb3a5,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idbvrLjb3a5);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-s0q5mj\",\"data-framer-name\":\"CMS Bridge \\xb7 posts\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query3(),children:(collection1,paginationInfo1,loadMore1)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection1?.map(({cQ2vuHjRa:cQ2vuHjRaqBX88atv1,fxpxVycML:fxpxVycMLqBX88atv1,id:idqBX88atv1,LR3IW3Pox:LR3IW3PoxqBX88atv1,lZnj8Q61Y:lZnj8Q61YqBX88atv1,MkSmpapl3:MkSmpapl3qBX88atv1,Reeb5th7P:Reeb5th7PqBX88atv1,rLDKjBmFg:rLDKjBmFgqBX88atv1,upfVbAi54:upfVbAi54qBX88atv1,wM5f1x0AJ:wM5f1x0AJqBX88atv1},index1)=>{lZnj8Q61YqBX88atv1??=\"\";Reeb5th7PqBX88atv1??=\"\";fxpxVycMLqBX88atv1??=\"\";cQ2vuHjRaqBX88atv1??=\"\";rLDKjBmFgqBX88atv1??=\"\";LR3IW3PoxqBX88atv1??=\"\";upfVbAi54qBX88atv1??=\"\";wM5f1x0AJqBX88atv1??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`qBX88atv1-${idqBX88atv1}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{lZnj8Q61Y:lZnj8Q61YqBX88atv1},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-1i2orbf\",\"data-framer-name\":\"posts-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-573rd3-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"posts-row\",isAuthoredByUser:true,name:\"posts-row\",nodeId:\"cctXaVuJa\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:Reeb5th7PqBX88atv1,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:fxpxVycMLqBX88atv1,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:cQ2vuHjRaqBX88atv1,f4:rLDKjBmFgqBX88atv1,f5:LR3IW3PoxqBX88atv1,f6:upfVbAi54qBX88atv1,f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"cctXaVuJa\",img:toResponsiveImage(MkSmpapl3qBX88atv1),kind:\"posts\",layoutId:\"cctXaVuJa\",n1:wM5f1x0AJqBX88atv1,n2:0,name:\"posts-row\",slug:lZnj8Q61YqBX88atv1,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idqBX88atv1);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1r3oa90\",\"data-framer-name\":\"CMS Bridge \\xb7 reviews\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query5(),children:(collection2,paginationInfo2,loadMore2)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection2?.map(({fcHkwxtpn:fcHkwxtpny2DGpSdw4,id:idy2DGpSdw4,KEznoO3Fc:KEznoO3Fcy2DGpSdw4,kVumO8Xlm:kVumO8Xlmy2DGpSdw4,oxQQHDFAK:oxQQHDFAKy2DGpSdw4,SqZL5iLvT:SqZL5iLvTy2DGpSdw4,vgzNzuqey:vgzNzuqeyy2DGpSdw4,zzw49OXOh:zzw49OXOhy2DGpSdw4},index2)=>{kVumO8Xlmy2DGpSdw4??=\"\";SqZL5iLvTy2DGpSdw4??=\"\";KEznoO3Fcy2DGpSdw4??=\"\";oxQQHDFAKy2DGpSdw4??=\"\";vgzNzuqeyy2DGpSdw4??=\"\";fcHkwxtpny2DGpSdw4??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`y2DGpSdw4-${idy2DGpSdw4}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{kVumO8Xlm:kVumO8Xlmy2DGpSdw4},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-zw8f47\",\"data-framer-name\":\"reviews-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1e6p93u-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"reviews-row\",isAuthoredByUser:true,name:\"reviews-row\",nodeId:\"rPLC0Bei8\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:SqZL5iLvTy2DGpSdw4,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:KEznoO3Fcy2DGpSdw4,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:oxQQHDFAKy2DGpSdw4,f4:vgzNzuqeyy2DGpSdw4,f5:\"\",f6:\"\",f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"rPLC0Bei8\",img:toResponsiveImage(zzw49OXOhy2DGpSdw4),kind:\"reviews\",layoutId:\"rPLC0Bei8\",n1:fcHkwxtpny2DGpSdw4,n2:0,name:\"reviews-row\",slug:kVumO8Xlmy2DGpSdw4,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idy2DGpSdw4);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1sfe97\",\"data-framer-name\":\"CMS Bridge \\xb7 machines\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query7(),children:(collection3,paginationInfo3,loadMore3)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection3?.map(({a6lR3XqN5:a6lR3XqN5vE95T4XbK,c3HdyBcg5:c3HdyBcg5vE95T4XbK,id:idvE95T4XbK,l3NSscRvY:l3NSscRvYvE95T4XbK,mQenyEPWS:mQenyEPWSvE95T4XbK,qlrZJj4fP:qlrZJj4fPvE95T4XbK,RdjMxOibZ:RdjMxOibZvE95T4XbK,wOqzwLTD3:wOqzwLTD3vE95T4XbK,XbH7LhsY7:XbH7LhsY7vE95T4XbK,xjea57bcD:xjea57bcDvE95T4XbK},index3)=>{xjea57bcDvE95T4XbK??=\"\";mQenyEPWSvE95T4XbK??=\"\";a6lR3XqN5vE95T4XbK??=\"\";XbH7LhsY7vE95T4XbK??=\"\";l3NSscRvYvE95T4XbK??=\"\";RdjMxOibZvE95T4XbK??=\"\";wOqzwLTD3vE95T4XbK??=\"\";c3HdyBcg5vE95T4XbK??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`vE95T4XbK-${idvE95T4XbK}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{xjea57bcD:xjea57bcDvE95T4XbK},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-17qduox\",\"data-framer-name\":\"machines-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-187swzk-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"machines-row\",isAuthoredByUser:true,name:\"machines-row\",nodeId:\"FCWsQxtWM\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:mQenyEPWSvE95T4XbK,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:a6lR3XqN5vE95T4XbK,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:XbH7LhsY7vE95T4XbK,f4:l3NSscRvYvE95T4XbK,f5:RdjMxOibZvE95T4XbK,f6:wOqzwLTD3vE95T4XbK,f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"FCWsQxtWM\",img:toResponsiveImage(qlrZJj4fPvE95T4XbK),kind:\"machines\",layoutId:\"FCWsQxtWM\",n1:c3HdyBcg5vE95T4XbK,n2:0,name:\"machines-row\",slug:xjea57bcDvE95T4XbK,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idvE95T4XbK);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-aerxsj\",\"data-framer-name\":\"CMS Bridge \\xb7 cases\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query9(),children:(collection4,paginationInfo4,loadMore4)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection4?.map(({g7gwc7g2b:g7gwc7g2bCIlNSWkfB,h0SXqliLK:h0SXqliLKCIlNSWkfB,id:idCIlNSWkfB,KqT6nlT3Z:KqT6nlT3ZCIlNSWkfB,kz9ggevxf:kz9ggevxfCIlNSWkfB,LqyhOcNv_:LqyhOcNv_CIlNSWkfB,Pb_HOaw2U:Pb_HOaw2UCIlNSWkfB,qwLI1FIec:qwLI1FIecCIlNSWkfB,S10ttArUA:S10ttArUACIlNSWkfB,Tm8yTLG6i:Tm8yTLG6iCIlNSWkfB,WAXVP4aWU:WAXVP4aWUCIlNSWkfB,wbhnYW8xM:wbhnYW8xMCIlNSWkfB},index4)=>{wbhnYW8xMCIlNSWkfB??=\"\";Tm8yTLG6iCIlNSWkfB??=\"\";qwLI1FIecCIlNSWkfB??=\"\";kz9ggevxfCIlNSWkfB??=\"\";h0SXqliLKCIlNSWkfB??=\"\";Pb_HOaw2UCIlNSWkfB??=\"\";g7gwc7g2bCIlNSWkfB??=\"\";LqyhOcNv_CIlNSWkfB??=\"\";WAXVP4aWUCIlNSWkfB??=\"\";KqT6nlT3ZCIlNSWkfB??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`CIlNSWkfB-${idCIlNSWkfB}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{wbhnYW8xM:wbhnYW8xMCIlNSWkfB},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-16c71y0\",\"data-framer-name\":\"cases-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1keyq0c-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"cases-row\",isAuthoredByUser:true,name:\"cases-row\",nodeId:\"mATCc8RBe\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:Tm8yTLG6iCIlNSWkfB,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:qwLI1FIecCIlNSWkfB,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:kz9ggevxfCIlNSWkfB,f4:h0SXqliLKCIlNSWkfB,f5:Pb_HOaw2UCIlNSWkfB,f6:g7gwc7g2bCIlNSWkfB,f7:LqyhOcNv_CIlNSWkfB,f8:WAXVP4aWUCIlNSWkfB,f9:\"\",height:\"100%\",id:\"mATCc8RBe\",img:toResponsiveImage(S10ttArUACIlNSWkfB),kind:\"cases\",layoutId:\"mATCc8RBe\",n1:KqT6nlT3ZCIlNSWkfB,n2:0,name:\"cases-row\",slug:wbhnYW8xMCIlNSWkfB,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idCIlNSWkfB);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-23dugl\",\"data-framer-name\":\"CMS Bridge \\xb7 industries\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query11(),children:(collection5,paginationInfo5,loadMore5)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection5?.map(({AVcRhP2OB:AVcRhP2OBTrSKXiMp3,CPLhsmRnu:CPLhsmRnuTrSKXiMp3,id:idTrSKXiMp3,mEcO12ZaE:mEcO12ZaETrSKXiMp3,SGWnxg4Nt:SGWnxg4NtTrSKXiMp3,T5PVy8Kfi:T5PVy8KfiTrSKXiMp3,WO_0Al_y0:WO_0Al_y0TrSKXiMp3,xxPo6fm2g:xxPo6fm2gTrSKXiMp3},index5)=>{mEcO12ZaETrSKXiMp3??=\"\";T5PVy8KfiTrSKXiMp3??=\"\";AVcRhP2OBTrSKXiMp3??=\"\";WO_0Al_y0TrSKXiMp3??=\"\";SGWnxg4NtTrSKXiMp3??=\"\";xxPo6fm2gTrSKXiMp3??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`TrSKXiMp3-${idTrSKXiMp3}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{mEcO12ZaE:mEcO12ZaETrSKXiMp3},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-4uqaga\",\"data-framer-name\":\"industries-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-4476k4-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"industries-row\",isAuthoredByUser:true,name:\"industries-row\",nodeId:\"BTKn5bN9B\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:T5PVy8KfiTrSKXiMp3,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:AVcRhP2OBTrSKXiMp3,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:WO_0Al_y0TrSKXiMp3,f4:SGWnxg4NtTrSKXiMp3,f5:\"\",f6:\"\",f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"BTKn5bN9B\",img:toResponsiveImage(CPLhsmRnuTrSKXiMp3),kind:\"industries\",layoutId:\"BTKn5bN9B\",n1:xxPo6fm2gTrSKXiMp3,n2:0,name:\"industries-row\",slug:mEcO12ZaETrSKXiMp3,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idTrSKXiMp3);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1cwpgmb\",\"data-framer-name\":\"CMS Bridge \\xb7 services\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query13(),children:(collection6,paginationInfo6,loadMore6)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection6?.map(({iBrfsm01P:iBrfsm01Pwtqz3QH0T,id:idwtqz3QH0T,phTiIsGgg:phTiIsGggwtqz3QH0T,qRCxzocuJ:qRCxzocuJwtqz3QH0T,s8JiwIyto:s8JiwIytowtqz3QH0T,tL3HWwVTt:tL3HWwVTtwtqz3QH0T,UGUQvxQOD:UGUQvxQODwtqz3QH0T,vH8ugh5fv:vH8ugh5fvwtqz3QH0T,YKtMc5XGv:YKtMc5XGvwtqz3QH0T,ZsQmBaIxv:ZsQmBaIxvwtqz3QH0T},index6)=>{iBrfsm01Pwtqz3QH0T??=\"\";UGUQvxQODwtqz3QH0T??=\"\";qRCxzocuJwtqz3QH0T??=\"\";tL3HWwVTtwtqz3QH0T??=\"\";phTiIsGggwtqz3QH0T??=\"\";vH8ugh5fvwtqz3QH0T??=\"\";s8JiwIytowtqz3QH0T??=\"\";ZsQmBaIxvwtqz3QH0T??=0;return /*#__PURE__*/_jsx(LayoutGroup,{id:`wtqz3QH0T-${idwtqz3QH0T}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{iBrfsm01P:iBrfsm01Pwtqz3QH0T},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-1vabvv9\",\"data-framer-name\":\"services-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1vu3svv-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"services-row\",isAuthoredByUser:true,name:\"services-row\",nodeId:\"EvLzSutSn\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:UGUQvxQODwtqz3QH0T,f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:qRCxzocuJwtqz3QH0T,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:tL3HWwVTtwtqz3QH0T,f4:phTiIsGggwtqz3QH0T,f5:vH8ugh5fvwtqz3QH0T,f6:s8JiwIytowtqz3QH0T,f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"EvLzSutSn\",img:toResponsiveImage(YKtMc5XGvwtqz3QH0T),kind:\"services\",layoutId:\"EvLzSutSn\",n1:ZsQmBaIxvwtqz3QH0T,n2:0,name:\"services-row\",slug:iBrfsm01Pwtqz3QH0T,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idwtqz3QH0T);})});}})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1xnue5z\",\"data-framer-name\":\"CMS Bridge \\xb7 site\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query15(),children:(collection7,paginationInfo7,loadMore7)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection7?.map(({API0fu97z:API0fu97zHg0OkwSrn,fWaTf2L6z:fWaTf2L6zHg0OkwSrn,id:idHg0OkwSrn,idH8wpcgB:idH8wpcgBHg0OkwSrn,JsTvuJegV:JsTvuJegVHg0OkwSrn,LEiNr67p_:LEiNr67p_Hg0OkwSrn,nbAOGR1su:nbAOGR1suHg0OkwSrn,O2TvkBDRw:O2TvkBDRwHg0OkwSrn,q1EtCgvA9:q1EtCgvA9Hg0OkwSrn,rqaEHuFng:rqaEHuFngHg0OkwSrn,S7Fsnls9J:S7Fsnls9JHg0OkwSrn,YwyqBNuN0:YwyqBNuN0Hg0OkwSrn,Z0jl9I921:Z0jl9I921Hg0OkwSrn},index7)=>{q1EtCgvA9Hg0OkwSrn??=\"\";nbAOGR1suHg0OkwSrn??=\"\";S7Fsnls9JHg0OkwSrn??=\"\";O2TvkBDRwHg0OkwSrn??=\"\";rqaEHuFngHg0OkwSrn??=\"\";JsTvuJegVHg0OkwSrn??=\"\";API0fu97zHg0OkwSrn??=\"\";fWaTf2L6zHg0OkwSrn??=\"\";LEiNr67p_Hg0OkwSrn??=\"\";Z0jl9I921Hg0OkwSrn??=\"\";idH8wpcgBHg0OkwSrn??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`Hg0OkwSrn-${idHg0OkwSrn}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{q1EtCgvA9:q1EtCgvA9Hg0OkwSrn},children:/*#__PURE__*/_jsx(\"div\",{className:\"framer-ilo9rx\",\"data-framer-name\":\"site-item\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1bdp7q8-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"site-row\",isAuthoredByUser:true,name:\"site-row\",nodeId:\"EhF7BUCIr\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:nbAOGR1suHg0OkwSrn,f10:idH8wpcgBHg0OkwSrn,f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:S7Fsnls9JHg0OkwSrn,f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:O2TvkBDRwHg0OkwSrn,f4:rqaEHuFngHg0OkwSrn,f5:JsTvuJegVHg0OkwSrn,f6:API0fu97zHg0OkwSrn,f7:fWaTf2L6zHg0OkwSrn,f8:LEiNr67p_Hg0OkwSrn,f9:Z0jl9I921Hg0OkwSrn,height:\"100%\",id:\"EhF7BUCIr\",img:toResponsiveImage(YwyqBNuN0Hg0OkwSrn),kind:\"site\",layoutId:\"EhF7BUCIr\",n1:0,n2:0,name:\"site-row\",slug:q1EtCgvA9Hg0OkwSrn,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})},idHg0OkwSrn);})});}})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1jk9wiz-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"CMS Bridge \\xb7 marker\",isAuthoredByUser:true,name:\"CMS Bridge \\xb7 marker\",nodeId:\"AxPsgaGjz\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbCmsRow,{f1:\"\",f10:\"\",f11:\"\",f12:\"\",f13:\"\",f14:\"\",f15:\"\",f16:\"\",f17:\"\",f18:\"\",f19:\"\",f2:\"\",f20:\"\",f21:\"\",f22:\"\",f23:\"\",f24:\"\",f25:\"\",f26:\"\",f27:\"\",f28:\"\",f3:\"\",f4:\"\",f5:\"\",f6:\"\",f7:\"\",f8:\"\",f9:\"\",height:\"100%\",id:\"AxPsgaGjz\",kind:\"bridge\",layoutId:\"AxPsgaGjz\",n1:0,n2:0,name:\"CMS Bridge \\xb7 marker\",slug:\"\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-jlp1zp\",\"data-framer-name\":\"L RbSmooth\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1wur9ga-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"RbSmooth\",isAuthoredByUser:true,name:\"RbSmooth\",nodeId:\"L6Ey6izfV\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(RbSmooth,{anchorOffset:72,height:\"100%\",id:\"L6Ey6izfV\",layoutId:\"L6Ey6izfV\",name:\"RbSmooth\",smoothness:.1,style:{height:\"100%\",width:\"100%\"},wheelSpeed:1,width:\"100%\"})})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-jvv8s0\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-4d2msd\",\"data-framer-name\":\"L RbFooter\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ixci8b-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"RbFooter\",isAuthoredByUser:true,name:\"RbFooter\",nodeId:\"J252UY24Z\",scopeId:\"yQiAzaYaH\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{JpqQA6b4L:{bpHint:\"phone\"},Uqt6obtQc:{bpHint:\"tablet\"}},children:/*#__PURE__*/_jsx(RbFooter,{address:\"London \\xb7 remote-first\",bar:false,bodyFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:400},bone:\"var(--token-d59003dd-d4d2-4e1c-baac-87ffe322aad8)\",bpHint:\"desktop\",brass:\"var(--token-72d1df37-2dcf-45cb-8dff-eae9dda0f4aa)\",button:\"Book a call\",city:\"London\",closing:\"Runs on Zapier \\xb7 Make \\xb7 n8n \\xb7 custom agents\",cloud:\"var(--token-b1603cb0-6ad1-4fa0-91c1-6b511472e88f)\",col1:\"Agency\",col2:\"Company\",col3:\"Contact\",curtain:true,customFonts:false,displayFont:{fontFamily:'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',fontStyle:\"normal\",fontWeight:600},focusX:50,focusY:50,fog:\"var(--token-2acd7bd6-c4a0-4148-81c9-6c808b25e147)\",height:\"100%\",homeLabel:\"home\",id:\"J252UY24Z\",ink:\"var(--token-68cbe6af-9b0a-4a4c-9254-18ab5c3f9889)\",layoutId:\"J252UY24Z\",legalLine:\"\",legalLinks:\"Privacy:/privacy, Terms:/terms, Cookies:/cookies\",line:\"Your business,|*running itself.*\",links1:\"Workflows:/workflows, Industries:/industries, Results:/results, Tools:/tools, Process:/process\",links2:\"About:/about, Insights:/insights, Contact:/contact\",monoFont:{fontFamily:'\"JetBrains Mono\", \"JetBrains Mono Placeholder\", monospace',fontStyle:\"normal\",fontWeight:500},name:\"RbFooter\",navLabel:\"Footer\",night:\"var(--token-97ad89d4-4ba7-47d2-8e3e-75642e6e84b7)\",pictureAlt:\"\",pine:\"var(--token-6b365b65-204c-4075-83ce-e17652c51c7e)\",running:\"3 workflows running\",showEmail:true,showPicture:true,socials:\"LinkedIn:https://www.linkedin.com/, X:https://x.com/, YouTube:https://www.youtube.com/\",stone:\"var(--token-3b967c1e-c29b-428e-af9b-bc04b03adbf0)\",style:{width:\"100%\"},tz:\"Europe/London\",width:\"100%\",wordmark:\"\"})})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query16=mediaQueries[key];return`@media ${query16} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=breakpointRules[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"Uqt6obtQc\":{\"layout\":[\"fixed\",\"fixed\"]},\"JpqQA6b4L\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"ZH90tasJA\":[\".framer-54o8vj\",\".framer-1jgpqsy\",\".framer-1fhtqmb\",\".framer-s0q5mj\",\".framer-1r3oa90\",\".framer-1sfe97\",\".framer-aerxsj\",\".framer-23dugl\",\".framer-1cwpgmb\",\".framer-1xnue5z\",\".framer-1jk9wiz-container\",\".framer-jlp1zp\",\".framer-4d2msd\"],\"Uqt6obtQc\":[\".framer-54o8vj\",\".framer-1jgpqsy\",\".framer-1fhtqmb\",\".framer-s0q5mj\",\".framer-1r3oa90\",\".framer-1sfe97\",\".framer-aerxsj\",\".framer-23dugl\",\".framer-1cwpgmb\",\".framer-1xnue5z\",\".framer-1jk9wiz-container\",\".framer-jlp1zp\",\".framer-4d2msd\"],\"JpqQA6b4L\":[\".framer-54o8vj\",\".framer-1jgpqsy\",\".framer-1fhtqmb\",\".framer-s0q5mj\",\".framer-1r3oa90\",\".framer-1sfe97\",\".framer-aerxsj\",\".framer-23dugl\",\".framer-1cwpgmb\",\".framer-1xnue5z\",\".framer-1jk9wiz-container\",\".framer-jlp1zp\",\".framer-4d2msd\"]}\n * @framerBreakpoints {\"ZH90tasJA\":{\"min\":1200,\"canvasClassName\":\"framer-tz13c6-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"Uqt6obtQc\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-1l244tq-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"JpqQA6b4L\":{\"max\":809,\"canvasClassName\":\"framer-q4fdnn-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant ZH90tasJA\n * @framerLayoutTemplate true\n */const FrameryQiAzaYaH=withCSS(Component,css,\"framer-83w5x\");export default FrameryQiAzaYaH;FrameryQiAzaYaH.displayName=\"Site Layout\";FrameryQiAzaYaH.defaultProps={height:1e3,width:1200};addFonts(FrameryQiAzaYaH,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter Tight\",source:\"google\",style:\"normal\",uiFamilyName:\"Inter Tight\",url:\"https://fonts.gstatic.com/s/intertight/v9/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj0QiqWSRToK8EPg.woff2\",weight:\"600\"},{cssFamilyName:\"Inter\",source:\"google\",style:\"normal\",uiFamilyName:\"Inter\",url:\"https://fonts.gstatic.com/s/inter/v20/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfMZ1rib2Bg-4.woff2\",weight:\"400\"},{cssFamilyName:\"JetBrains Mono\",source:\"google\",style:\"normal\",uiFamilyName:\"JetBrains Mono\",url:\"https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8-qxjOFmUsaaDhw.woff2\",weight:\"500\"}]},...RbHeaderFonts,...RbLoaderFonts,...RbCmsRowFonts,...RbSmoothFonts,...RbFooterFonts],{supportsExplicitInterCodegen:true});FrameryQiAzaYaH.loader={load:(props,context)=>{const locale=context.locale;const priority=context.priority;const queryCacheEntry=queryCache.get(query1(),locale,priority);const queryCacheEntry1=queryCache.get(query3(),locale,priority);const queryCacheEntry2=queryCache.get(query5(),locale,priority);const queryCacheEntry3=queryCache.get(query7(),locale,priority);const queryCacheEntry4=queryCache.get(query9(),locale,priority);const queryCacheEntry5=queryCache.get(query11(),locale,priority);const queryCacheEntry6=queryCache.get(query13(),locale,priority);const queryCacheEntry7=queryCache.get(query15(),locale,priority);return runTasksWithYield([()=>queryCacheEntry.preload(),()=>queryCacheEntry1.preload(),()=>queryCacheEntry2.preload(),()=>queryCacheEntry3.preload(),()=>queryCacheEntry4.preload(),()=>queryCacheEntry5.preload(),()=>queryCacheEntry6.preload(),()=>queryCacheEntry7.preload()],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameryQiAzaYaH\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerHitTargets\":\"{\\\"ZH90tasJA\\\":[\\\".framer-54o8vj\\\",\\\".framer-1jgpqsy\\\",\\\".framer-1fhtqmb\\\",\\\".framer-s0q5mj\\\",\\\".framer-1r3oa90\\\",\\\".framer-1sfe97\\\",\\\".framer-aerxsj\\\",\\\".framer-23dugl\\\",\\\".framer-1cwpgmb\\\",\\\".framer-1xnue5z\\\",\\\".framer-1jk9wiz-container\\\",\\\".framer-jlp1zp\\\",\\\".framer-4d2msd\\\"],\\\"Uqt6obtQc\\\":[\\\".framer-54o8vj\\\",\\\".framer-1jgpqsy\\\",\\\".framer-1fhtqmb\\\",\\\".framer-s0q5mj\\\",\\\".framer-1r3oa90\\\",\\\".framer-1sfe97\\\",\\\".framer-aerxsj\\\",\\\".framer-23dugl\\\",\\\".framer-1cwpgmb\\\",\\\".framer-1xnue5z\\\",\\\".framer-1jk9wiz-container\\\",\\\".framer-jlp1zp\\\",\\\".framer-4d2msd\\\"],\\\"JpqQA6b4L\\\":[\\\".framer-54o8vj\\\",\\\".framer-1jgpqsy\\\",\\\".framer-1fhtqmb\\\",\\\".framer-s0q5mj\\\",\\\".framer-1r3oa90\\\",\\\".framer-1sfe97\\\",\\\".framer-aerxsj\\\",\\\".framer-23dugl\\\",\\\".framer-1cwpgmb\\\",\\\".framer-1xnue5z\\\",\\\".framer-1jk9wiz-container\\\",\\\".framer-jlp1zp\\\",\\\".framer-4d2msd\\\"]}\",\"framerDisplayContentsDiv\":\"false\",\"framerLayoutTemplate\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Uqt6obtQc\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"JpqQA6b4L\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerBreakpoints\":\"{\\\"ZH90tasJA\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-tz13c6-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"Uqt6obtQc\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-1l244tq-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"JpqQA6b4L\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-q4fdnn-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerDefaultVariant\":\"ZH90tasJA\",\"framerIntrinsicHeight\":\"1000\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport SiteLayout from \"https://framerusercontent.com/modules/j6mWQXlEHTa4PoMfjZHb/8dDfIoyCR3heaAZUrWez/yQiAzaYaH.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xlt0q5RoRLdaCLLDDnQ7/jqlnyds8XhPuj1FRlSie/augiA20Il.js\")), path: \"/\"}, FlGn6z7VX: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/MdXwAsG6emlwsPPtn62p/8IbqoQxfIFKJ4xivJIo6/FlGn6z7VX.js\")), path: \"/workflows\"}, LRCHVdmLI: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/2oHPbJE3cQHna2nbgCLy/ci4SEiSHV8852HxbMA4j/LRCHVdmLI.js\")), path: \"/industries\"}, jI3_SCuVb: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/O8IiPllUIRFviRiOCGNZ/IQYddNZ6luoI4Umbr3WZ/jI3_SCuVb.js\")), path: \"/results\"}, ad8pruhU8: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/MVN4KkqGaTyEljoSpO1x/obOubw20NCm1NUcC53uP/ad8pruhU8.js\")), path: \"/tools\"}, mWmTAo19p: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/K8HlgRAp8L1yTeX9j9vp/yfDNIBfCQE2h1yySFKHi/mWmTAo19p.js\")), path: \"/pricing\"}, DhzZqlmYN: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/8fVqDwqP5bXf2PwM3czb/0ucIG3TEAA7eadakw2ct/DhzZqlmYN.js\")), path: \"/process\"}, lTT32S8Dk: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/1qqaBbFe9AuwlupIBaka/97ZN2JheDvQNcNUOBFbJ/lTT32S8Dk.js\")), path: \"/about\"}, hos7zbhlw: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/24sVwaynanpikZsWPQAQ/K55ZOxzMSj3TtvDNySt4/hos7zbhlw.js\")), path: \"/careers\"}, o003RXQpI: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/3HNaeSqtpAvPXuUtOutj/sFqAXWFbL1R47avDkGNS/o003RXQpI.js\")), path: \"/insights\"}, tZv8Fz55V: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/O3FqBbbqbODK0loBIba7/zaTf7RySsjb5PGgNrmlQ/tZv8Fz55V.js\")), path: \"/faq\"}, xsh2Bm5F1: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/R0g5vNo6CmcoQonNrMou/4J6qKvIJsVheX2C3wm8c/xsh2Bm5F1.js\")), path: \"/book\"}, NuDpVYcB9: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xbQvXQdb4mCh2uAnQHvQ/jRPYtaiAuaiuTQrDRs3H/NuDpVYcB9.js\")), path: \"/contact\"}, C2ZxoXOVC: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/stXhYVuOjqwEYXd9yOWn/lTWmthJoV68RNOxU9oLv/C2ZxoXOVC.js\")), path: \"/thanks\"}, URDYAQMBB: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Ru3z6DekBkfeyqlM1L43/6Rjrvol5XuzKqcpL6sQw/URDYAQMBB.js\")), path: \"/privacy\"}, NfPABYrsZ: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vPrzIMkoRRZzCRICXDeg/f9okvF4BF3w7OMWGCj7X/NfPABYrsZ.js\")), path: \"/terms\"}, VuKOrT3LI: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/LCDiFSZTq9YtjmvL5Vop/CJUxGje7CS65Aeac8oPV/VuKOrT3LI.js\")), path: \"/cookies\"}, h7MLQ9Kd0: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/F8axhgsXihDGtadxtvXM/qR70K9xjxQbbWzmoN5Hu/h7MLQ9Kd0.js\")), path: \"/404\"}, nqSHFVA3A: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/iglch4wgcAICwUYYpDTA/ttJjSPFHE9EpQwBjOakC/nqSHFVA3A.js\")), path: \"/start-here\"}, X6yTGiCRU: {collectionId: \"sm0q1oIkH\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/HW6r2OSjUL6Oj171SdNA/lbI7qSWKbecif2k6eSQ4/X6yTGiCRU.js\")), path: \"/workflows/:iBrfsm01P\"}, t1Xz4tpTO: {collectionId: \"f7aZL1mDQ\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Uo1bdCaq8VULXMsMJOU8/bHuieYqAK5MlwEeMcjac/t1Xz4tpTO.js\")), path: \"/results/:wbhnYW8xM\"}, fm4myqvC1: {collectionId: \"CceZOhjx3\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Ecs0ULqQlkO2xLGHZ0CO/xp3YmoysVeZ7MW6i7HR1/fm4myqvC1.js\")), path: \"/insights/:lZnj8Q61Y\"}}\r\n\r\n\t\tconst locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {CceZOhjx3: async () => (await import(\"https://framerusercontent.com/modules/8rl0Uf91nnimCBgbOMTH/Waf7TfsnwIkSpJtc0qPR/CceZOhjx3.js\"))?.[\"utils\"], f7aZL1mDQ: async () => (await import(\"https://framerusercontent.com/modules/jtcuelWZgKNSIzWzIlLF/Q8XEJkHFqlOw6sz3CWUa/f7aZL1mDQ.js\"))?.[\"utils\"], sm0q1oIkH: async () => (await import(\"https://framerusercontent.com/modules/cqOwLdqvQfvTCYWXf2Cf/Te5rqGhBIojRXMz5pQQM/sm0q1oIkH.js\"))?.[\"utils\"]}\r\n\t\tconst serverDatabaseClient = undefined\r\n\t\tconst framerSiteId = \"cd2a98f6a42204f9d0b50caa11bfe3f1fe75c9d88fde6bcf09c229a3787e863e\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"FlGn6z7VX\":\r\ncase \"LRCHVdmLI\":\r\ncase \"jI3_SCuVb\":\r\ncase \"ad8pruhU8\":\r\ncase \"mWmTAo19p\":\r\ncase \"DhzZqlmYN\":\r\ncase \"lTT32S8Dk\":\r\ncase \"hos7zbhlw\":\r\ncase \"o003RXQpI\":\r\ncase \"tZv8Fz55V\":\r\ncase \"xsh2Bm5F1\":\r\ncase \"NuDpVYcB9\":\r\ncase \"C2ZxoXOVC\":\r\ncase \"URDYAQMBB\":\r\ncase \"NfPABYrsZ\":\r\ncase \"VuKOrT3LI\":\r\ncase \"h7MLQ9Kd0\":\r\ncase \"X6yTGiCRU\":\r\ncase \"t1Xz4tpTO\":\r\ncase \"fm4myqvC1\":\r\nreturn React.createElement(SiteLayout, {...props, key: \"SiteLayout\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"FlGn6z7VX\":\r\ncase \"LRCHVdmLI\":\r\ncase \"jI3_SCuVb\":\r\ncase \"ad8pruhU8\":\r\ncase \"mWmTAo19p\":\r\ncase \"DhzZqlmYN\":\r\ncase \"lTT32S8Dk\":\r\ncase \"hos7zbhlw\":\r\ncase \"o003RXQpI\":\r\ncase \"tZv8Fz55V\":\r\ncase \"xsh2Bm5F1\":\r\ncase \"NuDpVYcB9\":\r\ncase \"C2ZxoXOVC\":\r\ncase \"URDYAQMBB\":\r\ncase \"NfPABYrsZ\":\r\ncase \"VuKOrT3LI\":\r\ncase \"h7MLQ9Kd0\":\r\ncase \"X6yTGiCRU\":\r\ncase \"t1Xz4tpTO\":\r\ncase \"fm4myqvC1\":\r\nreturn [{hash: \"tz13c6\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"1l244tq\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"q4fdnn\", mediaQuery: \"(max-width: 809.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\t\r\n\t\t\r\n\r\n\t\texport async function getPageRoot({\r\n\t\t\trouteId,\r\n\t\t\tpathVariables,\r\n\t\t\tcanonicalPathVariables,\r\n\t\t\tlocaleId,\r\n\t\t\tcollectionItemId,\r\n\t\t\tcontentLocaleId,\r\n\t\t\tshouldResolveInitialRouteContentState = false,\r\n\t\t}) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\t\r\n\r\n\t\t\tFramer.setLibraryFeatures({checkServerSideRouter: true, disableCustomCode: false, disableHoverOnMobile: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, onPageRichTextBlockSelection: true, scrollRestoration: true, synchronousNavigationOnDesktop: false, yieldOnTap: false})\r\n\t\t\tFramer.setCurrentSiteId(framerSiteId)\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcanonicalPathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tserverDatabaseClient,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/F8axhgsXihDGtadxtvXM/qR70K9xjxQbbWzmoN5Hu/h7MLQ9Kd0.js\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://miraculous-beet-889424.framer.app\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: true,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/3M5j9K7ds1x6UZfnNsWm/YzPo7wQpSayskr2tU2H6/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t\tinitialContentLocaleIdOverride: contentLocaleId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: content\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\t\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\t// Note: HTTPArchive also uses this function to detect Framer sites; see https://github.com/HTTPArchive/wappalyzer/blob/371a17583f74fd9171b9077f59a5619b24062891/src/technologies/f.json#L1722-L1748.\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, contentLocaleId, pathVariables, canonicalPathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tcontentLocaleId = routeData.contentLocaleId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tcanonicalPathVariables = routeData.canonicalPathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRoute = performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tcontentLocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcanonicalPathVariables,\r\n\t\t\t\t\tcollectionItemId: shouldHydrate ? routeData?.collectionItemId : undefined,\r\n\t\t\t\t\tshouldResolveInitialRouteContentState: !shouldHydrate,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\t\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\tconst utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\tconst [slug] = Object.values(pathVariables)\r\n\t\t\tif (utils && typeof slug === \"string\") {\r\n\t\t\t\tcollectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tFramer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t\t;(function () {\r\n\t\t\tif (!isBrowser) return\r\n\r\n\t\t\tReact.startTransition(() => {\r\n\t\t\t\tReactDOM.hydrateRoot(\r\n\t\t\t\t\tdocument.getElementById(\"__framer-badge-container\"),\r\n\t\t\t\t\tReact.createElement(React.Suspense, {}, React.createElement(React.lazy(() => import(\"__framer-badge\"))))\r\n\t\t\t\t)\r\n\t\t\t})\r\n\t\t})()\r\n\t"],"mappings":"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"}