{"version":3,"file":"script_main.BAfIFj35.mjs","names":["useState","useRef","clamp","STYLE_ID","css","WATCHDOG_MS","_Fragment","useMemo","clamp","useRef","useRef","clamp","React.useState","React.useRef","_Fragment","React.useEffect","React.useLayoutEffect","useState","useRef","STYLE_ID","css","css","useRef","useRef","React.useId","Image1","RichText","React.Fragment","React.createElement","LendlyXLiquidSiteShell","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"],"sources":["https:/framerusercontent.com/modules/36WD90Y5gBRfN0HpSj45/mSdLhjglh69VIiDgOMSk/ArrivalSequence.js","https:/framerusercontent.com/modules/zykUudcBp7eRWtm75SXJ/IlURgX4gZaQZ1OlvVh87/BlueprintHouse.js","https:/framerusercontent.com/modules/FMGoj6GN4fcOn0AUde3r/cUExUqtgjpLlQm4ogtiJ/HiddenMoments_1.js","https:/framerusercontent.com/modules/OGdbo3K0bBWKRJwgMEBy/Sg6bQ95TWHpS5VgturuT/LiquidNavigationRouted.js","https:/framerusercontent.com/modules/hku75CVRHkLhHR322kXO/781D2mFBAHBiONerL0nd/PageTransition.js","https:/framerusercontent.com/modules/NyFaRxMZ2R39qqXIiWy6/nmtPPgOwIr29vkRgrNXx/PresenceField.js","https:/framerusercontent.com/modules/G7JF3k4xXigTGYNEkmMe/ucqVpr8JekxEmiaFNrun/ScrollMomentum.js","https:/framerusercontent.com/modules/rphnrBcsfCUTrotcj3aR/8OlJFb5TWQscOVw1KkCf/ScrollProgress.js","https:/framerusercontent.com/modules/TAbExX9jX3iqjaMlbjmY/RB4ZTyl0OLMuH2cQSuhL/m_6fyqzCO.js","framer:toplevel/main"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// The reverse wordmark — white type, green mark. The nav uses the dark-ink\n// variant because it sits on a white pill; this field is dark, so it needs the\n// same asset the footer uses on its dark ground.\nconst DEFAULT_LOGO={src:\"https://framerusercontent.com/images/p41Te6lZNdZ4fw3MSSs7wTAHVI.svg\",alt:\"LendlyX\"};const ROOT=\"lx-arrival\";const STYLE_ID=\"lx-arrival-css\";const GATE_ID=\"lx-arrival-session-gate\";const SESSION_KEY=\"lx:arrival:v1\";// Must fire before FlowChoreography's own HARD_FALLBACK_MS (4200), so that in\n// any pathological case the curtain is never the last thing left standing.\nconst WATCHDOG_MS=3400;const clamp=(value,min,max)=>Math.min(max,Math.max(min,value));// The settle curve. Fast out of the gate, long tail — reads as something\n// coming to rest rather than something stopping.\nconst SETTLE=\"cubic-bezier(.16,.84,.24,1)\";// The lift curve. Slight anticipation, then away.\nconst LIFT=\"cubic-bezier(.55,.06,.24,1)\";const css=`\n@keyframes lx-arrival-resolve {\n    from { opacity: 0; transform: translate3d(0, 14px, 0) scale(1.045); filter: blur(10px); }\n    60%  { opacity: 1; }\n    to   { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0px); }\n}\n\n@keyframes lx-arrival-draw {\n    from { transform: scaleX(0); opacity: 0; }\n    22%  { opacity: 1; }\n    to   { transform: scaleX(1); opacity: 1; }\n}\n\n@keyframes lx-arrival-tick {\n    from { opacity: 0; transform: translate3d(0, -50%, 0) scale(.2); }\n    70%  { opacity: 1; transform: translate3d(0, -50%, 0) scale(1.5); }\n    to   { opacity: 1; transform: translate3d(0, -50%, 0) scale(1); }\n}\n\n@keyframes lx-arrival-status {\n    from { opacity: 0; transform: translate3d(0, 6px, 0); }\n    to   { opacity: .58; transform: translate3d(0, 0, 0); }\n}\n\n/* --- the ink mass ------------------------------------------------------- */\n\n.${ROOT} {\n    position: fixed;\n    inset: 0;\n    z-index: 2147483000;\n    overflow: hidden;\n    isolation: isolate;\n    contain: layout paint;\n    font-family: \"DM Sans\", Inter, system-ui, sans-serif;\n}\n\n.${ROOT}[data-phase=\"entering\"] { pointer-events: auto; }\n.${ROOT}[data-phase=\"exiting\"]  { pointer-events: none; }\n\n.${ROOT}-field {\n    position: absolute;\n    inset: 0;\n    transform: translate3d(0, 0, 0) scale(1);\n    opacity: 1;\n}\n\n.${ROOT}[data-phase=\"entering\"] .${ROOT}-field { will-change: transform, opacity; }\n\n.${ROOT}[data-phase=\"exiting\"] .${ROOT}-field {\n    will-change: transform, opacity;\n    opacity: 0;\n    transform: translate3d(0, -3%, 0) scale(1.035);\n    transition:\n        opacity var(--lx-lift) ${LIFT} calc(var(--lx-lift) * .18),\n        transform var(--lx-lift) ${LIFT};\n}\n\n/* Grain sits on the field so it lifts with it. Static — never animated. */\n.${ROOT}-grain {\n    position: absolute;\n    inset: 0;\n    opacity: .26;\n    mix-blend-mode: soft-light;\n    background-image:\n        radial-gradient(circle at 20% 20%, rgba(255,255,255,.16) 0 1px, transparent 1.4px),\n        radial-gradient(circle at 80% 65%, rgba(255,255,255,.10) 0 1px, transparent 1.5px);\n    background-size: 43px 43px, 61px 61px;\n}\n\n/* --- the stage: wordmark + rule ----------------------------------------- */\n\n.${ROOT}-stage {\n    position: absolute;\n    inset: 0;\n    display: grid;\n    place-items: center;\n    padding: 24px;\n}\n\n.${ROOT}-cluster {\n    position: relative;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 26px;\n    width: min(88vw, 420px);\n}\n\n/* Entrance and exit are deliberately split across two elements. Removing a\n   CSS animation and starting a transition on the same property of the same\n   element in one frame is unreliable — the transition can snap. The inner\n   element owns the entrance animation and is never touched again; the outer\n   element owns only the exit transition, starting from a clean base. */\n.${ROOT}-mark {\n    display: block;\n    transform-origin: 50% 50%;\n    animation: lx-arrival-resolve 520ms ${SETTLE} 60ms both;\n}\n\n.${ROOT}[data-phase=\"entering\"] .${ROOT}-mark { will-change: transform, opacity, filter; }\n\n.${ROOT}-travel { display: block; transform-origin: 50% 50%; }\n\n/* The travel. Values are measured from the live nav logo at handoff time and\n   written to these custom properties, so the mark lands on the real UI. */\n.${ROOT}[data-phase=\"exiting\"] .${ROOT}-travel {\n    will-change: transform, opacity;\n    opacity: 0;\n    transform:\n        translate3d(var(--lx-travel-x, 0px), var(--lx-travel-y, -14px), 0)\n        scale(var(--lx-travel-s, .96));\n    /* Fades late and travels the whole way, so it is still faintly present as\n       it converges on the live nav logo. */\n    transition:\n        transform var(--lx-lift) ${LIFT},\n        opacity calc(var(--lx-lift) * .8) linear calc(var(--lx-lift) * .2);\n}\n\n.${ROOT}-logo {\n    display: block;\n    width: 228px;\n    max-width: 100%;\n    height: auto;\n    object-fit: contain;\n}\n\n.${ROOT}-rail {\n    position: relative;\n    width: 100%;\n    height: 1px;\n    background: rgba(255,255,255,.10);\n    overflow: visible;\n}\n\n.${ROOT}-rule {\n    position: absolute;\n    inset: 0;\n    transform-origin: 50% 50%;\n    animation: lx-arrival-draw 560ms ${SETTLE} 200ms both;\n}\n\n.${ROOT}[data-phase=\"entering\"] .${ROOT}-rule { will-change: transform, opacity; }\n\n.${ROOT}-node {\n    position: absolute;\n    top: 50%;\n    right: -3px;\n    width: 6px;\n    height: 6px;\n    border-radius: 999px;\n    animation: lx-arrival-tick 420ms ${SETTLE} 620ms both;\n}\n\n.${ROOT}-status {\n    font-size: 9px;\n    font-weight: 600;\n    letter-spacing: .22em;\n    line-height: 1.2;\n    text-transform: uppercase;\n    text-align: center;\n    color: rgba(255,255,255,.86);\n    animation: lx-arrival-status 420ms ${SETTLE} 300ms both;\n}\n\n/* Rule and status leave together, ahead of the field, while the mark travels\n   on its own path. Same split as the mark: this wrapper only ever transitions,\n   its children only ever animate. */\n.${ROOT}-outro {\n    width: 100%;\n    display: flex;\n    flex-direction: column;\n    gap: 11px;\n}\n\n.${ROOT}[data-phase=\"exiting\"] .${ROOT}-outro {\n    will-change: transform, opacity;\n    opacity: 0;\n    transform: translate3d(0, -10px, 0);\n    transition:\n        opacity calc(var(--lx-lift) * .38) linear,\n        transform calc(var(--lx-lift) * .6) ${LIFT};\n}\n\n@media (max-width: 600px) {\n    .${ROOT}-logo { width: min(56vw, 196px); }\n    .${ROOT}-cluster { gap: 22px; width: min(84vw, 320px); }\n    .${ROOT}-status { font-size: 8px; letter-spacing: .18em; }\n}\n\n/* Low-power devices and touch: keep the choreography, drop the blur raster. */\n@keyframes lx-arrival-resolve-flat {\n    from { opacity: 0; transform: translate3d(0, 12px, 0) scale(1.02); }\n    to   { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }\n}\n\nhtml[data-lx-motion-quality=\"lite\"] .${ROOT}-mark,\nhtml[data-lx-motion-quality=\"reduced\"] .${ROOT}-mark {\n    animation-name: lx-arrival-resolve-flat;\n}\n\n@media (pointer: coarse) {\n    .${ROOT}-mark { animation-name: lx-arrival-resolve-flat; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n    .${ROOT}-mark,\n    .${ROOT}-rule,\n    .${ROOT}-node,\n    .${ROOT}-status {\n        animation: none !important;\n        opacity: 1 !important;\n        filter: none !important;\n        transform: none !important;\n    }\n    .${ROOT}[data-phase=\"exiting\"] .${ROOT}-field,\n    .${ROOT}[data-phase=\"exiting\"] .${ROOT}-travel,\n    .${ROOT}[data-phase=\"exiting\"] .${ROOT}-outro {\n        transform: none !important;\n        transition-duration: 200ms !important;\n        transition-delay: 0ms !important;\n    }\n}\n`;/**\n * @framerIntrinsicWidth 1\n * @framerIntrinsicHeight 1\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function ArrivalSequence(props){const{logo=DEFAULT_LOGO,status=\"Verification layer ready\",playMode=\"session\",holdDuration=820,liftDuration=600,landOnNav=true,ink=\"#0B1024\",violet=\"#5148C8\",periwinkle=\"#B8B3FF\",blue=\"#6FA8FF\",signal=\"#39FF14\",canvasPreview=false,style}=props;const target=RenderTarget.current();const isCanvas=target===RenderTarget.canvas||target===RenderTarget.thumbnail;const[phase,setPhase]=useState(\"entering\");const overlayRef=useRef(null);const markRef=useRef(null);useEffect(()=>{if(isCanvas||typeof window===\"undefined\")return;const html=document.documentElement;const reduced=window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;const hold=reduced?160:clamp(holdDuration,400,2400);const lift=reduced?200:clamp(liftDuration,300,1400);// Repeat navigation inside the session: the bootstrap script has\n// already hidden us and released the content timeline before paint.\nlet seen=false;try{seen=playMode===\"session\"&&window.sessionStorage.getItem(SESSION_KEY)===\"complete\";}catch{seen=false;}if(seen){html.dataset.lxPreloaderState=\"skipped\";setPhase(\"hidden\");return;}let ownsStyle=false;let styleEl=document.getElementById(STYLE_ID);if(!styleEl){styleEl=document.createElement(\"style\");styleEl.id=STYLE_ID;styleEl.textContent=css;document.head.appendChild(styleEl);ownsStyle=true;}html.dataset.lxPreloaderState=\"running\";html.setAttribute(\"aria-busy\",\"true\");let done=false;let liftTimer=0;let endTimer=0;// Measure where the real navigation wordmark sits, so the overlay mark\n// can land on it. Measured, never assumed — this adapts across\n// breakpoints on its own, and simply declines to travel if the nav\n// logo is absent (mobile menus, future nav changes).\nconst aimAtNav=()=>{const overlay=overlayRef.current;const mark=markRef.current;if(!overlay||!mark||!landOnNav||reduced)return;const candidates=Array.from(document.querySelectorAll('nav img, header img, [data-framer-name*=\"Nav\" i] img'));const navLogo=candidates.find(el=>{const r=el.getBoundingClientRect();return r.width>40&&r.height>8&&r.top<160;});if(!navLogo)return;const from=mark.getBoundingClientRect();const to=navLogo.getBoundingClientRect();if(!from.width||!to.width)return;const scale=clamp(to.width/from.width,.2,1);const dx=to.left+to.width/2-(from.left+from.width/2);const dy=to.top+to.height/2-(from.top+from.height/2);overlay.style.setProperty(\"--lx-travel-x\",`${Math.round(dx)}px`);overlay.style.setProperty(\"--lx-travel-y\",`${Math.round(dy)}px`);overlay.style.setProperty(\"--lx-travel-s\",scale.toFixed(3));};// The handoff. Everything downstream keys off this moment.\nconst beginLift=()=>{if(done)return;done=true;window.clearTimeout(liftTimer);aimAtNav();html.dataset.lxPreloaderState=\"exiting\";setPhase(\"exiting\");// Fire at the START of the lift, not the end. The content timeline\n// runs underneath the dissolving curtain — that overlap is what\n// makes it read as a single gesture.\nwindow.dispatchEvent(new CustomEvent(\"lx:preloader-complete\"));endTimer=window.setTimeout(()=>{try{if(playMode===\"session\"){window.sessionStorage.setItem(SESSION_KEY,\"complete\");html.dataset.lxArrivalSession=\"complete\";}}catch{// Storage is optional. Never block on it.\n}html.dataset.lxPreloaderState=\"complete\";html.removeAttribute(\"aria-busy\");setPhase(\"hidden\");},lift+60);};// Hold for the composed beat, but never longer than the watchdog.\nliftTimer=window.setTimeout(beginLift,hold);const watchdog=window.setTimeout(beginLift,WATCHDOG_MS);// Restoring from bfcache must not replay the curtain.\nconst onPageShow=event=>{if(event.persisted)beginLift();};window.addEventListener(\"pageshow\",onPageShow);return()=>{window.clearTimeout(liftTimer);window.clearTimeout(endTimer);window.clearTimeout(watchdog);window.removeEventListener(\"pageshow\",onPageShow);html.removeAttribute(\"aria-busy\");if(ownsStyle)styleEl?.remove();};},[isCanvas,holdDuration,liftDuration,landOnNav,playMode]);if(isCanvas&&!canvasPreview){return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",\"data-lx-arrival\":\"canvas-hidden\",style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",pointerEvents:\"none\",opacity:0}});}// Runs before the overlay is parsed. Two jobs, both pre-paint:\n//   1. repeat visits in this session never see a curtain at all\n//   2. first visits mark the content timeline as gated immediately, so it\n//      waits for our handoff instead of firing its own fallback\nconst bootstrap=`(() => {\n        try {\n            var html = document.documentElement;\n            var gate = document.getElementById(${JSON.stringify(GATE_ID)});\n            if (!gate) {\n                gate = document.createElement(\"style\");\n                gate.id = ${JSON.stringify(GATE_ID)};\n                gate.textContent = 'html[data-lx-arrival-session=\"complete\"] [data-lx-arrival=\"root\"]{display:none!important}';\n                document.head.appendChild(gate);\n            }\n            var sessionOnly = ${JSON.stringify(playMode===\"session\")};\n            var seen = sessionOnly && window.sessionStorage.getItem(${JSON.stringify(SESSION_KEY)}) === \"complete\";\n            html.dataset.lxArrivalSession = seen ? \"complete\" : \"fresh\";\n            html.dataset.lxPreloaderState = seen ? \"skipped\" : \"running\";\n        } catch (_) {}\n    })();`;// Belt and braces: no JS, no curtain.\nconst noscript=`[data-lx-arrival=\"root\"]{display:none!important}`;// Two restrained luminous corners over deep ink. Deliberately no broad\n// green wash — signal green against the violet turns muddy at low alpha,\n// so green appears only as the node at the end of the rule.\nconst atmosphere=[`radial-gradient(58% 46% at 26% 24%, ${violet}2E 0%, transparent 62%)`,`radial-gradient(52% 42% at 76% 27%, ${blue}24 0%, transparent 60%)`,`radial-gradient(72% 56% at 50% 97%, ${violet}18 0%, transparent 66%)`,`radial-gradient(38% 30% at 50% 50%, ${periwinkle}0F 0%, transparent 70%)`,`linear-gradient(160deg, ${ink} 0%, #141838 52%, ${ink} 100%)`].join(\", \");return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"script\",{\"data-lx-arrival-bootstrap\":\"true\",suppressHydrationWarning:true,dangerouslySetInnerHTML:{__html:bootstrap}}),/*#__PURE__*/_jsx(\"noscript\",{children:/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:noscript}})}),/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":phase===\"hidden\",\"data-lx-arrival\":\"root\",style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",pointerEvents:\"none\",overflow:\"visible\"},children:phase!==\"hidden\"&&/*#__PURE__*/_jsxs(\"div\",{ref:overlayRef,className:ROOT,\"data-phase\":phase,role:\"status\",\"aria-live\":\"polite\",\"aria-label\":status,style:{\"--lx-lift\":`${clamp(liftDuration,300,1400)}ms`},children:[/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-field`,\"aria-hidden\":\"true\",style:{background:atmosphere},children:/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-grain`})}),/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-stage`,children:/*#__PURE__*/_jsxs(\"div\",{className:`${ROOT}-cluster`,children:[/*#__PURE__*/_jsx(\"div\",{ref:markRef,className:`${ROOT}-travel`,children:/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-mark`,children:/*#__PURE__*/_jsx(\"img\",{className:`${ROOT}-logo`,src:logo.src,srcSet:logo.srcSet,alt:logo.alt||\"LendlyX\"})})}),/*#__PURE__*/_jsxs(\"div\",{className:`${ROOT}-outro`,children:[/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-rail`,\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-rule`,style:{background:`linear-gradient(90deg, ${violet} 0%, ${blue} 54%, ${signal} 100%)`},children:/*#__PURE__*/_jsx(\"span\",{className:`${ROOT}-node`,style:{background:signal,boxShadow:`0 0 12px ${signal}A6`}})})}),/*#__PURE__*/_jsx(\"div\",{className:`${ROOT}-status`,children:status})]})]})})]})})]});}addPropertyControls(ArrivalSequence,{logo:{type:ControlType.ResponsiveImage,title:\"Wordmark\"},status:{type:ControlType.String,title:\"Status\",defaultValue:\"Verification layer ready\"},playMode:{type:ControlType.Enum,title:\"Play\",options:[\"session\",\"always\"],optionTitles:[\"Once per session\",\"Every load\"],defaultValue:\"session\",displaySegmentedControl:true},holdDuration:{type:ControlType.Number,title:\"Hold\",description:\"Time before the handoff to the page timeline.\",defaultValue:820,min:400,max:2400,step:20,unit:\"ms\"},liftDuration:{type:ControlType.Number,title:\"Lift\",description:\"Length of the dissolve. Overlaps the page reveal.\",defaultValue:600,min:300,max:1400,step:20,unit:\"ms\"},landOnNav:{type:ControlType.Boolean,title:\"Land on nav\",defaultValue:true,enabledTitle:\"Travel\",disabledTitle:\"Fade\"},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:\"#0B1024\"},violet:{type:ControlType.Color,title:\"Violet\",defaultValue:\"#5148C8\"},periwinkle:{type:ControlType.Color,title:\"Periwinkle\",defaultValue:\"#B8B3FF\"},blue:{type:ControlType.Color,title:\"Blue\",defaultValue:\"#6FA8FF\"},signal:{type:ControlType.Color,title:\"Signal\",defaultValue:\"#39FF14\"},canvasPreview:{type:ControlType.Boolean,title:\"Canvas preview\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ArrivalSequence\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ArrivalSequence.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{useEffect,useMemo,useRef}from\"react\";const clamp=(v,a=0,b=1)=>Math.min(b,Math.max(a,v));const easeInOut=t=>t<.5?2*t*t:1-Math.pow(-2*t+2,2)/2;// ---------------------------------------------------------------- geometry\nconst VB_W=660;const VB_H=560;const PITCH=.5// 6:12 roof\n;function hatch(x1,y1,x2,y2,n){let d=\"\";const step=(x2-x1)/n;for(let i=0;i<=n;i++){const x=x1+i*step;d+=`M${x.toFixed(1)} ${y2} L${(x+12).toFixed(1)} ${y1} `;}return d;}function joists(x1,x2,y,n){let d=\"\";const step=(x2-x1)/n;for(let i=0;i<=n;i++){const x=(x1+i*step).toFixed(1);d+=`M${x} ${y} v-16 `;}return d;}function studs(x1,x2,yTop,yBot,n){let d=\"\";const step=(x2-x1)/n;for(let i=0;i<=n;i++){const x=(x1+i*step).toFixed(1);d+=`M${x} ${yBot} V${yTop} `;}return d;}function rect(x,y,w,h){return`M${x} ${y} h${w} v${h} h${-w} Z `;}function winMull(x,y,w,h){return`M${x+w/2} ${y} v${h} M${x} ${y+h/2} h${w} `;}function rafters(x1,x2,yEave,rise,n){let d=\"\";const mid=(x1+x2)/2;const step=(x2-x1)/n;for(let i=1;i<n;i++){const x=x1+i*step;const t=1-Math.abs(x-mid)/(mid-x1);d+=`M${x.toFixed(1)} ${yEave} V${(yEave-rise*t).toFixed(1)} `;}return d;}function dimLine(x1,x2,y){return`M${x1} ${y-7} v14 M${x1} ${y} H${x2} M${x2} ${y-7} v14 `;}/** Ten stages, in the order a house is actually built. */function buildHouse(){const bx=110;const bw=440;const gl=452// ground line\n;const wallTop=152;const s=[];// 1 site / ground line\ns.push({d:`M30 ${gl} H630`,from:0,to:.08,w:1});// 2 footing + below-grade hatch\ns.push({d:`M${bx-10} ${gl} V${gl+26} H${bx+bw+10} V${gl}`,from:.05,to:.17,w:1.3});s.push({d:hatch(bx-6,gl+4,bx+bw+6,gl+24,20),from:.09,to:.22,w:.7,soft:true});// 3 floor platform + joists\ns.push({d:`M${bx-4} ${gl} H${bx+bw+4}`,from:.16,to:.27,w:1.3});s.push({d:joists(bx+8,bx+bw-8,gl,9),from:.2,to:.31,w:.65,soft:true});// 4 wall studs\ns.push({d:studs(bx+14,bx+bw-14,wallTop+10,gl,10),from:.28,to:.44,w:.75,soft:true});// 5 sheathing / the box\ns.push({d:`M${bx} ${gl} V${wallTop} H${bx+bw} V${gl}`,from:.4,to:.54,w:1.45});// 6 openings\ns.push({d:`M${bx+40} ${gl} V${gl-148} H${bx+118} V${gl}`,from:.5,to:.61,w:1.05});s.push({d:rect(bx+178,wallTop+66,92,106)+winMull(bx+178,wallTop+66,92,106),from:.53,to:.64,w:.95});s.push({d:rect(bx+312,wallTop+66,92,106)+winMull(bx+312,wallTop+66,92,106),from:.56,to:.67,w:.95});// 7 roof frame\ns.push({d:`M${bx-26} ${wallTop} L${bx+bw/2} ${wallTop-bw*PITCH*.5} L${bx+bw+26} ${wallTop}`,from:.6,to:.75,w:1.45});s.push({d:rafters(bx-26,bx+bw+26,wallTop,bw*PITCH*.5,7),from:.64,to:.78,w:.75,soft:true});// 8 roof surface\ns.push({d:`M${bx-30} ${wallTop+4} L${bx+bw/2} ${wallTop-bw*PITCH*.5-6} L${bx+bw+30} ${wallTop+4}`,from:.72,to:.85,w:1.3});// 9 chimney\ns.push({d:`M${bx+bw-92} ${wallTop-bw*PITCH*.22} v-54 h34 v32`,from:.81,to:.91,w:1.25});// 10 dimension line — the drawing is signed off\ns.push({d:dimLine(bx-26,bx+bw+26,gl+60),from:.89,to:1,w:.95});return s;}function parse(input,fallback){if(typeof input!==\"string\")return fallback;const hex=input.trim().replace(\"#\",\"\");if(/^[0-9a-f]{6}$/i.test(hex)){return[parseInt(hex.slice(0,2),16),parseInt(hex.slice(2,4),16),parseInt(hex.slice(4,6),16)];}const m=input.match(/rgba?\\(([^)]+)\\)/i);if(m){const p=m[1].split(\",\").map(n=>parseFloat(n));if(p.length>=3)return[p[0],p[1],p[2]];}return fallback;}const rgba=(c,a)=>`rgba(${Math.round(c[0])}, ${Math.round(c[1])}, ${Math.round(c[2])}, ${a.toFixed(3)})`;// ---------------------------------------------------------------- craft pass\n//\n// This keeps the art direction exactly as it stands — ONE subject, quiet, no\n// grid or lineage web or particles — and reworks how it is drawn.\n//\n//  · TWO INKINGS. The field renders over opaque sections that alternate ink and\n//    near-white. A single stroke colour cannot serve both: measured, the blue\n//    line lands at 2.44:1 on #11162B but 1.41:1 on #F7F8FC, and 1.14:1 inside\n//    the reading column — the drawing was simply absent on seven of the\n//    thirteen sections. The ground beneath is measured and the ink is swapped\n//    outright. Never blended: the midpoint of that blend measures 1.10:1, so it\n//    would vanish exactly while you crossed the boundary. The swap hides behind\n//    a short dip, so the drawing reads as re-inking itself.\n//\n//  · NO RESET. The original faded the whole house out and rebuilt it every\n//    38 seconds. Watch for a minute and the loop is unmistakable. Here the\n//    house builds once and stays built; afterwards the life comes from a survey\n//    sweep passing slowly across the finished elevation on an aperiodic\n//    cadence. Nothing ever restarts.\n//\n//  · A HAND. Every segment used to draw at the same rate. Each now carries its\n//    own easing exponent and a small stagger, so strokes land with the\n//    unevenness of someone working rather than a uniform wipe.\n//\n//  · A LEADING EDGE. A short bright dash rides the tip of the stroke being\n//    drawn. Because the paths carry pathLength={1} the dash maths is\n//    normalised, so this costs no geometry queries at all.\n//\n//  · RATCHET. In Scroll mode the build only ever advances; scrolling back up\n//    holds the built state instead of dismantling the house stud by stud.\n// Solved against #F7F8FC so the drawing lands at the same measured contrast\n// there as the blue linework does on ink.\nconst PAPER_LINE=[69,62,171];const PAPER_ACCENT=[58,52,140];// Deterministic per-segment character, so the same stroke always behaves the\n// same way. Aperiodic across the set, repeatable across visits.\nconst hash=n=>{const s=Math.sin(n*127.1)*43758.5453123;return s-Math.floor(s);};export default function BlueprintHouse(props){const{style,mode=\"Play\",buildSeconds=30,holdSeconds=6,intensity=1,houseSide=\"Right\",line=\"#6FA8FF\",accent=\"#B8B3FF\",groundLine=true}=props;const isStatic=useIsStaticRenderer();const segs=useMemo(buildHouse,[]);const amt=clamp(Number.isFinite(intensity)?intensity:1,0,1.4);const lineRGB=useMemo(()=>parse(line,[111,168,255]),[line]);const accentRGB=useMemo(()=>parse(accent,[184,179,255]),[accent]);const rootRef=useRef(null);const groupRef=useRef(null);const segRefs=useRef([]);const groundRef=useRef(null);const leadRef=useRef(null);const sweepRef=useRef(null);const sweepGradRef=useRef(null);const parallaxRef=useRef(null);// Per-segment character: a slightly different easing exponent and a small\n// head start, fixed per segment.\nconst hand=useMemo(()=>segs.map((_,i)=>({pow:.78+hash(i*3.1)*.7,lead:(hash(i*7.7)-.5)*.018})),[segs]);// representative state for canvas / SSR: about two-thirds built\nconst STILL=.66;const drawnAt=(s,p,i)=>{const h=hand[i]||{pow:1,lead:0};const local=clamp((p-s.from+h.lead)/Math.max(.001,s.to-s.from));return easeInOut(Math.pow(local,h.pow));};useEffect(()=>{if(isStatic)return;const root=rootRef.current;if(!root)return;const reduced=typeof matchMedia===\"function\"&&matchMedia(\"(prefers-reduced-motion: reduce)\").matches;let grounds=[];const lumOf=c=>{const m=c.match(/rgba?\\(([^)]+)\\)/);if(!m)return null;const q=m[1].split(\",\").map(v=>parseFloat(v));if(q.length>3&&q[3]<.5)return null;return(.2126*q[0]+.7152*q[1]+.0722*q[2])/255;};const mapGrounds=()=>{const out=[];const sy=window.scrollY;for(const el of document.querySelectorAll(\"section\")){const r=el.getBoundingClientRect();if(r.height<120)continue;const cs=getComputedStyle(el);let l=lumOf(cs.backgroundColor);if(l===null){const first=(cs.backgroundImage||\"\").match(/rgba?\\([^)]+\\)/);if(first)l=lumOf(first[0]);}if(l===null)continue;out.push({top:r.top+sy,bottom:r.bottom+sy,light:l>.5});}grounds=out;};let onPaper=false;let paperTarget=false;let reink=1;const sampleGround=()=>{const mid=(window.scrollY||0)+window.innerHeight*.5;for(const g of grounds){if(mid>=g.top&&mid<g.bottom){if(g.light!==paperTarget){paperTarget=g.light;reink=0;}return;}}};const applyInk=dip=>{const L=onPaper?PAPER_LINE:lineRGB;const A=onPaper?PAPER_ACCENT:accentRGB;// Alphas solved per ground; the paper side needs more because it is\n// a dark ink on a light field rather than the reverse.\nconst la=(onPaper?.62:.44)*dip;const aa=(onPaper?.44:.3)*dip;for(let i=0;i<segs.length;i++){const el=segRefs.current[i];if(!el)continue;el.setAttribute(\"stroke\",segs[i].soft?rgba(A,aa):rgba(L,la));}if(groundRef.current){groundRef.current.setAttribute(\"stroke\",rgba(L,.32*dip));}if(leadRef.current){leadRef.current.setAttribute(\"stroke\",rgba(A,.9*dip));}if(sweepGradRef.current){const stops=sweepGradRef.current.querySelectorAll(\"stop\");if(stops[1])stops[1].setAttribute(\"stop-color\",rgba(A,.85));}};// Reduced motion: the finished drawing, correctly inked, never animated.\nif(reduced){segRefs.current.forEach(el=>{if(el)el.style.strokeDashoffset=\"0\";});if(groupRef.current)groupRef.current.style.opacity=String(.85*amt);if(leadRef.current)leadRef.current.style.opacity=\"0\";if(sweepRef.current)sweepRef.current.style.opacity=\"0\";mapGrounds();sampleGround();onPaper=paperTarget;applyInk(1);const onScrollStill=()=>{sampleGround();if(paperTarget!==onPaper){onPaper=paperTarget;applyInk(1);}};window.addEventListener(\"scroll\",onScrollStill,{passive:true});return()=>window.removeEventListener(\"scroll\",onScrollStill);}let raf=0;let stopped=false;let lastT=0;// Elapsed build time, preserved across tab-away. The original reset its\n// start stamp on visibilitychange, so returning to the tab restarted\n// construction from bare ground.\nlet built=0;let scrollBuilt=0;let surveyAt=6+hash(11)*6// seconds after completion\n;let survey=-1// -1 idle, else 0..1 progress\n;let clock=0;let pointerX=0;let pointerTX=0;const BUILD=Math.max(6,buildSeconds)*1e3;const isScroll=String(mode).toLowerCase().includes(\"scroll\");const paint=(p,groupOpacity)=>{let activeSeg=-1;let activeDrawn=0;for(let i=0;i<segs.length;i++){const el=segRefs.current[i];if(!el)continue;const d=drawnAt(segs[i],p,i);el.style.strokeDashoffset=String(1-d);if(d>.001&&d<.999){activeSeg=i;activeDrawn=d;}}if(groupRef.current)groupRef.current.style.opacity=String(groupOpacity);if(groundRef.current){groundRef.current.style.opacity=String(clamp(p/.08)*.5);}// Leading edge: a short bright dash riding the tip of the stroke\n// currently being drawn. pathLength={1} keeps this pure arithmetic.\nconst lead=leadRef.current;if(lead){if(activeSeg>=0){if(lead.dataset.seg!==String(activeSeg)){lead.dataset.seg=String(activeSeg);lead.setAttribute(\"d\",segs[activeSeg].d);lead.setAttribute(\"stroke-width\",String((segs[activeSeg].w??1.2)+.5));}lead.style.strokeDasharray=\"0.045 1\";lead.style.strokeDashoffset=String(1-activeDrawn);lead.style.opacity=String(.85*amt);}else{lead.style.opacity=\"0\";lead.dataset.seg=\"\";}}};const tick=t=>{if(stopped)return;const dt=lastT?Math.min(.05,(t-lastT)/1e3):0;lastT=t;clock+=dt;if(reink<1){reink=Math.min(1,reink+dt*2.2);if(reink>=.5&&onPaper!==paperTarget){onPaper=paperTarget;applyInk(1-Math.sin(Math.PI*reink)*.45);}}const dip=1-Math.sin(Math.PI*clamp(reink))*.45;if(reink<1)applyInk(dip);let p;if(isScroll){const doc=Math.max(1,document.documentElement.scrollHeight-innerHeight);// RATCHET: construction only advances.\nscrollBuilt=Math.max(scrollBuilt,clamp(scrollY/doc));p=scrollBuilt;}else{built=Math.min(BUILD,built+dt*1e3);p=easeInOut(clamp(built/BUILD));}paint(p,.9*amt*dip);// Once the drawing is complete it stays complete. Life comes from a\n// survey sweep passing across the finished elevation, on a cadence\n// that never settles into a rhythm you can predict.\nconst done=p>.999;const sweep=sweepRef.current;if(sweep){if(done&&survey<0&&clock>surveyAt){survey=0;}if(survey>=0){survey+=dt/2.6;if(survey>=1){survey=-1;surveyAt=clock+11+hash(Math.floor(clock))*12;}}if(survey>=0&&sweepGradRef.current){const x=-.35+survey*1.7;sweepGradRef.current.setAttribute(\"gradientTransform\",`translate(${(x*VB_W).toFixed(1)} 0)`);const fade=Math.sin(Math.PI*clamp(survey));sweep.style.opacity=String(.55*fade*amt*dip);}else{sweep.style.opacity=\"0\";}}// A whisper of parallax — enough to sit in front of the page rather\n// than painted onto it, far too little to draw attention.\npointerX+=(pointerTX-pointerX)*(1-Math.exp(-3*dt));if(parallaxRef.current){parallaxRef.current.style.transform=`translate3d(${(pointerX*9).toFixed(2)}px, 0, 0)`;}raf=requestAnimationFrame(tick);};const onPointer=e=>{pointerTX=(e.clientX/Math.max(1,window.innerWidth)-.5)*2;};const onScroll=()=>sampleGround();const onResize=()=>{mapGrounds();sampleGround();};const onVis=()=>{if(document.hidden){cancelAnimationFrame(raf);raf=0;}else if(!raf){// Resume where construction left off, never from bare ground.\nlastT=0;raf=requestAnimationFrame(tick);}};mapGrounds();sampleGround();onPaper=paperTarget;applyInk(1);window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"resize\",onResize,{passive:true});window.addEventListener(\"pointermove\",onPointer,{passive:true});document.addEventListener(\"visibilitychange\",onVis);raf=requestAnimationFrame(tick);return()=>{stopped=true;cancelAnimationFrame(raf);window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"resize\",onResize);window.removeEventListener(\"pointermove\",onPointer);document.removeEventListener(\"visibilitychange\",onVis);};},[isStatic,mode,buildSeconds,holdSeconds,amt,segs,hand,lineRGB,accentRGB]);// Ease the linework back across the middle third, where body copy lives.\nconst readingMask=\"linear-gradient(90deg, #000 0%, #000 20%, rgba(0,0,0,0.40) 32%, rgba(0,0,0,0.40) 68%, #000 80%, #000 100%)\";const side=houseSide===\"Center\"?{left:\"50%\",transform:\"translate(-50%, -50%)\"}:houseSide===\"Left\"?{left:\"0\",transform:\"translateY(-50%)\"}:{right:\"0\",transform:\"translateY(-50%)\"};return /*#__PURE__*/_jsx(\"div\",{ref:rootRef,\"aria-hidden\":\"true\",\"data-lx-house-field\":\"true\",style:{...style,position:\"fixed\",inset:0,width:\"100vw\",height:\"100vh\",pointerEvents:\"none\",overflow:\"hidden\",contain:\"strict\",maskImage:readingMask,WebkitMaskImage:readingMask},children:/*#__PURE__*/_jsx(\"div\",{ref:parallaxRef,style:{position:\"absolute\",inset:0,willChange:\"transform\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",top:\"50%\",width:\"min(52vw, 780px)\",height:`calc(min(52vw, 780px) * ${(VB_H/VB_W).toFixed(4)})`,...side},children:/*#__PURE__*/_jsxs(\"svg\",{viewBox:`0 0 ${VB_W} ${VB_H}`,preserveAspectRatio:\"xMidYMid meet\",width:\"100%\",height:\"100%\",style:{display:\"block\",overflow:\"visible\"},fill:\"none\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsxs(\"linearGradient\",{id:\"lx-bp-sweep\",ref:sweepGradRef,gradientUnits:\"userSpaceOnUse\",x1:\"0\",y1:\"0\",x2:VB_W*.42,y2:\"0\",children:[/*#__PURE__*/_jsx(\"stop\",{offset:\"0\",stopColor:\"rgba(0,0,0,0)\"}),/*#__PURE__*/_jsx(\"stop\",{offset:\"0.5\",stopColor:rgba(accentRGB,.85)}),/*#__PURE__*/_jsx(\"stop\",{offset:\"1\",stopColor:\"rgba(0,0,0,0)\"})]})}),groundLine&&/*#__PURE__*/_jsx(\"path\",{ref:groundRef,d:`M-400 452 H1100`,stroke:rgba(lineRGB,.32),strokeWidth:1,vectorEffect:\"non-scaling-stroke\",style:{opacity:.5}}),/*#__PURE__*/_jsx(\"g\",{ref:groupRef,style:{transformBox:\"fill-box\",opacity:.9*amt},children:segs.map((s,i)=>{const d0=drawnAt(s,STILL,i);return /*#__PURE__*/_jsx(\"path\",{ref:el=>{segRefs.current[i]=el;},d:s.d,stroke:rgba(s.soft?accentRGB:lineRGB,s.soft?.3:.44),strokeWidth:s.w??1.2,vectorEffect:\"non-scaling-stroke\",pathLength:1,style:{strokeDasharray:1,strokeDashoffset:1-d0}},i);})}),/*#__PURE__*/_jsx(\"g\",{ref:sweepRef,style:{opacity:0},children:segs.map((s,i)=>/*#__PURE__*/_jsx(\"path\",{d:s.d,stroke:\"url(#lx-bp-sweep)\",strokeWidth:(s.w??1.2)+.3,vectorEffect:\"non-scaling-stroke\"},`s${i}`))}),/*#__PURE__*/_jsx(\"path\",{ref:leadRef,d:\"\",stroke:rgba(accentRGB,.9),strokeWidth:1.7,vectorEffect:\"non-scaling-stroke\",pathLength:1,style:{opacity:0}})]})})})});}BlueprintHouse.displayName=\"Blueprint House\";BlueprintHouse.defaultProps={mode:\"Play\",buildSeconds:30,holdSeconds:6,intensity:1,houseSide:\"Right\",line:\"#6FA8FF\",accent:\"#B8B3FF\",groundLine:true};addPropertyControls(BlueprintHouse,{mode:{type:ControlType.Enum,title:\"Mode\",options:[\"Play\",\"Scroll\"],optionTitles:[\"Build once on load\",\"Follow page scroll\"],defaultValue:\"Play\"},buildSeconds:{type:ControlType.Number,title:\"Build\",min:6,max:120,step:1,unit:\"s\",defaultValue:30,hidden:p=>p.mode===\"Scroll\"},holdSeconds:{type:ControlType.Number,title:\"Hold\",min:0,max:60,step:1,unit:\"s\",defaultValue:6,hidden:()=>true},intensity:{type:ControlType.Number,title:\"Presence\",min:0,max:1.4,step:.05,defaultValue:1},houseSide:{type:ControlType.Enum,title:\"Position\",options:[\"Center\",\"Right\",\"Left\"],defaultValue:\"Right\"},groundLine:{type:ControlType.Boolean,title:\"Ground line\",defaultValue:true},line:{type:ControlType.Color,title:\"Line\",defaultValue:\"#6FA8FF\"},accent:{type:ControlType.Color,title:\"Framing\",defaultValue:\"#B8B3FF\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BlueprintHouse\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BlueprintHouse.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{useEffect,useRef}from\"react\";const TOTAL=4;const STORE=\"lx.found.v1\";const DRIFT=8// px of travel that turns a hold into a selection\n;const clamp=(v,a,b)=>Math.min(b,Math.max(a,v));const MONO=\"'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace\";const SANS=\"'DM Sans', system-ui, sans-serif\";export default function HiddenMoments(props){const{style,figures=true,sequences=true,wordmark=true,records=true,showRecord=true,holdMs=650,violet=\"#5148C8\",periwinkle=\"#B8B3FF\",ink=\"#0B1024\"}=props;const isStatic=useIsStaticRenderer();const layerRef=useRef(null);useEffect(()=>{if(isStatic)return;const layer=layerRef.current;if(!layer)return;const reduced=typeof matchMedia===\"function\"&&matchMedia(\"(prefers-reduced-motion: reduce)\").matches;/* ------------------------------------------------------- found record */const load=()=>{try{return JSON.parse(localStorage.getItem(STORE)||\"{}\");}catch{return{};}};const save=v=>{try{localStorage.setItem(STORE,JSON.stringify(v));}catch{}};let found=load();let recordEl=null;const tone=el=>{let n=el;for(let i=0;n&&i<8;i++,n=n.parentElement){const t=n.getAttribute?.(\"data-lx-tone\");if(t===\"dark\"||t===\"light\")return t;}return\"dark\";};/* A quiet tally, bottom-left. It only exists once you have found one —\n           the point is to tell you there are more, not to advertise a game. */const paintRecord=t=>{const n=Object.keys(found).length;if(!recordEl){recordEl=document.createElement(\"div\");recordEl.style.cssText=`position:fixed;left:22px;bottom:22px;z-index:2;pointer-events:auto;`+`font:500 10px/1 ${MONO};letter-spacing:.14em;text-transform:uppercase;`+`padding:9px 12px;border-radius:6px;cursor:pointer;`+`backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);`+`transition:opacity .3s ease;`;recordEl.title=\"Dismiss\";recordEl.addEventListener(\"click\",()=>{recordEl.style.opacity=\"0\";setTimeout(()=>recordEl?.remove(),320);recordEl=null;});layer.appendChild(recordEl);recordEl.animate(reduced?[{opacity:0},{opacity:1}]:[{opacity:0,transform:\"translateY(8px)\"},{opacity:1,transform:\"translateY(0)\"}],{duration:420,easing:\"cubic-bezier(.16,1,.3,1)\",fill:\"both\"});}const dark=t===\"dark\";recordEl.style.background=dark?\"rgba(11,16,36,.72)\":\"rgba(255,255,255,.82)\";recordEl.style.border=`1px solid ${dark?\"#2B3150\":\"#E4E7EF\"}`;recordEl.style.color=dark?periwinkle:violet;recordEl.textContent=n>=TOTAL?`Record complete \\xb7 ${TOTAL}/${TOTAL}`:`Found ${n} of ${TOTAL}`;};const discovered=(key,anchor)=>{if(found[key])return;found[key]=1;save(found);window.dispatchEvent(new CustomEvent(\"lx:discovery\",{detail:{key,count:Object.keys(found).length,total:TOTAL}}));if(showRecord)paintRecord(tone(anchor??null));};/* -------------------------------------------------------- panel plumbing */const panels=new Set;const closeAll=()=>{panels.forEach(p=>{p.animate([{opacity:1},{opacity:0}],{duration:220,easing:\"ease\",fill:\"forwards\"}).onfinish=()=>p.remove();});panels.clear();};const panel=(x,y,t,html,w=268)=>{closeAll();const dark=t===\"dark\";const p=document.createElement(\"div\");const left=clamp(x-w/2,12,innerWidth-w-12);const top=clamp(y,12,innerHeight-190);p.style.cssText=`position:fixed;left:${left}px;top:${top}px;width:${w}px;z-index:3;`+`pointer-events:none;border-radius:12px;padding:15px 16px 16px;`+`background:${dark?\"rgba(11,16,36,.94)\":\"rgba(255,255,255,.97)\"};`+`border:1px solid ${dark?\"#2B3150\":\"#E4E7EF\"};`+`box-shadow:0 26px 50px -22px rgba(6,8,20,.75);`+`backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);`+`color:${dark?\"#FFFFFF\":ink};font-family:${SANS};`;p.innerHTML=html;layer.appendChild(p);panels.add(p);p.animate(reduced?[{opacity:0},{opacity:1}]:[{opacity:0,transform:\"translateY(10px) scale(.97)\"},{opacity:1,transform:\"translateY(0) scale(1)\"}],{duration:420,easing:\"cubic-bezier(.22,1.2,.36,1)\",fill:\"both\"});setTimeout(closeAll,5200);return p;};const row=(k,v,dark)=>`<div style=\"display:flex;justify-content:space-between;gap:14px;padding:7px 0;`+`border-top:1px solid ${dark?\"#232945\":\"#EDEFF5\"}\">`+`<span style=\"font:500 9px/1.4 ${MONO};letter-spacing:.13em;text-transform:uppercase;`+`color:${dark?\"#8A92AD\":\"#8B93B0\"}\">${k}</span>`+`<span style=\"font:500 12px/1.4 ${SANS};text-align:right\">${v}</span></div>`;const head=(label,dark)=>`<div style=\"font:500 9px/1 ${MONO};letter-spacing:.15em;text-transform:uppercase;`+`color:${dark?periwinkle:violet};margin-bottom:9px\">${label}</div>`;/* ============================ 1. HOLD A FIGURE ======================== */// Every number on this site is illustrative, and the site says so in its\n// footnotes. Holding one surfaces that where it actually matters.\nconst FIGURE=/^[~<>]?\\s*[$€£]?\\s*[\\d][\\d,.\\s]*\\s*(%|k|K|M|bn|\\/|days?|hrs?)?[\\s\\S]{0,14}$/;const isFigure=el=>{const txt=(el.textContent||\"\").trim();if(!txt||txt.length>24)return false;if(!/\\d/.test(txt))return false;if(/^0?\\d{1,2}$/.test(txt))return false// that is a step number\n;if(!FIGURE.test(txt))return false;const fs=parseFloat(getComputedStyle(el).fontSize)||0;return fs>=17&&el.children.length===0;};const figureAt=el=>{let n=el;for(let i=0;n&&i<4;i++,n=n.parentElement){if(isFigure(n))return n;}return null;};const openProvenance=el=>{const r=el.getBoundingClientRect();const t=tone(el);const dark=t===\"dark\";const val=(el.textContent||\"\").trim();panel(r.left+r.width/2,r.bottom+12,t,head(\"Provenance\",dark)+`<div style=\"font:600 17px/1.2 ${SANS};margin-bottom:11px\">${val}</div>`+row(\"Source\",\"Synthetic sample\",dark)+row(\"Check\",\"Configured comparison\",dark)+row(\"Live data\",\"None\",dark)+`<div style=\"font:400 11px/1.5 ${SANS};color:${dark?\"#8A92AD\":\"#8B93B0\"};margin-top:11px\">`+`Figures on this site are illustrative. LendlyX verifies and informs; the lender decides.</div>`);discovered(\"figure\",el);};/* ========================== 2. TRACE A SEQUENCE ======================= */const STEP=/^0?(\\d{1,2})$/;const stepAt=el=>{let n=el;for(let i=0;n&&i<4;i++,n=n.parentElement){const txt=(n.textContent||\"\").trim();const m=txt.match(STEP);if(m&&n.children.length===0){const fs=parseFloat(getComputedStyle(n).fontSize)||0;if(fs<=16)return{el:n,n:parseInt(m[1],10)};}}return null;};let chain=[];let expect=1;let chainTimer=0;const resetChain=()=>{chain=[];expect=1;};const litMark=(el,t,delay)=>{const r=el.getBoundingClientRect();const tint=t===\"dark\"?periwinkle:violet;const d=document.createElement(\"div\");const pad=9;d.style.cssText=`position:fixed;left:${r.left-pad}px;top:${r.top-pad}px;`+`width:${r.width+pad*2}px;height:${r.height+pad*2}px;`+`border:1px solid ${tint};border-radius:7px;pointer-events:none;`+`box-shadow:0 0 16px -3px ${tint};`;layer.appendChild(d);d.animate([{opacity:0,transform:\"scale(.86)\"},{opacity:1,transform:\"scale(1)\",offset:.3},{opacity:0,transform:\"scale(1.05)\"}],{duration:1150,delay,easing:\"cubic-bezier(.16,1,.3,1)\"}).onfinish=()=>d.remove();};const completeChain=()=>{const t=tone(chain[0]);chain.forEach((el,i)=>litMark(el,t,i*110));const last=chain[chain.length-1].getBoundingClientRect();setTimeout(()=>{const dark=t===\"dark\";panel(last.left+last.width/2,last.bottom+16,t,head(\"Sequence traced\",dark)+`<div style=\"font:600 15px/1.35 ${SANS};margin-bottom:10px\">`+`You followed the chain in order.</div>`+`<div style=\"font:400 12px/1.6 ${SANS};color:${dark?\"#AEB4C5\":\"#5C6486\"}\">`+`That is the whole idea: a finding is only as good as the order of the `+`evidence behind it. Every step stays linked to the one before it.</div>`,286);discovered(\"sequence\",chain[0]);},chain.length*110+180);resetChain();};/* ============================ 3. THE WORDMARK ========================= */let marks=0;let markTimer=0;const isWordmark=el=>{let n=el;for(let i=0;n&&i<6;i++,n=n.parentElement){if(n.hasAttribute?.(\"data-lx-wordmark\"))return n;}return null;};const stamp=el=>{const r=el.getBoundingClientRect();const t=tone(el);const tint=t===\"dark\"?periwinkle:violet;const S=132;const d=document.createElement(\"div\");d.style.cssText=`position:fixed;left:${clamp(r.left+r.width/2-S/2,10,innerWidth-S-10)}px;`+`top:${clamp(r.bottom+14,10,innerHeight-S-10)}px;`+`width:${S}px;height:${S}px;pointer-events:none;z-index:3;`;d.innerHTML=`<svg width=\"${S}\" height=\"${S}\" viewBox=\"0 0 132 132\" fill=\"none\">`+`<circle cx=\"66\" cy=\"66\" r=\"58\" stroke=\"${tint}\" stroke-width=\"1.5\" `+`pathLength=\"1\" stroke-dasharray=\"1\" stroke-dashoffset=\"1\" id=\"lxr1\"/>`+`<circle cx=\"66\" cy=\"66\" r=\"50\" stroke=\"${tint}\" stroke-width=\"0.75\" opacity=\".5\" `+`pathLength=\"1\" stroke-dasharray=\"1\" stroke-dashoffset=\"1\" id=\"lxr2\"/>`+`<path d=\"M50 66 L61 77 L83 55\" stroke=\"${tint}\" stroke-width=\"2.5\" `+`stroke-linecap=\"round\" stroke-linejoin=\"round\" pathLength=\"1\" `+`stroke-dasharray=\"1\" stroke-dashoffset=\"1\" id=\"lxr3\"/>`+`<text x=\"66\" y=\"104\" text-anchor=\"middle\" fill=\"${tint}\" `+`style=\"font:500 7px ${MONO};letter-spacing:.18em\">NO LIVE DATA</text></svg>`;layer.appendChild(d);const anim=(id,dur,delay)=>{const p=d.querySelector(\"#\"+id);p?.animate([{strokeDashoffset:1},{strokeDashoffset:0}],{duration:reduced?1:dur,delay:reduced?0:delay,easing:\"cubic-bezier(.16,1,.3,1)\",fill:\"forwards\"});};anim(\"lxr1\",620,0);anim(\"lxr2\",520,130);anim(\"lxr3\",380,420);d.animate([{opacity:1},{opacity:1,offset:.72},{opacity:0}],{duration:3600,easing:\"linear\",fill:\"forwards\"}).onfinish=()=>d.remove();discovered(\"wordmark\",el);};/* ========================= 4. A CARD'S RECORD ========================= */const surfaceAt=el=>{let n=el;for(let i=0;n&&i<10;i++,n=n.parentElement){if(n.tagName===\"A\"||n.tagName===\"BUTTON\")return null// don't fight a link\n;if(n.hasAttribute?.(\"data-lx-surface\"))return n;}return null;};const openRecord=el=>{const r=el.getBoundingClientRect();const t=tone(el);const dark=t===\"dark\";const H=74;const d=document.createElement(\"div\");d.style.cssText=`position:fixed;left:${r.left}px;top:${r.bottom-H}px;`+`width:${r.width}px;height:${H}px;pointer-events:none;z-index:3;overflow:hidden;`+`border-radius:0 0 ${getComputedStyle(el).borderBottomLeftRadius} ${getComputedStyle(el).borderBottomRightRadius};`;const inner=document.createElement(\"div\");inner.style.cssText=`position:absolute;inset:0;padding:13px 16px;`+`background:${dark?\"rgba(17,22,43,.97)\":\"rgba(247,248,251,.98)\"};`+`border-top:1px solid ${dark?\"#2B3150\":\"#E4E7EF\"};`+`font-family:${SANS};color:${dark?\"#fff\":ink};`;inner.innerHTML=`<div style=\"font:500 9px/1 ${MONO};letter-spacing:.15em;text-transform:uppercase;`+`color:${dark?periwinkle:violet};margin-bottom:8px\">Record</div>`+`<div style=\"display:flex;gap:20px;font:400 11px/1.4 ${SANS};`+`color:${dark?\"#AEB4C5\":\"#5C6486\"}\">`+`<span>Reason code&nbsp; <b style=\"color:${dark?\"#fff\":ink}\">Illustrative</b></span>`+`<span>Source&nbsp; <b style=\"color:${dark?\"#fff\":ink}\">Synthetic</b></span>`+`<span>Decision&nbsp; <b style=\"color:${dark?\"#fff\":ink}\">Lender's</b></span></div>`;d.appendChild(inner);layer.appendChild(d);inner.animate(reduced?[{opacity:0},{opacity:1}]:[{transform:\"translateY(100%)\"},{transform:\"translateY(0)\"}],{duration:480,easing:\"cubic-bezier(.16,1,.3,1)\",fill:\"both\"});setTimeout(()=>{inner.animate(reduced?[{opacity:1},{opacity:0}]:[{transform:\"translateY(0)\"},{transform:\"translateY(100%)\"}],{duration:380,easing:\"cubic-bezier(.7,0,.84,0)\",fill:\"both\"}).onfinish=()=>d.remove();},3400);discovered(\"record\",el);};/* ------------------------------------------------------------- wiring */let holdTimer=0;let hx=0;let hy=0;let holdTarget=null;const onDown=e=>{if(e.button!==0)return;hx=e.clientX;hy=e.clientY;if(!figures)return;const fig=figureAt(e.target);if(!fig)return;holdTarget=fig;holdTimer=window.setTimeout(()=>{if(holdTarget)openProvenance(holdTarget);holdTarget=null;},clamp(holdMs,300,2e3));};const cancelHold=()=>{clearTimeout(holdTimer);holdTarget=null;};const onMove=e=>{if(!holdTarget)return;if(Math.hypot(e.clientX-hx,e.clientY-hy)>DRIFT)cancelHold();};const onUp=()=>cancelHold();const onClick=e=>{// wordmark: three clicks inside 900ms\nif(wordmark){const wm=isWordmark(e.target);if(wm){marks++;clearTimeout(markTimer);markTimer=window.setTimeout(()=>marks=0,900);if(marks>=3){marks=0;e.preventDefault();stamp(wm);}return;}}// sequence: numbered steps, in order, in the same container\nif(!sequences)return;const st=stepAt(e.target);if(!st)return;if(st.n!==expect){resetChain();if(st.n===1){chain=[st.el];expect=2;}return;}chain.push(st.el);expect=st.n+1;clearTimeout(chainTimer);chainTimer=window.setTimeout(resetChain,4e3);if(chain.length>=3){clearTimeout(chainTimer);completeChain();}};const onDbl=e=>{if(!records)return;const s=surfaceAt(e.target);if(!s)return;// a double-click natively selects a word; the highlight would sit\n// under the drawer and read as a glitch rather than a reveal\ntry{getSelection()?.removeAllRanges();}catch{}openRecord(s);};document.addEventListener(\"pointerdown\",onDown,{passive:true,capture:true});document.addEventListener(\"pointermove\",onMove,{passive:true,capture:true});document.addEventListener(\"pointerup\",onUp,{passive:true,capture:true});document.addEventListener(\"pointercancel\",onUp,{passive:true,capture:true});document.addEventListener(\"click\",onClick,true);document.addEventListener(\"dblclick\",onDbl,true);window.addEventListener(\"scroll\",closeAll,{passive:true});if(showRecord&&Object.keys(found).length)paintRecord(\"dark\");return()=>{cancelHold();clearTimeout(markTimer);clearTimeout(chainTimer);document.removeEventListener(\"pointerdown\",onDown,true);document.removeEventListener(\"pointermove\",onMove,true);document.removeEventListener(\"pointerup\",onUp,true);document.removeEventListener(\"pointercancel\",onUp,true);document.removeEventListener(\"click\",onClick,true);document.removeEventListener(\"dblclick\",onDbl,true);window.removeEventListener(\"scroll\",closeAll);layer.replaceChildren();};},[isStatic,figures,sequences,wordmark,records,showRecord,holdMs,violet,periwinkle,ink]);return /*#__PURE__*/_jsx(\"div\",{ref:layerRef,\"aria-hidden\":\"true\",\"data-lx-hidden-moments\":\"true\",style:{...style,position:\"fixed\",inset:0,width:\"100vw\",height:\"100vh\",pointerEvents:\"none\",overflow:\"hidden\"}});}HiddenMoments.displayName=\"Hidden Moments\";HiddenMoments.defaultProps={figures:true,sequences:true,wordmark:true,records:true,showRecord:true,holdMs:650,violet:\"#5148C8\",periwinkle:\"#B8B3FF\",ink:\"#0B1024\"};addPropertyControls(HiddenMoments,{figures:{type:ControlType.Boolean,title:\"Hold a figure\",defaultValue:true,description:\"Press and hold any number to unfold its provenance.\"},sequences:{type:ControlType.Boolean,title:\"Trace steps\",defaultValue:true,description:\"Click numbered steps in order to complete the chain.\"},wordmark:{type:ControlType.Boolean,title:\"Wordmark seal\",defaultValue:true},records:{type:ControlType.Boolean,title:\"Card record\",defaultValue:true},showRecord:{type:ControlType.Boolean,title:\"Found tally\",defaultValue:true,description:\"The quiet counter that hints more exist.\"},holdMs:{type:ControlType.Number,title:\"Hold\",min:300,max:2e3,step:25,unit:\"ms\",defaultValue:650},violet:{type:ControlType.Color,title:\"On light\",defaultValue:\"#5148C8\"},periwinkle:{type:ControlType.Color,title:\"On dark\",defaultValue:\"#B8B3FF\"},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:\"#0B1024\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HiddenMoments\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HiddenMoments_1.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,Link}from\"framer\";const links=[[\"Platform\",\"/platform\"],[\"Verification\",\"/verification\"],[\"Use cases\",\"/use-cases\"],[\"Security\",\"/security\"],[\"Resources\",\"/resources\"]];// Every route the navigation can reach, in the order the proxy rack renders\n// them. The logo and the CTA are routes too.\nconst ROUTES=[\"/\",...links.map(([,href])=>href),\"/contact\"];const useIsomorphicLayoutEffect=typeof window===\"undefined\"?React.useEffect:React.useLayoutEffect;function currentPath(){if(typeof window===\"undefined\")return\"/\";return window.location.pathname.replace(/\\/$/,\"\")||\"/\";}function normalizeLogo(logo){if(typeof logo===\"string\")return logo;return logo?.src||\"https://framerusercontent.com/images/qVNTCWw9ht0PfI0xRT911zyIc.svg\";}export default function LiquidNavigationRouted({logo,ctaLabel=\"Request a workflow review\"}){const[open,setOpen]=React.useState(false);const[path,setPath]=React.useState(\"/\");const menuButtonRef=React.useRef(null);const sheetRef=React.useRef(null);const logoSrc=normalizeLogo(logo);const legalLabel=path===\"/privacy-policy\"?\"Privacy\":path===\"/terms-conditions\"?\"Terms\":null;const contactCurrent=path===\"/contact\";useIsomorphicLayoutEffect(()=>{const sync=()=>setPath(currentPath());sync();window.addEventListener(\"popstate\",sync);window.addEventListener(\"pageshow\",sync);return()=>{window.removeEventListener(\"popstate\",sync);window.removeEventListener(\"pageshow\",sync);};},[]);// ---- client-side routing -------------------------------------------\n// These anchors are rendered by a code component, so Framer's router never\n// sees them: every click was a full document load that tore down the whole\n// shell — background, nav, scroll progress, hover field — and rebuilt it.\n// Framer only intercepts anchors it rendered itself, and <Link> accepts no\n// className, so instead of restyling the navigation we keep this markup\n// exactly as it is and forward each click to an off-screen <Link> for the\n// same route. Verified: a programmatic click on a Framer-rendered anchor\n// does route client-side and leaves the document intact.\nconst rackRef=React.useRef(null);React.useEffect(()=>{const onClick=event=>{if(event.defaultPrevented||event.button!==0||event.metaKey||event.ctrlKey||event.shiftKey||event.altKey){return;}const target=event.target;const anchor=target?.closest?.(\"a[href]\");if(!anchor||!anchor.closest(\".lxbar, .lxsheet\"))return;const raw=anchor.getAttribute(\"href\")||\"\";if(raw.startsWith(\"#\"))return;// the skip link stays a plain jump\nif(anchor.target&&anchor.target!==\"_self\")return;const url=new URL(anchor.href,window.location.href);if(url.origin!==window.location.origin)return;const path=url.pathname.replace(/\\/$/,\"\")||\"/\";const index=ROUTES.indexOf(path);const proxies=rackRef.current?.querySelectorAll(\"a\");const proxy=index>=0&&proxies?proxies[index]:null;if(!proxy)return;// unknown route — let the browser handle it\nevent.preventDefault();proxy.click();};document.addEventListener(\"click\",onClick);return()=>document.removeEventListener(\"click\",onClick);},[]);React.useEffect(()=>{// <Link> accepts no tabIndex, and a focusable anchor inside an\n// aria-hidden container is an accessibility fault, so the rack is\n// taken out of the tab order here.\nrackRef.current?.querySelectorAll(\"a\").forEach(a=>a.setAttribute(\"tabindex\",\"-1\"));},[]);React.useEffect(()=>{const prefetch=event=>{const target=event.target;const anchor=target?.closest?.(\"a[href]\");if(!anchor)return;const url=new URL(anchor.href,window.location.href);if(url.origin!==window.location.origin||url.pathname===window.location.pathname||document.head.querySelector('link[data-lx-prefetch=\"'+url.pathname+'\"]')){return;}const link=document.createElement(\"link\");link.rel=\"prefetch\";link.href=url.href;link.dataset.lxPrefetch=url.pathname;document.head.appendChild(link);};document.addEventListener(\"pointerover\",prefetch,{capture:true,passive:true});document.addEventListener(\"focusin\",prefetch,true);return()=>{document.removeEventListener(\"pointerover\",prefetch,true);document.removeEventListener(\"focusin\",prefetch,true);};},[]);React.useEffect(()=>{if(!open)return;const previousActive=document.activeElement;const originalOverflow=document.body.style.overflow;const backgroundRegions=Array.from(document.querySelectorAll(\"main, footer\")).map(region=>({region,inert:region.inert,ariaHidden:region.getAttribute(\"aria-hidden\")}));document.body.style.overflow=\"hidden\";backgroundRegions.forEach(({region})=>{region.inert=true;region.setAttribute(\"aria-hidden\",\"true\");});const focusable=()=>Array.from(sheetRef.current?.querySelectorAll('a[href],button:not([disabled]),[tabindex]:not([tabindex=\"-1\"])')||[]);const focusFrame=window.requestAnimationFrame(()=>{focusable()[0]?.focus();});const close=()=>setOpen(false);const onKeyDown=event=>{if(event.key===\"Escape\"){event.preventDefault();close();return;}if(event.key!==\"Tab\")return;const items=focusable();if(!items.length)return;const first=items[0];const last=items[items.length-1];if(event.shiftKey&&document.activeElement===first){event.preventDefault();last.focus();}else if(!event.shiftKey&&document.activeElement===last){event.preventDefault();first.focus();}};const onPointerDown=event=>{const target=event.target;if(!sheetRef.current?.contains(target)&&!menuButtonRef.current?.contains(target)){close();}};document.addEventListener(\"keydown\",onKeyDown);document.addEventListener(\"pointerdown\",onPointerDown);return()=>{window.cancelAnimationFrame(focusFrame);document.body.style.overflow=originalOverflow;backgroundRegions.forEach(({region,inert,ariaHidden})=>{region.inert=inert;if(ariaHidden===null)region.removeAttribute(\"aria-hidden\");else region.setAttribute(\"aria-hidden\",ariaHidden);});document.removeEventListener(\"keydown\",onKeyDown);document.removeEventListener(\"pointerdown\",onPointerDown);if(previousActive?.isConnected)previousActive.focus();};},[open]);const closeMenu=()=>setOpen(false);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{suppressHydrationWarning:true,children:`\n                .lxnav{font-family:'DM Sans',sans-serif;position:relative;z-index:102;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:12px 24px;box-sizing:border-box}\n                .lxskip{position:fixed;z-index:10001;top:8px;left:8px;transform:translateY(-160%);padding:12px 16px;border-radius:10px;background:#fff;color:#111425;font:700 14px/1.2 'DM Sans',sans-serif;text-decoration:none;box-shadow:0 8px 24px rgba(17,20,37,.18);transition:transform 160ms ease}\n                .lxskip:focus{transform:translateY(0);outline:3px solid #8f86ff;outline-offset:2px}\n                .lxbar{width:min(1320px,100%);height:58px;border:1px solid rgba(17,20,37,.10);background:rgba(255,255,255,.94);backdrop-filter:blur(18px) saturate(130%);border-radius:20px;display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 18px;box-sizing:border-box;box-shadow:0 12px 36px rgba(17,20,37,.08);transition:border-color 180ms ease,box-shadow 180ms ease}\n                .lxbar:hover{border-color:rgba(81,72,200,.18);box-shadow:0 14px 40px rgba(17,20,37,.10)}\n                .lxlogo{display:block;width:122px;height:28px;object-fit:contain;object-position:left center}\n                .lxlinks{display:flex;align-items:center;gap:3px}\n                .lxlink,.lxcta{position:relative;text-decoration:none;font-size:13px;font-weight:600;line-height:1;padding:12px 14px;border-radius:13px}\n                .lxlink{color:#35394d;transition:color 160ms ease,background 160ms ease}\n                .lxlink:hover{color:#111425;background:rgba(81,72,200,.08)}\n                .lxlink[data-current=true]{color:#111425;background:rgba(81,72,200,.12);box-shadow:inset 0 0 0 1px rgba(81,72,200,.14)}\n                .lxcta{background:#5148c8;color:#fff;padding:14px 18px;transition:background 160ms ease,box-shadow 160ms ease}\n                .lxcta:hover{background:#4037b0;box-shadow:0 8px 22px rgba(81,72,200,.22)}\n                .lxcta[data-current=true]{background:#4037b0;box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(81,72,200,.35)}\n                .lxlegal{color:#5148c8;background:rgba(81,72,200,.10);box-shadow:inset 0 0 0 1px rgba(81,72,200,.13);font-size:12px;font-weight:700;line-height:1;padding:10px 12px;border-radius:999px}\n                .lxmenu{display:none;width:44px;height:44px;border:0;border-radius:50%;background:#111425;color:#fff;font-size:20px;line-height:1;cursor:pointer}\n                .lxsheet{position:fixed;z-index:103;left:16px;right:16px;top:78px;max-height:calc(100dvh - 94px);overflow:auto;background:#111425;border:1px solid rgba(255,255,255,.10);border-radius:22px;padding:14px;display:flex;flex-direction:column;gap:4px;box-shadow:0 24px 70px rgba(17,20,37,.34);animation:lxmenuin 180ms ease-out}\n                .lxsheethead{display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:13px;font-weight:700;padding:4px 4px 8px 12px}\n                .lxsheetclose{width:44px;height:44px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:transparent;color:#fff;font-size:24px;line-height:1;cursor:pointer}\n                .lxsheet a{color:#fff;text-decoration:none;font-size:18px;font-weight:650;padding:15px 16px;border-radius:14px;min-height:48px;box-sizing:border-box}\n                .lxsheet a:hover,.lxsheet a[aria-current=page]{background:rgba(184,179,255,.16)}\n                .lxsheet .lxcta{margin-top:8px;text-align:center;background:#5148c8;color:#fff}\n                .lxlink:focus-visible,.lxcta:focus-visible,.lxmenu:focus-visible,.lxsheetclose:focus-visible,.lxsheet a:focus-visible{outline:3px solid #8f86ff;outline-offset:3px}\n                @keyframes lxmenuin{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}\n                @media(max-width:860px){.lxlinks,.lxbar>.lxcta{display:none}.lxmenu{display:grid;place-items:center}.lxnav{padding:10px 14px}.lxbar{height:56px;border-radius:18px}.lxlogo{width:112px}.lxlegal{margin-left:auto;margin-right:8px}}\n                @media(min-width:861px){.lxsheet{display:none}}\n                @media(prefers-reduced-motion:reduce){.lxskip,.lxbar,.lxlink,.lxcta,.lxsheet{transition:none!important;animation:none!important}}\n            `}),/*#__PURE__*/_jsx(\"a\",{className:\"lxskip\",href:\"#main-content\",children:\"Skip to main content\"}),/*#__PURE__*/_jsx(\"div\",{ref:rackRef,\"aria-hidden\":\"true\",\"data-lx-route-rack\":\"true\",style:{position:\"absolute\",width:1,height:1,overflow:\"hidden\",clipPath:\"inset(50%)\",pointerEvents:\"none\"},children:ROUTES.map(route=>/*#__PURE__*/_jsx(Link,{href:route,children:\" \"},route))}),/*#__PURE__*/_jsx(\"header\",{className:\"lxnav\",children:/*#__PURE__*/_jsxs(\"nav\",{className:\"lxbar\",\"aria-label\":\"Primary navigation\",children:[/*#__PURE__*/_jsx(\"a\",{href:\"/\",\"aria-label\":\"LendlyX home\",children:/*#__PURE__*/_jsx(\"img\",{className:\"lxlogo\",src:logoSrc,alt:\"LendlyX\"})}),/*#__PURE__*/_jsx(\"div\",{className:\"lxlinks\",children:links.map(([label,href])=>/*#__PURE__*/_jsx(\"a\",{className:\"lxlink\",href:href,\"data-current\":path===href,\"aria-current\":path===href?\"page\":undefined,children:label},href))}),legalLabel&&/*#__PURE__*/_jsx(\"span\",{className:\"lxlegal\",\"aria-current\":\"page\",children:legalLabel}),/*#__PURE__*/_jsx(\"a\",{className:\"lxcta\",href:\"/contact\",\"data-current\":contactCurrent,\"aria-current\":contactCurrent?\"page\":undefined,children:ctaLabel}),/*#__PURE__*/_jsx(\"button\",{ref:menuButtonRef,className:\"lxmenu\",type:\"button\",\"aria-expanded\":open,\"aria-controls\":\"lx-mobile-navigation\",\"aria-label\":open?\"Close menu\":\"Open menu\",onClick:()=>setOpen(value=>!value),children:open?\"\\xd7\":\"☰\"})]})}),open&&/*#__PURE__*/_jsxs(\"div\",{ref:sheetRef,className:\"lxsheet\",id:\"lx-mobile-navigation\",role:\"dialog\",\"aria-modal\":\"true\",\"aria-labelledby\":\"lx-mobile-navigation-title\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"lxsheethead\",children:[/*#__PURE__*/_jsx(\"span\",{id:\"lx-mobile-navigation-title\",children:\"Navigation\"}),/*#__PURE__*/_jsx(\"button\",{className:\"lxsheetclose\",type:\"button\",\"aria-label\":\"Close navigation menu\",onClick:closeMenu,children:\"\\xd7\"})]}),links.map(([label,href])=>/*#__PURE__*/_jsx(\"a\",{href:href,\"aria-current\":path===href?\"page\":undefined,onClick:closeMenu,children:label},href)),legalLabel&&/*#__PURE__*/_jsx(\"span\",{className:\"lxlegal\",\"aria-current\":\"page\",children:legalLabel}),/*#__PURE__*/_jsx(\"a\",{className:\"lxcta\",href:\"/contact\",\"aria-current\":contactCurrent?\"page\":undefined,onClick:closeMenu,children:ctaLabel})]})]});}LiquidNavigationRouted.defaultProps={logo:\"https://framerusercontent.com/images/qVNTCWw9ht0PfI0xRT911zyIc.svg\",ctaLabel:\"Request a workflow review\"};addPropertyControls(LiquidNavigationRouted,{logo:{type:ControlType.Image,title:\"Logo\"},ctaLabel:{type:ControlType.String,title:\"CTA\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"LiquidNavigationRouted\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LiquidNavigationRouted.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const STYLE_ID=\"lx-page-transition-css\";const WATCHDOG_MS=900;const clamp=(v,a,b)=>Math.min(b,Math.max(a,v));const pathOf=()=>(window.location.pathname||\"/\").replace(/\\/+$/,\"\")||\"/\";const css=`\n.lx-pt {\n    position: fixed;\n    inset: 0;\n    z-index: 4;\n    pointer-events: none;\n    opacity: 0;\n    will-change: opacity, transform;\n    contain: layout paint;\n}\n\n/* Fast to cover — the reader has already committed by clicking — and slower to\n   release, so the incoming page is handed over rather than dropped. */\n.lx-pt[data-phase=\"covering\"] {\n    opacity: 1;\n    pointer-events: auto;\n    transition: opacity var(--lx-cover) cubic-bezier(.32,.06,.28,1);\n}\n\n.lx-pt[data-phase=\"revealing\"] {\n    opacity: 0;\n    transform: translate3d(0, -1.2%, 0);\n    pointer-events: none;\n    transition:\n        opacity var(--lx-reveal) cubic-bezier(.16,.84,.24,1),\n        transform var(--lx-reveal) cubic-bezier(.16,.84,.24,1);\n}\n\n.lx-pt-rule {\n    position: absolute;\n    left: 0;\n    right: 0;\n    top: 0;\n    height: 1px;\n    transform: scaleX(0);\n    transform-origin: 0 50%;\n    opacity: 0;\n}\n\n/* A hairline runs the width of the veil while it holds — the only motion in\n   the covered moment, so the pause reads as work rather than as a stall. */\n.lx-pt[data-phase=\"covering\"] .lx-pt-rule {\n    opacity: 1;\n    transform: scaleX(1);\n    transition:\n        transform 620ms cubic-bezier(.22,.72,.24,1),\n        opacity 140ms linear;\n}\n\n.lx-pt[data-phase=\"revealing\"] .lx-pt-rule {\n    opacity: 0;\n    transition: opacity 160ms linear;\n}\n\n@media (prefers-reduced-motion: reduce) {\n    .lx-pt[data-phase=\"covering\"],\n    .lx-pt[data-phase=\"revealing\"] {\n        transition-duration: 110ms !important;\n        transform: none !important;\n    }\n    .lx-pt-rule { display: none; }\n}\n`;/**\n * @framerIntrinsicWidth 1\n * @framerIntrinsicHeight 1\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function PageTransition(props){const{coverMs=190,revealMs=420,ink=\"#0B1024\",violet=\"#5148C8\",signal=\"#39FF14\",veil=1,style}=props;const target=RenderTarget.current();const isCanvas=target===RenderTarget.canvas||target===RenderTarget.thumbnail;const[phase,setPhase]=useState(\"idle\");const phaseRef=useRef(\"idle\");phaseRef.current=phase;useEffect(()=>{if(isCanvas||typeof window===\"undefined\")return;let styleEl=document.getElementById(STYLE_ID);let ownsStyle=false;if(!styleEl){styleEl=document.createElement(\"style\");styleEl.id=STYLE_ID;styleEl.textContent=css;document.head.appendChild(styleEl);ownsStyle=true;}const html=document.documentElement;const reduced=window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;const cover=reduced?90:clamp(coverMs,80,600);const reveal=reduced?130:clamp(revealMs,160,1200);let fromPath=pathOf();let watchdog=0;let settle=0;let armed=false;const clearTimers=()=>{window.clearTimeout(watchdog);window.clearTimeout(settle);};const finish=()=>{html.dataset.lxPreloaderState=\"complete\";armed=false;setPhase(\"idle\");};const release=()=>{if(!armed)return;clearTimers();// The handoff. Fired as the veil STARTS to lift, so the incoming\n// page's entrance timeline plays underneath it — the same overlap\n// the arrival sequence uses, so both read as one motion language.\nhtml.dataset.lxPreloaderState=\"exiting\";setPhase(\"revealing\");window.dispatchEvent(new CustomEvent(\"lx:preloader-complete\"));settle=window.setTimeout(finish,reveal+60);};// The click did not navigate after all — take the veil back.\nconst retract=()=>{if(!armed)return;clearTimers();html.dataset.lxPreloaderState=\"complete\";armed=false;setPhase(\"revealing\");settle=window.setTimeout(()=>setPhase(\"idle\"),reveal+60);};// The router is observed directly rather than polled. An earlier\n// version watched location on requestAnimationFrame, and rAF is\n// throttled in a background tab — the watchdog then retracted the veil\n// on a navigation that had in fact already completed. history IS the\n// signal, so there is no loop at all.\nconst onRouteChanged=()=>{if(!armed)return;if(pathOf()===fromPath)return;// Reset scroll while nothing can be seen. Framer's router leaves\n// the previous offset in place, so without this you arrive partway\n// down a page you have never opened.\nwindow.scrollTo(0,0);// Two frames — commit, then paint — with a timeout behind them so\n// a throttled rAF can never hold the veil open.\nlet released=false;const go=()=>{if(released)return;released=true;release();};requestAnimationFrame(()=>requestAnimationFrame(go));window.setTimeout(go,140);};const begin=nextHint=>{if(armed)return;armed=true;fromPath=pathOf();// Hold the incoming page's entrance until we hand off.\nhtml.dataset.lxPreloaderState=\"running\";setPhase(\"covering\");watchdog=window.setTimeout(retract,WATCHDOG_MS);};const onClick=e=>{if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey){return;}const a=e.target?.closest?.(\"a[href]\");if(!a)return;if(a.hasAttribute(\"download\"))return;if(a.target&&a.target!==\"_self\")return;const raw=a.getAttribute(\"href\")||\"\";if(raw.startsWith(\"#\"))return;// in-page jump, not a route change\nlet url;try{url=new URL(a.href,window.location.href);}catch{return;}if(url.origin!==window.location.origin)return;const next=(url.pathname||\"/\").replace(/\\/+$/,\"\")||\"/\";if(next===pathOf())return;// same page\nbegin(next);};// Back / forward: the swap has already happened by the time we hear\n// about it, so cover briefly and release on the next frame rather than\n// waiting for a path change that has been and gone.\nconst onPop=()=>{if(armed)return;armed=true;fromPath=\"\\x00\"// guarantees the path reads as changed\n;html.dataset.lxPreloaderState=\"running\";setPhase(\"covering\");window.scrollTo(0,0);watchdog=window.setTimeout(retract,WATCHDOG_MS);window.setTimeout(()=>requestAnimationFrame(()=>requestAnimationFrame(release)),Math.min(cover,160));};// Framer's router pushes history state; that call IS the route change.\nconst origPush=history.pushState;const origReplace=history.replaceState;history.pushState=function(...args){const r=origPush.apply(this,args);onRouteChanged();return r;};history.replaceState=function(...args){const r=origReplace.apply(this,args);onRouteChanged();return r;};// Capture phase, so the veil is already rising before the router runs.\ndocument.addEventListener(\"click\",onClick,true);window.addEventListener(\"popstate\",onPop);return()=>{clearTimers();history.pushState=origPush;history.replaceState=origReplace;document.removeEventListener(\"click\",onClick,true);window.removeEventListener(\"popstate\",onPop);if(ownsStyle)styleEl?.remove();};},[isCanvas,coverMs,revealMs]);if(isCanvas){return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",\"data-lx-page-transition\":\"canvas\",style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",pointerEvents:\"none\",opacity:0}});}const alpha=clamp(veil,.5,1);return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",\"data-lx-page-transition\":\"root\",style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",pointerEvents:\"none\",opacity:0},children:/*#__PURE__*/_jsx(\"div\",{className:\"lx-pt\",\"data-phase\":phase,style:{\"--lx-cover\":`${clamp(coverMs,80,600)}ms`,\"--lx-reveal\":`${clamp(revealMs,160,1200)}ms`,background:`radial-gradient(62% 48% at 28% 26%, ${violet}2E 0%, transparent 64%),`+`linear-gradient(160deg, ${ink} 0%, #141838 54%, ${ink} 100%)`,opacity:0},children:/*#__PURE__*/_jsx(\"div\",{className:\"lx-pt-rule\",style:{background:`linear-gradient(90deg, ${violet}, ${signal})`,opacity:alpha}})})});}addPropertyControls(PageTransition,{coverMs:{type:ControlType.Number,title:\"Cover\",description:\"How fast the veil rises once a link is clicked.\",defaultValue:190,min:80,max:600,step:10,unit:\"ms\"},revealMs:{type:ControlType.Number,title:\"Reveal\",description:\"The lift. Overlaps the incoming page's entrance.\",defaultValue:420,min:160,max:1200,step:10,unit:\"ms\"},veil:{type:ControlType.Number,title:\"Rule\",defaultValue:1,min:0,max:1,step:.05},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:\"#0B1024\"},violet:{type:ControlType.Color,title:\"Violet\",defaultValue:\"#5148C8\"},signal:{type:ControlType.Color,title:\"Signal\",defaultValue:\"#39FF14\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PageTransition\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"1\",\"framerIntrinsicHeight\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PageTransition.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";const STYLE_ID=\"lx-presence-css\";const MAX_TARGETS=240;const EASE=\"cubic-bezier(.16,.84,.24,1)\";const css=(violet,periwinkle,intensity)=>`\n/* ---------------------------------------------------------------- surfaces */\n/* --lx-p : 0..1 proximity, 1 on contact\n   --lx-x/--lx-y : cursor position within the surface, as a percentage        */\n\n[data-lx-surface] {\n    transition:\n        box-shadow 420ms ${EASE},\n        translate 460ms ${EASE};\n}\n\n[data-lx-surface]::before {\n    content: \"\";\n    position: absolute;\n    inset: 0;\n    border-radius: inherit;\n    pointer-events: none;\n    z-index: 0;\n    opacity: calc(var(--lx-p, 0) * ${intensity});\n    transition: opacity 300ms ${EASE};\n}\n\n/* Light grounds take a violet bloom — a white specular would not read. */\n[data-lx-surface][data-lx-tone=\"light\"]::before {\n    background: radial-gradient(\n        42% 62% at var(--lx-x, 50%) var(--lx-y, 50%),\n        ${violet}1F 0%, ${violet}0A 38%, transparent 72%);\n}\n\n[data-lx-surface][data-lx-tone=\"light\"][data-lx-lit]{\n    box-shadow: 0 2px 6px rgba(17,20,37,.05), 0 18px 42px rgba(81,72,200,.13);\n}\n\n/* Dark grounds take a periwinkle specular, closer to a true highlight. */\n[data-lx-surface][data-lx-tone=\"dark\"]::before {\n    background: radial-gradient(\n        44% 64% at var(--lx-x, 50%) var(--lx-y, 50%),\n        ${periwinkle}26 0%, ${periwinkle}0D 40%, transparent 74%);\n}\n\n[data-lx-surface][data-lx-tone=\"dark\"][data-lx-lit]{\n    box-shadow: 0 2px 8px rgba(3,6,20,.34), 0 22px 52px rgba(3,6,20,.42);\n}\n\n/* Framer owns the border on ::after. Only its colour is borrowed. */\n[data-lx-surface][data-border][data-lx-lit]::after {\n    border-color: var(--lx-edge) !important;\n    transition: border-color 420ms ${EASE};\n}\n\n/* Only surfaces framer-motion is not driving are allowed to rise, so the\n   lift never compounds with an existing tilt or scroll drift. */\n[data-lx-surface][data-lx-free][data-lx-lit]{ translate: 0 -3px; }\n\n/* ----------------------------------------------------------------- actions */\n\n[data-lx-action] {\n    position: relative;\n    translate: var(--lx-ax, 0px) var(--lx-ay, 0px);\n    transition:\n        box-shadow 380ms ${EASE},\n        translate 620ms cubic-bezier(.22,.9,.28,1),\n        filter 320ms ease;\n}\n\n[data-lx-action]::before {\n    content: \"\";\n    position: absolute;\n    inset: 0;\n    border-radius: inherit;\n    pointer-events: none;\n    z-index: 0;\n    opacity: 0;\n    background: linear-gradient(100deg,\n        transparent 32%, rgba(255,255,255,.34) 50%, transparent 68%);\n    background-size: 220% 100%;\n    background-position: 130% 0;\n    transition: opacity 220ms ease;\n}\n\n[data-lx-action][data-lx-lit]::before {\n    opacity: 1;\n    background-position: -30% 0;\n    transition: opacity 160ms ease,\n                background-position 760ms cubic-bezier(.22,.82,.24,1);\n}\n\n[data-lx-action][data-lx-tone=\"dark\"][data-lx-lit]{\n    box-shadow: 0 4px 14px rgba(81,72,200,.30), 0 16px 38px rgba(81,72,200,.26);\n    filter: brightness(1.06);\n}\n\n[data-lx-action][data-lx-tone=\"light\"][data-lx-lit]{\n    box-shadow: 0 3px 10px rgba(17,20,37,.07), 0 14px 34px rgba(81,72,200,.16);\n}\n\n[data-lx-action]:active {\n    translate: var(--lx-ax, 0px) calc(var(--lx-ay, 0px) + 1px);\n    filter: brightness(.97);\n    transition: translate 90ms ease-out, filter 90ms ease-out;\n}\n\n/* The label trails the control, so it parallaxes as the button is drawn. */\n[data-lx-action] > * {\n    position: relative;\n    z-index: 1;\n    translate: calc(var(--lx-ax, 0px) * -.34) calc(var(--lx-ay, 0px) * -.34);\n    transition: translate 760ms cubic-bezier(.22,.9,.28,1);\n}\n\n/* ------------------------------------------------------------------- links */\n\n[data-lx-link] { position: relative; }\n\n[data-lx-link]::before {\n    content: \"\";\n    position: absolute;\n    left: 0; right: 0; bottom: -2px;\n    height: 1px;\n    pointer-events: none;\n    background: currentColor;\n    opacity: .5;\n    transform: scaleX(0);\n    transform-origin: var(--lx-from, 0%) 50%;\n    transition: transform 420ms ${EASE};\n}\n\n[data-lx-link][data-lx-lit]::before { transform: scaleX(1); }\n\n/* --------------------------------------------------------------- restraint */\n\n/* ------------------------------------------------------------------ touch */\n/* The original hid every affordance behind (hover: none) — on a phone the\n   whole reward layer simply did not exist. Only the two things that genuinely\n   require a hovering cursor are dropped: the magnetic pull toward a control\n   that has not been touched yet, and the pre-arrival lift. Everything the\n   surface does — the specular, the border, the shadow — is kept and driven\n   from a touch point instead. */\n@media (hover: none), (pointer: coarse) {\n    [data-lx-action],\n    [data-lx-action] > * { translate: none !important; }\n    [data-lx-surface][data-lx-free][data-lx-lit] { translate: none; }\n}\n\n/* The lean. A finger on a panel presses that corner away, which is the direct\n   equivalent of the cursor tilt on desktop — and arguably truer, because the\n   contact point is real. Perspective has to live in transform for a\n   self-rotation to read as depth at all; a bare rotate is an orthographic\n   squash and looks like nothing. This composes with framer-motion (which owns\n   transform only on nodes marked non-free) and with ClickResponse (which\n   layers additively through the Web Animations API). */\n[data-lx-surface][data-lx-free] {\n    transform: perspective(760px)\n        rotate3d(var(--lx-tx, 0), var(--lx-ty, 0), 0, var(--lx-lean, 0deg));\n    transition: transform 460ms ${EASE};\n}\n\n[data-lx-surface][data-lx-touch] {\n    transition: transform 120ms cubic-bezier(.22,.72,.24,1);\n}\n\n/* The default tap flash is the least premium pixel on any phone. */\n[data-lx-surface],\n[data-lx-action],\n[data-lx-link],\na, button {\n    -webkit-tap-highlight-color: transparent;\n}\n\n/* iOS keeps :hover asserted on the last tapped element until you tap\n   elsewhere, so the navigation stays stuck in its hover state after every\n   visit. These are the only CSS :hover rules on the site. */\n@media (hover: none) {\n    .lxlink:hover { color: #35394d; background: transparent; }\n    .lxcta:hover { background: #5148c8; box-shadow: none; }\n    .lxbar:hover { border-color: rgba(17,20,37,.10); box-shadow: none; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n    [data-lx-surface], [data-lx-action], [data-lx-action] > *,\n    [data-lx-link]::before { transition-duration: 120ms !important; }\n    [data-lx-surface][data-lx-free][data-lx-lit],\n    [data-lx-action],\n    [data-lx-action] > * { translate: none !important; }\n    [data-lx-action][data-lx-lit]::before { background-position: 130% 0; }\n}\n\nhtml[data-lx-motion-quality=\"reduced\"] [data-lx-surface]::before,\nhtml[data-lx-motion-quality=\"reduced\"] [data-lx-action]::before {\n    display: none;\n}\n`;// Relative luminance of a computed background colour; null when the surface\n// is effectively transparent and therefore has no ground of its own.\nfunction luminance(color){const m=color.match(/rgba?\\(([^)]+)\\)/);if(!m)return null;const p=m[1].split(\",\").map(v=>parseFloat(v));if(p.length>3&&p[3]<.35)return null;return(.2126*p[0]+.7152*p[1]+.0722*p[2])/255;}/**\n * @framerIntrinsicWidth 1\n * @framerIntrinsicHeight 1\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function PresenceField(props){const{surfaces=true,actions=true,links=true,intensity=1,proximityRadius=220,magnetStrength=1,lift=true,violet=\"#5148C8\",periwinkle=\"#B8B3FF\",style}=props;const target=RenderTarget.current();const isCanvas=target===RenderTarget.canvas||target===RenderTarget.thumbnail;useEffect(()=>{if(isCanvas||typeof window===\"undefined\")return;// Touch is a first-class input here, not an excluded one. What changes\n// is where the light comes from: a cursor on desktop, and on a phone\n// either the finger that is down or — when nothing is touched — the\n// viewport itself, so panels light as they pass through the reading\n// position rather than sitting inert until tapped.\nconst coarse=!window.matchMedia(\"(hover: hover) and (pointer: fine)\").matches;let styleEl=document.getElementById(STYLE_ID);let ownsStyle=false;if(!styleEl){styleEl=document.createElement(\"style\");styleEl.id=STYLE_ID;document.head.appendChild(styleEl);ownsStyle=true;}styleEl.textContent=css(violet,periwinkle,intensity);const reg=[];let px=-99999;let py=-99999;let moved=false;let raf=0;let running=false;// touch state\nlet touchEl=null;let touchId=-1;let touchStartX=0;let touchStartY=0;let touchLive=false;let frameFlip=false;const TOUCH_SLOP=12// past this the gesture is a scroll, not a press\n;const MAX_LEAN=5.5// degrees\n;// The fixed motion layers, the navigation (which styles its own\n// hovers), and anything explicitly opted out.\n// The fixed motion layers, the navigation (which styles its own\n// hovers), the skip link, and anything explicitly opted out.\nconst SKIP=\"[data-lx-renovation-field],[data-lx-visible-depth],[data-lx-arrival],\"+\"[data-lx-scroll-progress],[data-lx-hover-field],.lxbar,.lxsheet,\"+'.lxskip,[data-lx-hover=\"off\"]';// Framer ships every breakpoint variant in the DOM and hides the\n// inactive ones, so unfiltered discovery picks up controls from\n// layouts that are not on screen — with nonsense geometry.\nconst isVisible=el=>typeof el.checkVisibility===\"function\"?el.checkVisibility({checkVisibilityCSS:true,checkOpacity:false}):el.offsetParent!==null;const taken=el=>el.hasAttribute(\"data-lx-surface\")||el.hasAttribute(\"data-lx-action\")||el.hasAttribute(\"data-lx-link\");// -- discovery, by measurement ---------------------------------------\n// Framer class names are content hashes that change on every publish,\n// so nothing here keys off them.\nconst classify=el=>{if(!isVisible(el))return null;const cs=getComputedStyle(el);const r=el.getBoundingClientRect();if(r.width<8||r.height<8)return null;const bg=luminance(cs.backgroundColor);const radius=parseFloat(cs.borderTopLeftRadius)||0;if(el.tagName===\"A\"||el.tagName===\"BUTTON\"){// Decorative or empty controls are not worth decorating.\nif(!(el.textContent||\"\").trim()&&!el.getAttribute(\"href\")){return null;}const padded=(parseFloat(cs.paddingLeft)||0)>=10&&(parseFloat(cs.paddingTop)||0)>=8;// A control if it has its own ground, a real border, or button\n// padding. Ghost buttons must not be mistaken for text links.\nconst control=bg!==null||el.hasAttribute(\"data-border\")&&radius>=4||padded;if(control)return actions?\"action\":null;return links?\"link\":null;}if(!surfaces)return null;if(bg===null||radius<8)return null;if(r.width<140||r.height<56)return null;// Whole sections are ground, not surfaces.\nif(r.width>window.innerWidth*.92&&r.height>520)return null;// ::before needs a positioned parent, and changing layout to get\n// one is not worth it.\nif(cs.position===\"static\")return null;return\"surface\";};const register=(el,kind)=>{const cs=getComputedStyle(el);const bg=luminance(cs.backgroundColor);const tone=bg!==null&&bg<.42?\"dark\":\"light\";el.setAttribute(`data-lx-${kind}`,\"\");el.setAttribute(\"data-lx-tone\",tone);if(kind===\"surface\"){el.style.setProperty(\"--lx-edge\",tone===\"dark\"?`${periwinkle}59`:`${violet}45`);}reg.push({el,kind,x:0,y:0,w:0,h:0,lit:false,p:0,checkedFree:false});};const discover=()=>{if(reg.length>=MAX_TARGETS)return;// Framer names its meaningful containers, so this stays to a few\n// hundred candidates rather than every div on the page.\nconst candidates=document.querySelectorAll(\"a, button, div[data-framer-name], div[data-border]\");for(const el of candidates){if(reg.length>=MAX_TARGETS)break;if(taken(el)||el.closest(SKIP))continue;const kind=classify(el);if(kind)register(el,kind);}measure();};// -- geometry, cached in page space so scrolling is free -------------\nconst measure=()=>{const sx=window.scrollX;const sy=window.scrollY;for(const t of reg){const r=t.el.getBoundingClientRect();t.x=r.left+sx;t.y=r.top+sy;t.w=r.width;t.h=r.height;}};const clear=t=>{t.p=0;t.lit=false;t.el.style.setProperty(\"--lx-p\",\"0\");t.el.removeAttribute(\"data-lx-lit\");if(t.kind===\"action\"){t.el.style.setProperty(\"--lx-ax\",\"0px\");t.el.style.setProperty(\"--lx-ay\",\"0px\");}if(t.kind===\"surface\"){t.el.style.setProperty(\"--lx-lean\",\"0deg\");t.el.removeAttribute(\"data-lx-touch\");}};// -- the loop --------------------------------------------------------\nconst tick=()=>{raf=0;if(!moved){running=false;return;}moved=false;// A slow light sweep does not need 60fps, and on a phone this loop\n// runs while the page is scrolling — the one moment that must stay\n// smooth. Ambient light updates every other frame; a live touch\n// still gets every frame, because that one is direct manipulation.\nif(coarse&&!touchLive){frameFlip=!frameFlip;if(frameFlip){moved=true;raf=requestAnimationFrame(tick);return;}}// Where the light is. A cursor, a finger, or — with neither — the\n// reading position itself, so panels light as they pass through it.\nlet lightX=px;let lightY=py;if(coarse&&!touchLive){lightX=window.innerWidth*.5;lightY=window.innerHeight*.42;}const cx=lightX+window.scrollX;const cy=lightY+window.scrollY;const vTop=window.scrollY-400;const vBot=window.scrollY+window.innerHeight+400;// On a phone the panels are full-width and stacked, so the\n// desktop radius leaves the light snapping on and off between\n// cards. Scaling it to the viewport turns that into a ramp: the\n// light approaches a panel, holds while it crosses the reading\n// line, and leaves. Measured on the live layout, this lifts the\n// approach from 0.11 to 0.29.\nconst R=coarse?Math.max(proximityRadius,window.innerHeight*.55):Math.max(0,proximityRadius);for(const t of reg){if(t.y+t.h<vTop||t.y>vBot){if(t.p!==0)clear(t);continue;}const dx=Math.max(t.x-cx,0,cx-(t.x+t.w));const dy=Math.max(t.y-cy,0,cy-(t.y+t.h));const inside=dx===0&&dy===0;const dist=Math.sqrt(dx*dx+dy*dy);let p=0;if(inside)p=1;else if(R>0&&dist<R){const k=1-dist/R;p=k*k*.55;}if(Math.abs(p-t.p)>.004){t.p=p;t.el.style.setProperty(\"--lx-p\",p.toFixed(3));}if(inside!==t.lit){t.lit=inside;if(inside){// Decided on first contact, not at discovery, because\n// framer-motion may not have written its transform yet\n// when this component mounts.\nif(!t.checkedFree){t.checkedFree=true;if(lift&&t.kind===\"surface\"&&!t.el.style.transform){t.el.setAttribute(\"data-lx-free\",\"\");}}t.el.setAttribute(\"data-lx-lit\",\"\");}else{t.el.removeAttribute(\"data-lx-lit\");}}if(t.kind===\"surface\"&&touchEl===t&&touchLive){// Lean the panel away under the contact point. The axis is\n// perpendicular to the direction of the finger, so the\n// touched corner is the one that goes back.\nconst nx=(cx-(t.x+t.w/2))/Math.max(1,t.w/2);const ny=(cy-(t.y+t.h/2))/Math.max(1,t.h/2);const mag=Math.min(1,Math.hypot(nx,ny));const len=Math.hypot(nx,ny)||1;t.el.style.setProperty(\"--lx-tx\",(-ny/len).toFixed(3));t.el.style.setProperty(\"--lx-ty\",(nx/len).toFixed(3));t.el.style.setProperty(\"--lx-lean\",`${(mag*MAX_LEAN).toFixed(2)}deg`);}if(t.kind===\"surface\"&&p>0){const rx=(cx-t.x)/t.w*100;const ry=(cy-t.y)/t.h*100;t.el.style.setProperty(\"--lx-x\",`${Math.max(-20,Math.min(120,rx)).toFixed(1)}%`);t.el.style.setProperty(\"--lx-y\",`${Math.max(-20,Math.min(120,ry)).toFixed(1)}%`);}if(t.kind===\"action\"){// Direction is a unit vector toward the cursor and the\n// magnitude comes only from proximity. Scaling raw\n// distance instead would leave the control already at full\n// offset the moment it entered range, which reads as a\n// lunge rather than an attraction.\nconst ddx=cx-(t.x+t.w/2);const ddy=cy-(t.y+t.h/2);const len=Math.hypot(ddx,ddy)||1;// Gentle tracking once the cursor is over the control;\n// a proportional pull while it is still approaching.\nconst strength=inside?.5:p/.55;const mag=7*magnetStrength*strength;t.el.style.setProperty(\"--lx-ax\",`${(ddx/len*mag).toFixed(2)}px`);t.el.style.setProperty(\"--lx-ay\",`${(ddy/len*mag).toFixed(2)}px`);}}if(running)raf=requestAnimationFrame(tick);};const wake=()=>{moved=true;if(!running){running=true;raf=requestAnimationFrame(tick);}};const onMove=e=>{px=e.clientX;py=e.clientY;wake();};// The cursor leaving the window stops pointermove, so states would\n// otherwise stick. Park it far away and run one last pass.\nconst onLeave=()=>{px=-99999;py=-99999;wake();};// ---- touch ---------------------------------------------------------\n// Nothing here ever calls preventDefault: a press must never be able to\n// block a scroll. If the finger travels past the slop the gesture is\n// reclassified as a scroll and the panel is released mid-gesture.\nconst releaseTouch=()=>{if(touchEl){touchEl.el.style.setProperty(\"--lx-lean\",\"0deg\");touchEl.el.removeAttribute(\"data-lx-touch\");touchEl.lit=false;touchEl.el.removeAttribute(\"data-lx-lit\");}touchEl=null;touchId=-1;touchLive=false;wake();};const onDown=e=>{if(e.pointerType===\"mouse\")return;const el=e.target?.closest?.(\"[data-lx-surface],[data-lx-action],[data-lx-link]\");if(!el)return;const t=reg.find(x=>x.el===el);if(!t)return;touchEl=t;touchId=e.pointerId;touchStartX=e.clientX;touchStartY=e.clientY;touchLive=true;px=e.clientX;py=e.clientY;if(t.kind===\"surface\")el.setAttribute(\"data-lx-touch\",\"\");if(t.kind===\"link\"){const r=el.getBoundingClientRect();el.style.setProperty(\"--lx-from\",e.clientX<r.left+r.width/2?\"0%\":\"100%\");}el.setAttribute(\"data-lx-lit\",\"\");t.lit=true;wake();};const onTouchMove=e=>{if(!touchLive||e.pointerId!==touchId)return;if(Math.abs(e.clientX-touchStartX)>TOUCH_SLOP||Math.abs(e.clientY-touchStartY)>TOUCH_SLOP){releaseTouch()// this is a scroll, not a press\n;return;}px=e.clientX;py=e.clientY;wake();};const onUp=e=>{if(e.pointerId!==touchId)return;releaseTouch();};// The underline grows from the side the cursor arrived on.\nconst onOver=e=>{const el=e.target?.closest?.(\"[data-lx-link]\");if(!el)return;const r=el.getBoundingClientRect();el.style.setProperty(\"--lx-from\",e.clientX<r.left+r.width/2?\"0%\":\"100%\");};let moTimer=0;const mo=new MutationObserver(()=>{window.clearTimeout(moTimer);moTimer=window.setTimeout(discover,400);});let reTimer=0;const remeasure=()=>{window.clearTimeout(reTimer);reTimer=window.setTimeout(measure,140);};// Discovery reads computed style for a few hundred nodes, so it waits\n// until the arrival sequence has finished rather than competing with it.\nlet startTimer=0;const start=()=>{discover();window.addEventListener(\"pointermove\",onMove,{passive:true});window.addEventListener(\"pointerover\",onOver,{passive:true});document.addEventListener(\"pointerleave\",onLeave,{passive:true});window.addEventListener(\"blur\",onLeave);window.addEventListener(\"resize\",remeasure);window.addEventListener(\"scroll\",remeasure,{passive:true});if(coarse){window.addEventListener(\"pointerdown\",onDown,{passive:true});window.addEventListener(\"pointermove\",onTouchMove,{passive:true});window.addEventListener(\"pointerup\",onUp,{passive:true});window.addEventListener(\"pointercancel\",onUp,{passive:true});// Scrolling is the phone's cursor: it moves the light.\nwindow.addEventListener(\"scroll\",wake,{passive:true});}mo.observe(document.body,{childList:true,subtree:true});};const s=document.documentElement.dataset.lxPreloaderState;if(s===\"complete\"||s===\"skipped\"){startTimer=window.setTimeout(start,60);}else{let done=false;const go=()=>{if(done)return;done=true;window.removeEventListener(\"lx:preloader-complete\",go);startTimer=window.setTimeout(start,120);};window.addEventListener(\"lx:preloader-complete\",go,{once:true});// Never depend on the arrival actually being present.\nstartTimer=window.setTimeout(go,2200);}return()=>{window.clearTimeout(startTimer);window.removeEventListener(\"pointermove\",onMove);window.removeEventListener(\"pointerover\",onOver);window.removeEventListener(\"pointerdown\",onDown);window.removeEventListener(\"pointermove\",onTouchMove);window.removeEventListener(\"pointerup\",onUp);window.removeEventListener(\"pointercancel\",onUp);window.removeEventListener(\"scroll\",wake);document.removeEventListener(\"pointerleave\",onLeave);window.removeEventListener(\"blur\",onLeave);window.removeEventListener(\"resize\",remeasure);window.removeEventListener(\"scroll\",remeasure);mo.disconnect();window.clearTimeout(moTimer);window.clearTimeout(reTimer);if(raf)cancelAnimationFrame(raf);for(const t of reg){t.el.removeAttribute(`data-lx-${t.kind}`);t.el.removeAttribute(\"data-lx-tone\");t.el.removeAttribute(\"data-lx-lit\");t.el.removeAttribute(\"data-lx-free\");for(const v of[\"--lx-p\",\"--lx-x\",\"--lx-y\",\"--lx-ax\",\"--lx-ay\",\"--lx-edge\",\"--lx-from\",\"--lx-tx\",\"--lx-ty\",\"--lx-lean\"]){t.el.style.removeProperty(v);}}if(ownsStyle)styleEl?.remove();};},[isCanvas,surfaces,actions,links,intensity,proximityRadius,magnetStrength,lift,violet,periwinkle]);return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",\"data-lx-hover-field\":\"root\",style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",pointerEvents:\"none\",opacity:0}});}addPropertyControls(PresenceField,{surfaces:{type:ControlType.Boolean,title:\"Surfaces\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},actions:{type:ControlType.Boolean,title:\"Buttons\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},links:{type:ControlType.Boolean,title:\"Links\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},intensity:{type:ControlType.Number,title:\"Light\",defaultValue:1,min:0,max:2,step:.05},proximityRadius:{type:ControlType.Number,title:\"Presence\",description:\"How far ahead of the cursor surfaces begin to respond.\",defaultValue:220,min:0,max:520,step:10,unit:\"px\"},magnetStrength:{type:ControlType.Number,title:\"Magnet\",defaultValue:1,min:0,max:2,step:.05},lift:{type:ControlType.Boolean,title:\"Lift\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},violet:{type:ControlType.Color,title:\"Violet\",defaultValue:\"#5148C8\"},periwinkle:{type:ControlType.Color,title:\"Periwinkle\",defaultValue:\"#B8B3FF\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PresenceField\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicHeight\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PresenceField.map","// @ts-nocheck\n//\n// Type checking is off for this file by design. The physics engine below lives\n// between the ==LX-ENGINE-START/END== sentinels and is written as plain,\n// un-annotated JavaScript so the verification harness can lift it out verbatim\n// and run the EXACT shipped code against a real DOM — no regex de-typing, no\n// second copy that can drift. It is verified by 47 runtime checks (spring\n// curve, frame-rate independence, fixed-layer stability, containing-block\n// safety, device classification, reduced-motion, teardown) rather than by tsc.\n// See scrollharness.cjs / springmath.cjs.\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect}from\"react\";//\n// ScrollMomentum — the weight of the page.\n//\n// LendlyX already had a rich motion stack (arrival, hover, press, reveal,\n// depth) but the one thing that runs the entire time a visitor is on the site —\n// the act of scrolling — was raw browser default. This layer owns it.\n//\n// Three things happen here, in order of importance:\n//\n//   1. GLIDE. Real scroll position is driven by a critically damped spring\n//      instead of jumping straight to wherever the wheel says. A mouse wheel\n//      stops being a 100px staircase and becomes a flywheel: you spin it, the\n//      page keeps travelling, and it settles. Because the spring carries\n//      velocity, letting go mid-flick does not stop the page — it coasts. That\n//      coast is the thing that makes stopping feel wrong.\n//\n//   2. LEAN. Content blocks lag against travel by an amount set by their size,\n//      so the page separates into depth while it moves and springs back with a\n//      small overshoot when it lands. The overshoot is the \"thunk\" of arrival —\n//      a payoff at the end of every scroll, not just at section boundaries.\n//\n//   3. BOUNCE. Momentum that runs into the top or bottom of the document is not\n//      discarded; it is absorbed as a compression and released.\n//\n// Constraints this is built around, all of which are easy to get wrong:\n//\n//   - It lerps the REAL scroll offset (window.scrollTo) and never transforms a\n//     wrapper element. This site has five position:fixed shell layers, and the\n//     wrapper-transform technique used by most smooth-scroll libraries breaks\n//     position:fixed — it would destroy the entire motion stack. Driving real\n//     scroll also keeps ScrollProgress, FlowChoreography and BlueprintHouse in\n//     sync for free, because they all read real scroll position.\n//\n//   - Trackpads already have OS-level momentum. Smoothing them as hard as a\n//     mouse wheel gives doubled inertia, which reads as lag, not luxury. The\n//     wheel stream is classified continuously and the spring is retuned per\n//     device: heavy for a mouse, light for a trackpad.\n//\n//   - Touch is never hijacked. Native rubber-band momentum beats anything JS\n//     can do. On coarse pointers the glide is off and only the expression\n//     layers run, driven by native scroll.\n//\n//   - Anything that moves the page from outside — anchor links, find-in-page,\n//     focus, scrollbar drags, back/forward restore, Framer route changes — is\n//     detected by comparing actual scroll against what was last written, and\n//     the spring adopts it instead of yanking the visitor back.\n//\n//   - Element movement is written to the `translate` property, never\n//     `transform`. ~389 elements on this site carry an inline framer-motion\n//     transform; `translate` composes with it rather than clobbering it.\n//\n//   - prefers-reduced-motion turns the whole thing off before a single\n//     listener is attached.\n//\n// ==LX-ENGINE-START==\nfunction createScrollMomentum(cfg){var C=cfg||{};var doc=document;var html=doc.documentElement;var win=window;var noop=function(){};var clamp=function(v,lo,hi){return v<lo?lo:v>hi?hi:v;};// ---------------------------------------------------------------- gates\nvar mReduce=win.matchMedia(\"(prefers-reduced-motion: reduce)\");var mCoarse=win.matchMedia(\"(pointer: coarse)\");var quality=html.getAttribute(\"data-lx-motion-quality\")||\"full\";if(mReduce.matches||quality===\"off\")return noop;// Glide only makes sense with a real wheel. Touch keeps native momentum.\nvar canGlide=C.glide!==false&&!mCoarse.matches;var expressionOn=(C.lean==null?1:C.lean)>0&&quality!==\"lite\";// ------------------------------------------------------------ constants\nvar WEIGHT=clamp(C.weight==null?1:C.weight,.25,2);var LEAN_PX=clamp(C.lean==null?1:C.lean,0,2)*14;var LEAN_CAP=22// never let a fling tear the layout apart\n;var OMEGA_MOUSE=10.5// heavy flywheel — converts the 100px staircase\n;var OMEGA_PAD=26// light — only de-staircases, OS momentum survives\n;var OMEGA_KEY=14// deliberate, readable travel\n;var OMEGA_ANCHOR=9// long cinematic travel to an in-page target\n;var UP_STIFFEN=1.18// going back up settles crisper than going down\n;var V_NORM=2400// px/s that counts as \"full\" velocity\n;var DT_MAX=.064// a stall must never fling the page\n;var REST_V=.35// px/s below which we are stopped\n;var REST_D=.12// px from target that counts as arrived\n;var EXTERNAL=2.5// px of unexplained movement = someone else scrolled\n;var LEAN_W=16// lean spring frequency\n;var LEAN_Z=.5// underdamped on purpose: ~16% overshoot on settle\n;var BOUNCE_W=15;var BOUNCE_Z=.5;var BOUNCE_VMAX=333// caps the end bounce at roughly 14px\n;var MAX_BLOCKS=60;// ---------------------------------------------------------------- state\nvar pos=win.scrollY||0;var vel=0;var target=pos;var maxScroll=0;var needMeasure=true;var expectedY=null;var omega=OMEGA_MOUSE;var raf=0;var last=0;var busV=0;var leanNow=0;var leanVel=0;var bounceNow=0;var bounceVel=0;var yieldUntil=0;var blocks=[];var slowFrames=0;var dead=false;var timers=[];// --------------------------------------------------- device classifier\n// Trackpads emit dense, small, often fractional deltas. Mouse wheels emit\n// sparse, large, round ones. Scored with hysteresis so it cannot flicker\n// in the middle of a gesture.\nvar padScore=-1;var lastWheelT=0;var feedDevice=function(e,t){var ad=Math.abs(e.deltaY);var s=0;if(e.deltaMode!==0)s=-1;else if(ad>0&&ad%1!==0)s=1;else if(ad>0&&ad<12)s=1;else if(ad>=40)s=-1;var gap=t-lastWheelT;if(gap>0&&gap<30)s+=.5;else if(gap>90)s-=.5;lastWheelT=t;padScore=clamp(padScore*.82+clamp(s,-1,1)*.18,-1,1);};var isPad=function(){return padScore>0;};// Scroll distance the document cannot absorb is not discarded — it becomes\n// compression. This is the only place the end bounce can be seeded, since\n// target is clamped to the document and so the spring never travels past\n// the edge to detect an impact of its own.\nvar setTarget=function(want){var next=clamp(want,0,maxScroll);var lost=want-next;target=next;if(lost!==0&&Math.abs(pos-next)<6&&Math.abs(bounceVel)<40)bounceVel=clamp(lost*6,-BOUNCE_VMAX,BOUNCE_VMAX);};// Any input must act from where the page actually IS. Without this, a\n// visitor landing on a #hash, or a browser restoring scroll on reload or\n// back, leaves target stale at its construction value — and the first wheel\n// click yanks the page back to the top. The scroll listener alone does not\n// cover it, because before the first frame expectedY is still null.\nvar syncIfDrifted=function(){var actual=win.scrollY;if(expectedY===null||Math.abs(actual-expectedY)>EXTERNAL){pos=actual;target=clamp(actual,0,maxScroll);vel=0;expectedY=actual;}};// ----------------------------------------------------------- the spring\n// Analytic critically damped step. Unconditionally stable at any dt, which\n// matters because dt spikes whenever the tab is backgrounded or the main\n// thread janks. The naive `x += (t - x) * k` is frame-rate dependent and\n// behaves differently on a 60Hz display than on a 120Hz one; this does not.\nvar springStep=function(x,v,to,w,dt){var d=x-to;var e=Math.exp(-w*dt);var b=v+w*d;return[to+(d+b*dt)*e,(v-b*w*dt)*e];};var measure=function(){maxScroll=Math.max(0,(doc.scrollingElement||html).scrollHeight-win.innerHeight);needMeasure=false;};// ------------------------------------------------------ content blocks\n// Discovered by measurement, never by class name: Framer's class names are\n// content hashes that change on every publish. Framer also ships all three\n// breakpoint variants in the DOM and hides the inactive two, so anything\n// that skips the visibility check picks up geometry from off-screen\n// layouts (a button at y=98073, w=39).\nvar hasFixedAncestor=function(el){var n=el.parentElement;var hops=0;while(n&&n!==doc.body&&hops++<24){var p=win.getComputedStyle(n).position;if(p===\"fixed\"||p===\"sticky\")return true;n=n.parentElement;}return false;};var visible=function(el){if(el.checkVisibility)return el.checkVisibility({checkVisibilityCSS:true});return el.offsetParent!==null;};// Writing `translate` turns an element into a containing block for its\n// absolutely positioned descendants. If it was not one already, that\n// REPOSITIONS them — measured on a harness page where translating one\n// section captured an off-screen descendant and grew the document from\n// 7,376px to 104,819px. Framer positions absolutely everywhere and parks\n// the inactive breakpoint variants at coordinates like y=98073, so this is\n// not hypothetical. Only elements that are already a containing block are\n// touched, which makes the write positionally inert.\nvar establishesCB=function(cs){if(cs.position!==\"static\")return true;if(cs.transform&&cs.transform!==\"none\")return true;if(cs.filter&&cs.filter!==\"none\")return true;if(cs.perspective&&cs.perspective!==\"none\")return true;if(cs.contain&&/layout|paint|strict|content/.test(cs.contain))return true;if(cs.willChange&&/transform|translate|filter|perspective/.test(cs.willChange))return true;return false;};var releaseBlocks=function(){for(var i=0;i<blocks.length;i++){var b=blocks[i];if(!b.el.isConnected)continue;if(b.wrote!==0)b.el.style.translate=\"\";if(b.hinted)b.el.style.willChange=\"\";b.wrote=0;b.hinted=false;}};var discover=function(){releaseBlocks()// so our own writes do not fail the translate check\n;blocks=[];if(!expressionOn||dead)return;var vw=win.innerWidth;var vh=win.innerHeight;var area=vw*vh;var docH=(doc.scrollingElement||html).scrollHeight;var all=doc.body.querySelectorAll(\"*\");var cand=[];for(var i=0;i<all.length&&cand.length<200;i++){var el=all[i];// nav and footer chrome style their own motion; skip the a11y link\nif(el.closest&&el.closest(\".lxbar,.lxsheet,.lxskip\"))continue;var h=el.offsetHeight;var w=el.offsetWidth;if(h<100||h>1e3||w<vw*.22)continue;if(!visible(el))continue;// framer-motion owns `transform`; `translate` is a free channel,\n// but if anything else is already writing it, leave the element be\nif(el.style&&el.style.translate)continue;// Framer ships all three breakpoint variants and parks the two\n// inactive ones far off-screen, where checkVisibility still calls\n// them visible. Anything outside the document is not ours.\nvar r=el.getBoundingClientRect();var top=r.top+win.scrollY;if(top<-2e3||top>docH+2e3)continue;if(r.right<-vw||r.left>vw*2)continue;var cs=win.getComputedStyle(el);if(cs.position===\"fixed\"||cs.position===\"sticky\")continue;if(!establishesCB(cs))continue;if(hasFixedAncestor(el))continue;cand.push({el:el,h:h,w:w});}// Innermost wins. A section that contains a card is not the thing that\n// should lag — the card is. Picking outermost gives every block the\n// same clamped depth, which is a uniform shift of the whole page: the\n// parallax cancels out and the effect disappears.\nvar chosen=[];for(var i=0;i<cand.length&&chosen.length<MAX_BLOCKS;i++){var el=cand[i].el;var wraps=false;for(var j=0;j<cand.length;j++){if(j!==i&&el.contains(cand[j].el)){wraps=true;break;}}if(wraps)continue;// near/far: a small card reads as closer than a full-width panel,\n// so it lags further behind the travel\nvar depth=clamp(1-cand[i].h*cand[i].w/(area*.5),.15,1);chosen.push({el:el,depth:depth,wrote:0,hinted:false});}blocks=chosen;};var rediscoverSoon=function(ms){timers.push(win.setTimeout(function(){if(!dead){needMeasure=true;discover();}},ms));};var wake=function(){if(dead||raf)return;// waking after a sleep means dt is meaningless for derived velocity\nif(!canGlide)pos=win.scrollY;last=0;raf=win.requestAnimationFrame(frame);};// ------------------------------------------------------------- the loop\nfunction frame(now){raf=0;if(dead)return;var dt=last?clamp((now-last)/1e3,5e-4,DT_MAX):1/60;last=now;var t0=now;if(needMeasure)measure();var actual=win.scrollY;// Someone other than us moved the page — an anchor, find-in-page, a\n// focus jump, a scrollbar drag, back/forward, a Framer route change.\n// Adopt their position instead of fighting it.\n// The first frame is itself an \"external\" situation: we have no basis\n// for a target other than where the page actually is. Adopting pos but\n// leaving target at its construction value makes the spring drag the\n// page back to the top the moment the loop starts.\nif(expectedY===null||Math.abs(actual-expectedY)>EXTERNAL){pos=actual;target=clamp(actual,0,maxScroll);vel=0;}if(canGlide){var w=omega;if(target<pos)w*=UP_STIFFEN;var r=springStep(pos,vel,target,w,dt);pos=r[0];vel=r[1];// safety clamp; the edge impact itself is seeded at the input,\n// because target is clamped before it ever gets here\nif(pos<0||pos>maxScroll){pos=pos<0?0:maxScroll;target=pos;vel=0;}if(Math.abs(pos-actual)>=.05){win.scrollTo(0,pos);expectedY=win.scrollY;}else{expectedY=actual;}}else{// native scroll drives us; derive velocity from position\nvar dy=actual-pos;pos=actual;vel=vel*.72+dy/dt*.28;expectedY=actual;}// ------------------------------------------------------ velocity bus\nvar nv=clamp(vel/V_NORM,-1,1);if(Math.abs(nv-busV)>.008){busV=nv;html.style.setProperty(\"--lx-sv\",nv.toFixed(3));html.style.setProperty(\"--lx-sva\",Math.abs(nv).toFixed(3));}// ------------------------------------------------------- expression\n// One underdamped spring chases normalized velocity; every block is\n// that single value times its own depth. Underdamped on purpose — the\n// overshoot as it crosses zero is the settle you feel when you stop.\n// Sub-stepped at 8ms so a 64ms stall frame cannot blow the spring up.\nvar sub=dt;var lk=LEAN_W*LEAN_W;var lc=2*LEAN_Z*LEAN_W;var bk=BOUNCE_W*BOUNCE_W;var bc=2*BOUNCE_Z*BOUNCE_W;while(sub>0){var s=sub>.008?.008:sub;sub-=s;leanVel+=(-lk*(leanNow-nv)-lc*leanVel)*s;leanNow+=leanVel*s;bounceVel+=(-bk*bounceNow-bc*bounceVel)*s;bounceNow+=bounceVel*s;}if(expressionOn){var moving=Math.abs(leanNow)>.004||Math.abs(bounceNow)>.05;var stale=0;for(var i=0;i<blocks.length;i++){var b=blocks[i];if(!b.el.isConnected){stale++;continue;}var ty=clamp(-LEAN_PX*b.depth*leanNow-bounceNow*b.depth,-LEAN_CAP,LEAN_CAP);if(Math.abs(ty-b.wrote)>.05){b.wrote=ty;b.el.style.translate=\"0 \"+ty.toFixed(2)+\"px\";}if(moving!==b.hinted){b.el.style.willChange=moving?\"translate\":\"\";b.hinted=moving;}}// a route change swaps the content out from under us\nif(blocks.length&&stale>blocks.length*.25)rediscoverSoon(120);}// ------------------------------------------------------ rest & guard\nvar restingScroll=!canGlide||Math.abs(vel)<REST_V&&Math.abs(pos-target)<REST_D;var restingLean=Math.abs(leanNow)<.002&&Math.abs(leanVel)<.02&&Math.abs(bounceNow)<.03&&Math.abs(bounceVel)<.3;// Frame budget: the glide is the point, the expression is the garnish.\n// If we cannot afford both, drop the garnish and keep scrolling well.\nvar cost=(win.performance?win.performance.now():now)-t0;if(cost>6)slowFrames++;else slowFrames=Math.max(0,slowFrames-1);if(slowFrames>45&&expressionOn){expressionOn=false;releaseBlocks();blocks=[];html.setAttribute(\"data-lx-momentum-degraded\",\"1\");}if(restingScroll&&restingLean){if(canGlide){pos=target;vel=0;}leanNow=leanVel=bounceNow=bounceVel=0;busV=0;html.style.setProperty(\"--lx-sv\",\"0\");html.style.setProperty(\"--lx-sva\",\"0\");html.removeAttribute(\"data-lx-scrolling\");releaseBlocks();return;}html.setAttribute(\"data-lx-scrolling\",vel>0?\"down\":\"up\");raf=win.requestAnimationFrame(frame);}// ------------------------------------------------------------ nested\n// A wheel over a genuinely scrollable sub-region belongs to that region.\n// The ancestor chain is structural, so it is cached per element — a\n// trackpad fires ~100 wheel events a second and re-walking with\n// getComputedStyle every time would cost more than the whole animation.\nvar chainCache=win.WeakMap?new win.WeakMap:null;var scrollChain=function(node){if(chainCache&&chainCache.has(node))return chainCache.get(node);var out=[];var n=node;var hops=0;while(n&&n!==doc.body&&n!==html&&hops++<20){if(n.nodeType===1){var oy=win.getComputedStyle(n).overflowY;if(oy===\"auto\"||oy===\"scroll\")out.push(n);}n=n.parentElement||n.parentNode;}if(chainCache&&node&&node.nodeType===1)chainCache.set(node,out);return out;};var nestedScroller=function(node,dir){if(!node||node.nodeType!==1)return false;var chain=scrollChain(node);for(var i=0;i<chain.length;i++){var n=chain[i];if(n.scrollHeight-n.clientHeight<=2)continue;if(dir>0?n.scrollHeight-n.clientHeight-n.scrollTop>1:n.scrollTop>1)return true;}return false;};// -------------------------------------------------------------- inputs\nvar onWheel=function(e){if(!canGlide||dead)return;if(e.ctrlKey)return;// pinch zoom\nif(e.defaultPrevented)return;var t=e.timeStamp||(win.performance?win.performance.now():0);if(t<yieldUntil)return;var dir=e.deltaY>0?1:-1;if(nestedScroller(e.target,dir)){yieldUntil=t+220;return;}feedDevice(e,t);var unit=e.deltaMode===1?16:e.deltaMode===2?win.innerHeight*.9:1;var dy=e.deltaY*unit;if(!dy)return;e.preventDefault();if(needMeasure)measure();syncIfDrifted();omega=clamp((isPad()?OMEGA_PAD:OMEGA_MOUSE)/WEIGHT,4,60);setTarget(target+dy);wake();};var editable=function(el){if(!el||el.nodeType!==1)return false;var tag=el.tagName;return tag===\"INPUT\"||tag===\"TEXTAREA\"||tag===\"SELECT\"||el.isContentEditable;};var onKey=function(e){if(!canGlide||dead||C.keyboard===false)return;if(e.defaultPrevented||e.metaKey||e.ctrlKey||e.altKey)return;if(editable(e.target))return;if(needMeasure)measure();var vh=win.innerHeight;var step=0;var abs=null;var k=e.key;if(k===\"PageDown\")step=vh*.85;else if(k===\"PageUp\")step=-vh*.85;else if(k===\"ArrowDown\")step=96;else if(k===\"ArrowUp\")step=-96;else if(k===\" \"||k===\"Spacebar\")step=e.shiftKey?-vh*.85:vh*.85;else if(k===\"Home\")abs=0;else if(k===\"End\")abs=maxScroll;else return;if(nestedScroller(e.target,step>0?1:-1))return;e.preventDefault();syncIfDrifted();omega=clamp(OMEGA_KEY/WEIGHT,4,60);setTarget(abs===null?target+step:abs);wake();};// In-page anchors would otherwise register as an external scroll and land\n// as a hard cut. Route them through the same spring instead — including\n// the accessibility skip link.\nvar onClick=function(e){if(!canGlide||dead)return;if(e.defaultPrevented||e.button!==0)return;if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;var a=e.target&&e.target.closest?e.target.closest(\"a[href]\"):null;if(!a)return;var href=a.getAttribute(\"href\")||\"\";if(href.charAt(0)!==\"#\"||href.length<2)return;var id=href.slice(1);var dest=null;try{dest=doc.getElementById(id);if(!dest)dest=doc.querySelector(\"[name='\"+CSS.escape(id)+\"']\");}catch(err){dest=doc.getElementById(id);}if(!dest)return;e.preventDefault();if(needMeasure)measure();syncIfDrifted();var top=dest.getBoundingClientRect().top+win.scrollY;omega=clamp(OMEGA_ANCHOR/WEIGHT,4,60);target=clamp(top,0,maxScroll)// no bounce for a deliberate jump\n;// keep focus behaviour intact for keyboard and screen reader users\nif(dest.tabIndex<0)dest.setAttribute(\"tabindex\",\"-1\");try{dest.focus({preventScroll:true});}catch(err){}try{win.history.replaceState(null,\"\",href);}catch(err){}wake();};// Native scroll still drives the expression layer on touch, and keeps us\n// honest if the browser scrolls without a wheel event.\nvar onScroll=function(){if(dead)return;if(!canGlide){wake();}else if(expectedY===null||Math.abs(win.scrollY-expectedY)>EXTERNAL){wake();}};var onResize=function(){needMeasure=true;discover();wake();};// --------------------------------------------------------------- wiring\nvar prevBehavior=html.style.scrollBehavior;if(canGlide)html.style.scrollBehavior=\"auto\";html.setAttribute(\"data-lx-momentum\",canGlide?\"glide\":\"native\");win.addEventListener(\"wheel\",onWheel,{passive:false});win.addEventListener(\"keydown\",onKey,{passive:false});doc.addEventListener(\"click\",onClick,true);win.addEventListener(\"scroll\",onScroll,{passive:true});win.addEventListener(\"resize\",onResize,{passive:true});var ro=null;if(win.ResizeObserver){ro=new win.ResizeObserver(function(){needMeasure=true;});try{ro.observe(doc.body);}catch(err){}}var onReduceChange=function(){if(mReduce.matches)destroy();};if(mReduce.addEventListener)mReduce.addEventListener(\"change\",onReduceChange);measure();discover();// Framer hydrates, then the arrival sequence hands off at ~820ms; the DOM\n// that exists at mount is not the DOM the visitor will scroll.\nrediscoverSoon(900);rediscoverSoon(2200);function destroy(){if(dead)return;dead=true;if(raf)win.cancelAnimationFrame(raf);raf=0;for(var i=0;i<timers.length;i++)win.clearTimeout(timers[i]);win.removeEventListener(\"wheel\",onWheel);win.removeEventListener(\"keydown\",onKey);doc.removeEventListener(\"click\",onClick,true);win.removeEventListener(\"scroll\",onScroll);win.removeEventListener(\"resize\",onResize);if(mReduce.removeEventListener)mReduce.removeEventListener(\"change\",onReduceChange);if(ro)ro.disconnect();releaseBlocks();blocks=[];html.style.scrollBehavior=prevBehavior;html.removeAttribute(\"data-lx-momentum\");html.removeAttribute(\"data-lx-scrolling\");html.removeAttribute(\"data-lx-momentum-degraded\");html.style.removeProperty(\"--lx-sv\");html.style.removeProperty(\"--lx-sva\");}return destroy;}// ==LX-ENGINE-END==\n/**\n * Scroll Momentum\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 120\n * @framerIntrinsicHeight 40\n * @framerDisableUnlink\n */export default function ScrollMomentum(props){const{glide,weight,lean,keyboard,style}=props;useEffect(()=>{const rt=RenderTarget.current();// Never hijack the editor canvas, a thumbnail, or an export render.\nif(rt===RenderTarget.canvas||rt===RenderTarget.thumbnail||rt===RenderTarget.export)return;if(typeof window===\"undefined\")return;return createScrollMomentum({glide,weight,lean,keyboard});},[glide,weight,lean,keyboard]);return /*#__PURE__*/_jsx(\"div\",{style:{...style,position:\"fixed\",top:0,left:0,width:0,height:0,pointerEvents:\"none\",opacity:0}});}ScrollMomentum.defaultProps={glide:true,weight:1,lean:1,keyboard:true};addPropertyControls(ScrollMomentum,{glide:{type:ControlType.Boolean,title:\"Glide\",description:\"Spring-driven scroll. Off falls back to the browser default.\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},weight:{type:ControlType.Number,title:\"Weight\",description:\"How much the page carries. Higher is heavier and slower to settle.\",defaultValue:1,min:.25,max:2,step:.05},lean:{type:ControlType.Number,title:\"Lean\",description:\"How far content lags against travel, and how much it overshoots on landing. 0 disables.\",defaultValue:1,min:0,max:2,step:.05},keyboard:{type:ControlType.Boolean,title:\"Keyboard\",description:\"Give space, page keys and arrows the same physics.\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollMomentum\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"120\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\",\"framerIntrinsicHeight\":\"40\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollMomentum.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";export default function ScrollProgress(props){const{violet=\"#5148C8\",blue=\"#6FA8FF\",green=\"#39FF14\",thickness=2,glow=true,style}=props;const isStatic=useIsStaticRenderer();const barRef=useRef(null);useEffect(()=>{if(isStatic||typeof window===\"undefined\")return;const bar=barRef.current;if(!bar)return;let raf=0;let running=!document.hidden;const measure=()=>{const doc=document.documentElement;const max=Math.max(1,doc.scrollHeight-window.innerHeight);const p=Math.max(0,Math.min(1,(window.scrollY||0)/max));bar.style.transform=`scaleX(${p.toFixed(4)})`;raf=0;};const onScroll=()=>{if(raf||!running)return;raf=requestAnimationFrame(measure);};const onVis=()=>{running=!document.hidden;if(running)onScroll();};measure();window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"resize\",onScroll,{passive:true});document.addEventListener(\"visibilitychange\",onVis);return()=>{cancelAnimationFrame(raf);window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"resize\",onScroll);document.removeEventListener(\"visibilitychange\",onVis);};},[isStatic]);return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",\"data-lx-scroll-progress\":\"true\",style:{...style,position:\"fixed\",top:0,left:0,right:0,height:Math.max(1,thickness),pointerEvents:\"none\",overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{ref:barRef,style:{width:\"100%\",height:\"100%\",transformOrigin:\"0 50%\",transform:isStatic?\"scaleX(0.34)\":\"scaleX(0)\",background:`linear-gradient(90deg, ${violet}, ${blue} 55%, ${green})`,boxShadow:glow?`0 0 10px ${green}66`:\"none\",willChange:\"transform\"}})});}ScrollProgress.defaultProps={violet:\"#5148C8\",blue:\"#6FA8FF\",green:\"#39FF14\",thickness:2,glow:true};addPropertyControls(ScrollProgress,{violet:{type:ControlType.Color,title:\"Violet\"},blue:{type:ControlType.Color,title:\"Blue\"},green:{type:ControlType.Color,title:\"Signal\"},thickness:{type:ControlType.Number,title:\"Thickness\",defaultValue:2,min:1,max:6,step:1},glow:{type:ControlType.Boolean,title:\"Glow\",defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollProgress\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollProgress.map","// Generated by Framer (4f63079)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,Image as Image1,Link,RenderTarget,RichText,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import ArrivalSequence from\"#framer/local/codeFile/aunpm6F/ArrivalSequence.js\";import BlueprintHouse from\"#framer/local/codeFile/HxU94NT/BlueprintHouse.js\";import HiddenMoments from\"#framer/local/codeFile/bBPOBZb/HiddenMoments_1.js\";import LiquidNavigationRouted from\"#framer/local/codeFile/INRRsnZ/LiquidNavigationRouted.js\";import PageTransition from\"#framer/local/codeFile/KVF32qn/PageTransition.js\";import PresenceField from\"#framer/local/codeFile/Aj0YtVa/PresenceField.js\";import ScrollMomentum from\"#framer/local/codeFile/Qo94fpo/ScrollMomentum.js\";import ScrollProgress from\"#framer/local/codeFile/JCKyeEV/ScrollProgress.js\";const ScrollMomentumFonts=getFonts(ScrollMomentum);const BlueprintHouseFonts=getFonts(BlueprintHouse);const LiquidNavigationRoutedFonts=getFonts(LiquidNavigationRouted);const PageTransitionFonts=getFonts(PageTransition);const ArrivalSequenceFonts=getFonts(ArrivalSequence);const PresenceFieldFonts=getFonts(PresenceField);const ScrollProgressFonts=getFonts(ScrollProgress);const HiddenMomentsFonts=getFonts(HiddenMoments);const breakpoints={E8CH18d_4:\"(max-width: 767.98px)\",G5K2o9F6O:\"(min-width: 768px) and (max-width: 1279.98px)\",vFrWaZhN3:\"(min-width: 1280px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-MFrrF\";const variantClassNames={E8CH18d_4:\"framer-v-z1rs53\",G5K2o9F6O:\"framer-v-8qhbry\",vFrWaZhN3:\"framer-v-6ddtm7\"};const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};const breakpointRules={E8CH18d_4:[\".framer-MFrrF .framer-1s8yit0 { padding: 48px 24px 32px 24px; }\",\".framer-MFrrF .framer-yhio3u { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 28px; }\",\".framer-MFrrF .framer-142ikeu { flex: none; gap: 18px; justify-content: flex-start; width: 100%; }\",\".framer-MFrrF .framer-1raxwmm { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 18px; }\",\".framer-MFrrF .framer-vj2mcz { flex: none; width: 100%; }\"],G5K2o9F6O:[\".framer-MFrrF .framer-1s8yit0 { padding: 64px 40px 40px 40px; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={E8CH18d_4:\".framer-z1rs53-override\",G5K2o9F6O:\".framer-8qhbry-override\"};const rules=[\".framer-MFrrF.framer-1an4jdg, .framer-MFrrF .framer-1an4jdg { display: block; }\",\".framer-MFrrF.framer-6ddtm7 { align-content: center; align-items: center; background-color: #f7f8fc; 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-MFrrF .framer-96hlu1-container { flex: none; height: auto; order: -1000; position: relative; width: auto; z-index: 0; }\",\".framer-MFrrF .framer-g99lic-container { flex: none; height: calc(min(var(--framer-viewport-height, 100vh), 100%) * 1); left: 0px; order: -996; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 6; }\",\".framer-MFrrF .framer-1ersv9b-container { flex: none; height: 82px; order: -991; position: sticky; top: 0px; width: 100%; z-index: 10; }\",\".framer-MFrrF .framer-1ylwmxg-container { flex: none; height: 1px; left: 0px; order: -990; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 1px; z-index: 4; }\",\".framer-MFrrF .framer-ne0qbg-container { flex: none; height: 1px; left: 0px; order: -988; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 1px; z-index: 10; }\",\".framer-MFrrF .framer-vpplu3-container { flex: none; height: 1px; left: 0px; order: -987; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 1px; z-index: 0; }\",\".framer-MFrrF .framer-1kwz48-container { flex: none; height: 3px; left: 0px; order: -986; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 10; }\",\".framer-MFrrF .framer-1n8ar1r { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-MFrrF .framer-1s8yit0 { align-content: center; align-items: center; background-color: #111425; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 28px; height: min-content; justify-content: flex-start; order: 1016; padding: 64px 80px 40px 80px; position: relative; width: 100%; z-index: 1; }\",\".framer-MFrrF .framer-yhio3u { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: wrap; gap: 40px; height: min-content; justify-content: flex-start; max-width: 1200px; padding: 0px; position: relative; width: 100%; }\",\".framer-MFrrF .framer-1af35rs { flex: none; height: 26px; position: relative; width: 118px; }\",\".framer-MFrrF .framer-142ikeu { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: wrap; gap: 20px; height: min-content; justify-content: flex-end; padding: 0px; position: relative; width: 1px; }\",\".framer-MFrrF .framer-166pk3o, .framer-MFrrF .framer-18ykmgr, .framer-MFrrF .framer-1omqzk1, .framer-MFrrF .framer-t8yxaz, .framer-MFrrF .framer-588shs, .framer-MFrrF .framer-1mw25m1, .framer-MFrrF .framer-12hqmss, .framer-MFrrF .framer-e8n884, .framer-MFrrF .framer-56d8d3 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-MFrrF .framer-1raxwmm { --border-bottom-width: 0px; --border-color: rgba(255, 255, 255, 0.08); --border-left-width: 0px; --border-right-width: 0px; --border-style: solid; --border-top-width: 1px; align-content: flex-end; align-items: flex-end; display: flex; flex: none; flex-direction: row; flex-wrap: wrap; gap: 32px; height: min-content; justify-content: flex-start; max-width: 1200px; padding: 24px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-MFrrF .framer-vj2mcz { flex: 1 0 0px; height: auto; max-width: 820px; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-MFrrF .framer-5xlsae-container { flex: none; height: calc(min(var(--framer-viewport-height, 100vh), 100%) * 1); left: 0px; order: 1017; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 9; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }','.framer-MFrrF[data-border=\"true\"]::after, .framer-MFrrF [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];const mediaQueries={E8CH18d_4:\"(max-width: 767.98px)\",G5K2o9F6O:\"(min-width: 768px) and (max-width: 1279.98px)\",vFrWaZhN3:\"(min-width: 1280px)\"};const humanReadableVariantMap={Desktop:\"vFrWaZhN3\",Phone:\"E8CH18d_4\",Tablet:\"G5K2o9F6O\"};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??\"vFrWaZhN3\"};};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:\"vFrWaZhN3\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(247, 248, 252); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-6ddtm7\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-96hlu1-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Scroll Momentum\",isAuthoredByUser:true,name:\"Scroll Momentum\",nodeId:\"aCuHCZVLO\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(ScrollMomentum,{glide:true,height:\"100%\",id:\"aCuHCZVLO\",keyboard:true,layoutId:\"aCuHCZVLO\",lean:1,name:\"Scroll Momentum\",weight:1,width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-g99lic-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Blueprint House\",isAuthoredByUser:true,layoutScroll:true,name:\"Blueprint House\",nodeId:\"edxjs68WF\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(BlueprintHouse,{accent:\"rgb(184, 179, 255)\",buildSeconds:30,groundLine:true,height:\"100%\",holdSeconds:6,houseSide:\"Right\",id:\"edxjs68WF\",intensity:1,layoutId:\"edxjs68WF\",line:\"rgb(111, 168, 255)\",mode:\"Play\",name:\"Blueprint House\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ersv9b-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Liquid Navigation\",isAuthoredByUser:true,name:\"Liquid Navigation\",nodeId:\"DF2Qi6Rv3\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(LiquidNavigationRouted,{ctaLabel:\"Request a workflow review\",height:\"100%\",id:\"DF2Qi6Rv3\",layoutId:\"DF2Qi6Rv3\",name:\"Liquid Navigation\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ylwmxg-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Page Transition\",isAuthoredByUser:true,layoutScroll:true,name:\"Page Transition\",nodeId:\"MmfacX9sx\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(PageTransition,{coverMs:190,height:\"100%\",id:\"MmfacX9sx\",ink:\"rgb(11, 16, 36)\",layoutId:\"MmfacX9sx\",name:\"Page Transition\",revealMs:420,signal:\"rgb(57, 255, 20)\",style:{height:\"100%\",width:\"100%\"},veil:1,violet:\"rgb(81, 72, 200)\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-ne0qbg-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Arrival Sequence\",isAuthoredByUser:true,layoutScroll:true,name:\"Arrival Sequence\",nodeId:\"gZYix3J1h\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(ArrivalSequence,{blue:\"rgb(111, 168, 255)\",canvasPreview:false,height:\"100%\",holdDuration:820,id:\"gZYix3J1h\",ink:\"rgb(11, 16, 36)\",landOnNav:true,layoutId:\"gZYix3J1h\",liftDuration:600,logo:addImageAlt({pixelHeight:24,pixelWidth:111,src:\"https://framerusercontent.com/images/p41Te6lZNdZ4fw3MSSs7wTAHVI.svg?width=111&height=24\"},\"LendlyX\"),name:\"Arrival Sequence\",periwinkle:\"rgb(184, 179, 255)\",playMode:\"session\",signal:\"rgb(57, 255, 20)\",status:\"Evidence \\xb7 Verification \\xb7 Decision\",style:{height:\"100%\",width:\"100%\"},violet:\"rgb(81, 72, 200)\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-vpplu3-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Presence Field\",isAuthoredByUser:true,layoutScroll:true,name:\"Presence Field\",nodeId:\"wt1AfgmPL\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(PresenceField,{actions:true,height:\"100%\",id:\"wt1AfgmPL\",intensity:1,layoutId:\"wt1AfgmPL\",lift:true,links:true,magnetStrength:1,name:\"Presence Field\",periwinkle:\"rgb(184, 179, 255)\",proximityRadius:220,style:{height:\"100%\",width:\"100%\"},surfaces:true,violet:\"rgb(81, 72, 200)\",width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1kwz48-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Scroll Progress\",isAuthoredByUser:true,layoutScroll:true,name:\"Scroll Progress\",nodeId:\"wPMk1BTVf\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(ScrollProgress,{blue:\"rgb(111, 168, 255)\",glow:true,green:\"rgb(57, 255, 20)\",height:\"100%\",id:\"wPMk1BTVf\",layoutId:\"wPMk1BTVf\",name:\"Scroll Progress\",style:{height:\"100%\",width:\"100%\"},thickness:2,violet:\"rgb(81, 72, 200)\",width:\"100%\"})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1n8ar1r\"}),/*#__PURE__*/_jsxs(motion.footer,{className:\"framer-1s8yit0\",\"data-framer-name\":\"Footer\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"framer-yhio3u\",children:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"LendlyX\",fit:\"fill\",pixelHeight:24,pixelWidth:111,sizes:\"118px\",src:\"https://framerusercontent.com/images/p41Te6lZNdZ4fw3MSSs7wTAHVI.svg?width=111&height=24\"},className:\"framer-1af35rs\"}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-142ikeu\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"VD2kbgBMW\"},motionChild:true,nodeId:\"jjcweCXMB\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Platform\"})})})}),className:\"framer-166pk3o\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"fdRKYahkw\"},motionChild:true,nodeId:\"z7Ww2lpEq\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Verification\"})})})}),className:\"framer-18ykmgr\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"BNkLGXqQP\"},motionChild:true,nodeId:\"RR1db1nqz\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Use cases\"})})})}),className:\"framer-1omqzk1\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"YNQS4z_dI\"},motionChild:true,nodeId:\"FPzkg5SA9\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Security\"})})})}),className:\"framer-t8yxaz\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"AssurN3my\"},motionChild:true,nodeId:\"iaBTZjabf\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Resources\"})})})}),className:\"framer-588shs\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"BpNPALq7_\"},motionChild:true,nodeId:\"RuveueRNJ\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Contact\"})})})}),className:\"framer-1mw25m1\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"zi1vsV3MV\"},motionChild:true,nodeId:\"EFlLUuvaF\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Privacy\"})})})}),className:\"framer-12hqmss\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy01MDA=\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"500\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#D7DAE5\"},children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"spiS_K4Ir\"},motionChild:true,nodeId:\"wKNAG65Ee\",openInNewTab:false,relValues:[],scopeId:\"m_6fyqzCO\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{children:\"Terms & Conditions\"})})})}),className:\"framer-e8n884\",fonts:[\"GF;DM Sans-500\"],verticalAlignment:\"top\",withExternalLayout:true})]})]}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1raxwmm\",\"data-border\":true,children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy1yZWd1bGFy\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"11px\",\"--framer-line-height\":\"1.55em\",\"--framer-text-color\":\"#8F94A8\"},children:\"LendlyX provides verification findings, supporting evidence, and an audit trail for lender review. LendlyX does not make final lending decisions, approve or deny loans, or hold or move funds.\"})}),className:\"framer-vj2mcz\",fonts:[\"GF;DM Sans-regular\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7RE0gU2Fucy1yZWd1bGFy\",\"--framer-font-family\":'\"DM Sans\", \"DM Sans Placeholder\", sans-serif',\"--framer-font-size\":\"11px\",\"--framer-line-height\":\"1em\",\"--framer-text-color\":\"#8F94A8\"},children:\"\\xa9 2026 LendlyX, Inc.\"})}),className:\"framer-56d8d3\",fonts:[\"GF;DM Sans-regular\"],verticalAlignment:\"top\",withExternalLayout:true})]})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-5xlsae-container\",\"data-code-component-plugin-id\":\"api\",\"data-framer-name\":\"Hidden Moments\",isAuthoredByUser:true,layoutScroll:true,name:\"Hidden Moments\",nodeId:\"mSQJv8Cyz\",scopeId:\"m_6fyqzCO\",children:/*#__PURE__*/_jsx(HiddenMoments,{figures:true,height:\"100%\",holdMs:650,id:\"mSQJv8Cyz\",ink:\"rgb(11, 16, 36)\",layoutId:\"mSQJv8Cyz\",name:\"Hidden Moments\",periwinkle:\"rgb(184, 179, 255)\",records:true,sequences:true,showRecord:true,style:{height:\"100%\",width:\"100%\"},violet:\"rgb(81, 72, 200)\",width:\"100%\",wordmark:true})})})]}),/*#__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 query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1280\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"G5K2o9F6O\":{\"layout\":[\"fixed\",\"fixed\"]},\"E8CH18d_4\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"vFrWaZhN3\":[\".framer-96hlu1-container\",\".framer-g99lic-container\",\".framer-1ersv9b-container\",\".framer-1ylwmxg-container\",\".framer-ne0qbg-container\",\".framer-vpplu3-container\",\".framer-1kwz48-container\",\".framer-1s8yit0\",\".framer-5xlsae-container\"],\"G5K2o9F6O\":[\".framer-96hlu1-container\",\".framer-g99lic-container\",\".framer-1ersv9b-container\",\".framer-1ylwmxg-container\",\".framer-ne0qbg-container\",\".framer-vpplu3-container\",\".framer-1kwz48-container\",\".framer-1s8yit0\",\".framer-5xlsae-container\"],\"E8CH18d_4\":[\".framer-96hlu1-container\",\".framer-g99lic-container\",\".framer-1ersv9b-container\",\".framer-1ylwmxg-container\",\".framer-ne0qbg-container\",\".framer-vpplu3-container\",\".framer-1kwz48-container\",\".framer-1s8yit0\",\".framer-5xlsae-container\"]}\n * @framerBreakpoints {\"vFrWaZhN3\":{\"min\":1280,\"canvasClassName\":\"framer-6ddtm7-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Desktop\",\"width\":1280,\"rootFontSize\":16},\"G5K2o9F6O\":{\"min\":768,\"max\":1279,\"canvasClassName\":\"framer-8qhbry-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Tablet\",\"width\":768,\"rootFontSize\":16},\"E8CH18d_4\":{\"max\":767,\"canvasClassName\":\"framer-z1rs53-override\",\"minHeight\":1000,\"viewportHeight\":800,\"name\":\"Phone\",\"width\":375,\"rootFontSize\":16}}\n * @framerDefaultVariant vFrWaZhN3\n * @framerLayoutTemplate true\n */const Framerm_6fyqzCO=withCSS(Component,css,\"framer-MFrrF\");export default Framerm_6fyqzCO;Framerm_6fyqzCO.displayName=\"LendlyX Liquid Site Shell\";Framerm_6fyqzCO.defaultProps={height:1e3,width:1280};addFonts(Framerm_6fyqzCO,[{explicitInter:true,fonts:[{cssFamilyName:\"DM Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"DM Sans\",url:\"https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAkJxhS2f3ZGMZpg.woff2\",weight:\"500\"},{cssFamilyName:\"DM Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"DM Sans\",url:\"https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhS2f3ZGMZpg.woff2\",weight:\"400\"}]},...ScrollMomentumFonts,...BlueprintHouseFonts,...LiquidNavigationRoutedFonts,...PageTransitionFonts,...ArrivalSequenceFonts,...PresenceFieldFonts,...ScrollProgressFonts,...HiddenMomentsFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerm_6fyqzCO\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerLayoutTemplate\":\"true\",\"framerDefaultVariant\":\"vFrWaZhN3\",\"framerIntrinsicHeight\":\"1000\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1280\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"G5K2o9F6O\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"E8CH18d_4\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerHitTargets\":\"{\\\"vFrWaZhN3\\\":[\\\".framer-96hlu1-container\\\",\\\".framer-g99lic-container\\\",\\\".framer-1ersv9b-container\\\",\\\".framer-1ylwmxg-container\\\",\\\".framer-ne0qbg-container\\\",\\\".framer-vpplu3-container\\\",\\\".framer-1kwz48-container\\\",\\\".framer-1s8yit0\\\",\\\".framer-5xlsae-container\\\"],\\\"G5K2o9F6O\\\":[\\\".framer-96hlu1-container\\\",\\\".framer-g99lic-container\\\",\\\".framer-1ersv9b-container\\\",\\\".framer-1ylwmxg-container\\\",\\\".framer-ne0qbg-container\\\",\\\".framer-vpplu3-container\\\",\\\".framer-1kwz48-container\\\",\\\".framer-1s8yit0\\\",\\\".framer-5xlsae-container\\\"],\\\"E8CH18d_4\\\":[\\\".framer-96hlu1-container\\\",\\\".framer-g99lic-container\\\",\\\".framer-1ersv9b-container\\\",\\\".framer-1ylwmxg-container\\\",\\\".framer-ne0qbg-container\\\",\\\".framer-vpplu3-container\\\",\\\".framer-1kwz48-container\\\",\\\".framer-1s8yit0\\\",\\\".framer-5xlsae-container\\\"]}\",\"framerDisplayContentsDiv\":\"false\",\"framerBreakpoints\":\"{\\\"vFrWaZhN3\\\":{\\\"min\\\":1280,\\\"canvasClassName\\\":\\\"framer-6ddtm7-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1280,\\\"rootFontSize\\\":16},\\\"G5K2o9F6O\\\":{\\\"min\\\":768,\\\"max\\\":1279,\\\"canvasClassName\\\":\\\"framer-8qhbry-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":768,\\\"rootFontSize\\\":16},\\\"E8CH18d_4\\\":{\\\"max\\\":767,\\\"canvasClassName\\\":\\\"framer-z1rs53-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":375,\\\"rootFontSize\\\":16}}\"}},\"__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 LendlyXLiquidSiteShell from \"https://framerusercontent.com/modules/TAbExX9jX3iqjaMlbjmY/RB4ZTyl0OLMuH2cQSuhL/m_6fyqzCO.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {WQLkyLRf1: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/84ZhLFbOKUJUhmOCIsw6/WmOSm5hcqvyJTBlbeQOa/augiA20Il.js\")), path: \"/\"}, VD2kbgBMW: {elements: {snsdiywWh: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Q1Y0eoqohIp5IIVEeZUw/Mk2Zz8THlbrY3SDMA1yw/VD2kbgBMW.js\")), path: \"/platform\"}, fdRKYahkw: {elements: {NFCk1Sk04: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/I6AGnLAfh3zta53wrdnt/h5nLr7LV9hXszQnZMzPz/fdRKYahkw.js\")), path: \"/verification\"}, gPFXYdDOm: {elements: {wYZ7XZGIK: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/QtVvjnXzA7kXMeZ2Ly3C/2kRTFqpagsH2PaCoUZIL/gPFXYdDOm.js\")), path: \"/verify/decisions\"}, RM5yhyweD: {elements: {UmKyuVel2: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/uu0zVVpSyER0u6jva7Jq/xBSGipvF7TEWDJsKGMHp/RM5yhyweD.js\")), path: \"/verify/property\"}, WiHi6obzo: {elements: {vcsHRYxQb: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/TNHNQTyV3qRhBItdNWlQ/9EV9OMiQ9gaV7PLStNIo/WiHi6obzo.js\")), path: \"/verify/evidence\"}, jj8dBneCT: {elements: {IbiOqKshO: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/sgI52XqpRfgvKx7MkwWE/lUjb2H3SwFE11Vwz0OWK/jj8dBneCT.js\")), path: \"/verify/people\"}, nWVblq6b8: {elements: {X8m7w_jSS: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vZyurMaKEny9pg4CBRDc/jththiB1zZemGwBvWUq7/nWVblq6b8.js\")), path: \"/what-is-draw-decisioning\"}, bh_f7CJkj: {elements: {pEYTQ085B: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/AmiTrIYnEWBx8cc2gpIQ/ZUDWPH6L812F0ciypMn5/bh_f7CJkj.js\")), path: \"/pricing\"}, gVbysyM74: {elements: {QSUre0DmN: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/tYzF6T5dVEix8iX0V4iQ/p0peoQaJwgSUlJFC9XMX/gVbysyM74.js\")), path: \"/developers\"}, ethdNIa0s: {elements: {c467lbKqx: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/3nRojtnBSmLsznmcP4vX/1ntneilSBKcE1ASEQD2n/ethdNIa0s.js\")), path: \"/integrations\"}, vnPhQyBDJ: {elements: {k9ILr6vjP: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Z7WdcEKVwxrPPmnwfRLs/75Z4CTzVfmF2d9Ho4M4E/vnPhQyBDJ.js\")), path: \"/how-it-works\"}, sMwDu4WAm: {elements: {N1W1nvWBf: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/qj8kVuITBIHIBzoMne8p/p7w5CzZrIm2B2I7PiV9t/sMwDu4WAm.js\")), path: \"/private-lending-fraud-detection\"}, nNEXrD3KT: {elements: {z5BTrcyLk: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/nFnU0IbRBm7P3vHElP0M/WqHIGzmXpc58GZhdnBFj/nNEXrD3KT.js\")), path: \"/hard-money-lending-software\"}, c_zdA8XWR: {elements: {T7etR6Dwd: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xrZScf3PI6QyJ8fT92ef/1ImYWBSuanrBw13ibgv0/c_zdA8XWR.js\")), path: \"/solutions/lenders\"}, BNkLGXqQP: {elements: {fva21LNzc: \"case-04\", Hnb1KO7Ng: \"main-content\", pbxr8Tkl3: \"case-01\", vHlfBORWe: \"case-03\", VhuMfajlF: \"case-05\", xKK_UPoKw: \"case-02\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/z1J9agrLSD16ZhQV3tCI/461qP0b0iWthxDlq2QvW/BNkLGXqQP.js\")), path: \"/use-cases\"}, YNQS4z_dI: {elements: {aDYkf1flN: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/uXDnqoRVsS87NV2rNBoK/Qvc5bxtirbmsOy95y9ou/YNQS4z_dI.js\")), path: \"/security\"}, AssurN3my: {elements: {ffdSVZ5D_: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/09IlcD51xyggjsccLWCt/Up87ydEfNTEp4VmjQOWY/AssurN3my.js\")), path: \"/resources\"}, NOps3soQx: {elements: {XQFH1ffcC: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/5p4B6RIvO7A2MdS2jKdN/XHI9cX5ik6WsmedsZ3UB/NOps3soQx.js\")), path: \"/resources-2\"}, qjIKRWAj5: {elements: {HYEy1c2Hq: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/CPfBRIjoqjmLIkYEEkKG/n282EJyJYE8VxkFJ0ZEn/qjIKRWAj5.js\")), path: \"/blog\"}, eHTsECQDp: {elements: {xngK82y2H: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/z3doPBbUbBo2USawIONY/n8Ww4avOhJuqyFIxHpvo/eHTsECQDp.js\")), path: \"/glossary\"}, l8eh0NBVa: {elements: {BYedmR7PM: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/MuLFGS7Flslg2yRZBtUs/P3prS4kPOomfx95R5Xfp/l8eh0NBVa.js\")), path: \"/faq\"}, BpNPALq7_: {elements: {if20_zsEv: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/OgWNY74mcyQfTRfYpPKJ/afCGwj199vHOXSbqpXzT/BpNPALq7_.js\")), path: \"/contact\"}, zi1vsV3MV: {elements: {FV0vYD7j9: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/iGtUBIc28yLkZk4enS7r/vKn4WeLCGS5KyHFiPufU/zi1vsV3MV.js\")), path: \"/privacy-policy\"}, spiS_K4Ir: {elements: {EosXmEUAP: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Dr4bS3blrWu5fLk2eCTi/y5Rc8ErBgxtEGb9N5ey4/spiS_K4Ir.js\")), path: \"/terms-conditions\"}, V77DTqeWE: {collectionId: \"Oop9rsPCc\", elements: {ieWBfWLGW: \"main-content\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/v0dNXjQx8lj9BuVb3WkU/uVAk9BFfmJn5ue6bfAUj/V77DTqeWE.js\")), path: \"/blog/:Wo2IVLeaQ\"}}\r\n\r\n\t\tconst locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {Oop9rsPCc: async () => (await import(\"https://framerusercontent.com/modules/g3iUxJap8u1lkFUoizZI/CYbJeE8QOMPemkvHJ89q/Oop9rsPCc.js\"))?.[\"utils\"]}\r\n\t\tconst framerSiteId = \"a49a289bae35fe928cd4b746dba260c3cd552d3df01c5b3ad73c213879dbd2c9\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"VD2kbgBMW\":\r\ncase \"fdRKYahkw\":\r\ncase \"gPFXYdDOm\":\r\ncase \"RM5yhyweD\":\r\ncase \"WiHi6obzo\":\r\ncase \"jj8dBneCT\":\r\ncase \"nWVblq6b8\":\r\ncase \"bh_f7CJkj\":\r\ncase \"gVbysyM74\":\r\ncase \"ethdNIa0s\":\r\ncase \"vnPhQyBDJ\":\r\ncase \"sMwDu4WAm\":\r\ncase \"nNEXrD3KT\":\r\ncase \"c_zdA8XWR\":\r\ncase \"BNkLGXqQP\":\r\ncase \"YNQS4z_dI\":\r\ncase \"AssurN3my\":\r\ncase \"NOps3soQx\":\r\ncase \"qjIKRWAj5\":\r\ncase \"eHTsECQDp\":\r\ncase \"l8eh0NBVa\":\r\ncase \"BpNPALq7_\":\r\ncase \"zi1vsV3MV\":\r\ncase \"spiS_K4Ir\":\r\ncase \"V77DTqeWE\":\r\nreturn React.createElement(LendlyXLiquidSiteShell, {...props, key: \"LendlyXLiquidSiteShell\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"VD2kbgBMW\":\r\ncase \"fdRKYahkw\":\r\ncase \"gPFXYdDOm\":\r\ncase \"RM5yhyweD\":\r\ncase \"WiHi6obzo\":\r\ncase \"jj8dBneCT\":\r\ncase \"nWVblq6b8\":\r\ncase \"bh_f7CJkj\":\r\ncase \"gVbysyM74\":\r\ncase \"ethdNIa0s\":\r\ncase \"vnPhQyBDJ\":\r\ncase \"sMwDu4WAm\":\r\ncase \"nNEXrD3KT\":\r\ncase \"c_zdA8XWR\":\r\ncase \"BNkLGXqQP\":\r\ncase \"YNQS4z_dI\":\r\ncase \"AssurN3my\":\r\ncase \"NOps3soQx\":\r\ncase \"qjIKRWAj5\":\r\ncase \"eHTsECQDp\":\r\ncase \"l8eh0NBVa\":\r\ncase \"BpNPALq7_\":\r\ncase \"zi1vsV3MV\":\r\ncase \"spiS_K4Ir\":\r\ncase \"V77DTqeWE\":\r\nreturn [{hash: \"z1rs53\", mediaQuery: \"(max-width: 767.98px)\"}, {hash: \"8qhbry\", mediaQuery: \"(min-width: 768px) and (max-width: 1279.98px)\"}, {hash: \"6ddtm7\", mediaQuery: \"(min-width: 1280px)\"}]\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\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\tFramer.setLibraryFeatures({disableCustomCode: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, onPageRichTextBlockSelection: true, privateRouterReplaceState: true, scrollRestoration: true, synchronousNavigationOnDesktop: false, yieldOnTap: false})\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\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"__framer-not-found-page\")),\r\n\t\t\t\t\tisReducedMotion: true,\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://lendlyx.com\",\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: false,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/9IxMIzSUwvg8DSLzOtLJ/av9JlDoP6IYXAEr8cxEN/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\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\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\t\r\n\t\t\t\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, pathVariables, 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\tpathVariables = routeData.pathVariables\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 serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && 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\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\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\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\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"],"mappings":"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"}