{"version":3,"file":"shared-lib.Dwjysd4M.mjs","names":["INK","F","BORDER","OFF","useState","useRef","_Fragment","MUTED","useState","useCallback","F","INK","useRef","useState","_Fragment","css","useRef","useState","useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/9RAST5IT2oFRP3e4SMU4/agjpQpTKaaTjuE0qGpth/submitLead.js","https:/framerusercontent.com/modules/ru6xoiDsWNU45LRgLBAo/ktVzzTvW9aenS5RG6qqF/WVNBookingForm.js","https:/framerusercontent.com/modules/UKN4Uf3DymkzKeWZ7Fel/wy4IHN8OErGUvi95VADK/WVNBookingModal.js","https:/framerusercontent.com/modules/4A8wWJq7VtL4BQvIZ5CK/joNjRPlXCor9r1g7CIip/WVNFooter.js","https:/framerusercontent.com/modules/D2ZVvEgclBPSL3YDZxys/27815N8sR0d5YSp4i80N/WVNNav.js"],"sourcesContent":["/**\n * submitLead · shared lead submission for WVNBookingForm/Modal, WVNSpeakerModal,\n * WVNMediaModal, WVNPortfolioGateOverlay and WVNStudyCard.\n *\n * Resolves { ok, error }. The existing success/error states in each caller keep\n * working unchanged: check result.ok, and render result.error on failure.\n *\n * Shared module, not a component. Import it with:\n *   import { submitLead } from \"./submitLead.tsx\"\n */export const LEAD_ENDPOINT=\"https://wvn-lead-proxy.wearewvn.workers.dev\"// Worker route\n;export const TURNSTILE_SITE_KEY=\"0x4AAAAAAEvT_-wHmup--Z6G\"// Cloudflare > Turnstile > widget > Site key (public)\n;/** ────────────────────────────────────────────────────────────────────────────\n *  Touch capture\n *\n *  Captured here on module load rather than by a separate site-wide snippet, so\n *  attribution travels with the form code and cannot be missed on a page that\n *  forgot to include the snippet.\n *\n *  Two kinds of arrival are recorded, with different write rules:\n *\n *    Tagged (any utm_ parameter, or an ad-platform click id)\n *      first touch → written only when empty      (how they originally found us)\n *      last  touch → always overwritten           (what drove this visit)\n *\n *    Referrer only (nothing tagged, but an external referrer — e.g. organic search)\n *      first touch → written only when empty\n *      last  touch → written only when ALSO empty\n *\n *  The asymmetry is the point: a later untagged visit can fill a gap, but can\n *  never overwrite a real campaign touch.\n *\n *  Nothing is recorded for a direct arrival with nothing tagged and no external\n *  referrer — there is no signal to store. A same-origin referrer is ignored so\n *  internal navigation is never mistaken for a new touch.\n *\n *  Both keys live in localStorage. Last touch must survive a session for the\n *  \"never overwrite a campaign\" rule above to mean anything.\n *  ──────────────────────────────────────────────────────────────────────────── */export const FIRST_TOUCH_KEY=\"wvn_first_touch\";export const LAST_TOUCH_KEY=\"wvn_last_touch\";const UTM_FIELDS=[\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_content\",\"utm_term\"];/**\n * Ad-platform click ids: Google, Meta, LinkedIn. Their presence alone proves a paid\n * click, so the Worker classifies on them ahead of any utm_ tagging.\n */const CLICK_ID_FIELDS=[\"gclid\",\"fbclid\",\"li_fat_id\"];const TRACKED_PARAMS=[...UTM_FIELDS,...CLICK_ID_FIELDS];/** True only for a referrer on another origin. Internal navigation is not a new touch. */function isExternalReferrer(referrer){if(!referrer)return false;try{return new URL(referrer).origin!==window.location.origin;}catch{return false;}}/**\n * The touch described by the page we are on right now. Null when there is nothing\n * worth recording: nothing tagged and no external referrer.\n */function readTouchFromUrl(){if(typeof window===\"undefined\")return null;try{const params=new URLSearchParams(window.location.search);let hasUtmParam=false;params.forEach((_v,k)=>{if(k.toLowerCase().startsWith(\"utm_\"))hasUtmParam=true;});const hasClickId=CLICK_ID_FIELDS.some(f=>Boolean(params.get(f)));// A bare ?gclid=… counts as tagged even with no utm_ parameters at all.\nconst hasUtm=hasUtmParam||hasClickId;const referrer=typeof document!==\"undefined\"?document.referrer||\"\":\"\";if(!hasUtm&&!isExternalReferrer(referrer))return null;// Collected into a plain record first, so no cast on TouchPoint is needed.\nconst tracked={};TRACKED_PARAMS.forEach(field=>{const value=params.get(field);if(value)tracked[field]=value;});const touch={...tracked,landing_page:window.location.pathname+window.location.search,referrer,ts:new Date().toISOString()};return{touch,hasUtm};}catch{return null;}}/**\n * Module-load capture. Silent on every failure path: a blocked or full\n * localStorage must never surface to the visitor, and never block a submit.\n */function captureTouch(){const captured=readTouchFromUrl();if(!captured)return;try{const store=window.localStorage;const serialized=JSON.stringify(captured.touch);// First touch fills only when empty, for both kinds of arrival.\nif(!store.getItem(FIRST_TOUCH_KEY))store.setItem(FIRST_TOUCH_KEY,serialized);// Last touch: a tagged arrival always wins; a referrer-only one fills a gap only.\nif(captured.hasUtm||!store.getItem(LAST_TOUCH_KEY)){store.setItem(LAST_TOUCH_KEY,serialized);}}catch{// Storage unavailable (Safari private mode, quota, cookie blocking). The\n// fallback in getTouches() still sends this visit's detail with the submission.\n}}captureTouch();/** Read the stored touches, falling back to the live page when storage is unreadable or empty. */export function getTouches(){const live=readTouchFromUrl()?.touch;let first;let last;try{const store=window.localStorage;first=readJson(store,FIRST_TOUCH_KEY);last=readJson(store,LAST_TOUCH_KEY);}catch{// fall through to the live-page values below\n}return{first_touch:first||live||undefined,last_touch:last||live||undefined};}function readJson(store,key){try{const v=store?.getItem(key);return v?JSON.parse(v):undefined;}catch{return undefined;}}export function getAttribution(){if(typeof window===\"undefined\")return{};const ga=document.cookie.match(/(?:^|;\\s*)_ga=GA\\d\\.\\d\\.(\\d+\\.\\d+)/);return{// Both from localStorage. Last touch was previously read from sessionStorage,\n// which cleared on tab close and defeated the \"never overwrite a campaign\" rule.\nfirst:readJson(window.localStorage,FIRST_TOUCH_KEY),last:readJson(window.localStorage,LAST_TOUCH_KEY),visits:parseInt(window.localStorage.getItem(\"wvn_visits\")||\"0\",10)||undefined,gaClientId:ga?ga[1]:undefined,submittedFrom:window.location.pathname};}let turnstileScript=null;function loadTurnstile(){if(typeof window===\"undefined\")return Promise.resolve();if(window.turnstile)return Promise.resolve();if(!turnstileScript){turnstileScript=new Promise((resolve,reject)=>{const s=document.createElement(\"script\");s.src=\"https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit\";s.async=true;s.onload=()=>resolve();s.onerror=()=>reject(new Error(\"Turnstile failed to load\"));document.head.appendChild(s);});}return turnstileScript;}export async function getTurnstileToken(){await loadTurnstile();return new Promise((resolve,reject)=>{const host=document.createElement(\"div\");host.style.cssText=\"position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden\";document.body.appendChild(host);const cleanup=()=>{try{window.turnstile.remove(id);}catch{}host.remove();};const id=window.turnstile.render(host,{sitekey:TURNSTILE_SITE_KEY,callback:token=>{cleanup();resolve(token);},\"error-callback\":()=>{cleanup();reject(new Error(\"Verification failed\"));},\"expired-callback\":()=>{cleanup();reject(new Error(\"Verification expired\"));}});});}export async function submitLead(form,data){try{let turnstileToken=\"\";try{turnstileToken=await getTurnstileToken();}catch{return{ok:false,error:\"Verification failed. Reload the page and try again.\"};}// Attribution is strictly best-effort: anything thrown in here is swallowed so a\n// storage or parsing fault can never cost us the lead.\nlet touches={};let submitPage;try{touches=getTouches();submitPage=typeof window!==\"undefined\"?window.location.pathname+window.location.search:undefined;}catch{/* send the lead without attribution rather than not at all */}const res=await fetch(LEAD_ENDPOINT,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({form,...data,...touches,submit_page:submitPage,turnstileToken,attribution:getAttribution(),pageUri:typeof window!==\"undefined\"?window.location.href:\"\",pageName:typeof document!==\"undefined\"?document.title:\"\"})});const out=await res.json();if(res.ok&&out.ok){// GA4 conversion event, if gtag is on the page\nconst g=window.gtag;if(typeof g===\"function\")g(\"event\",\"generate_lead\",{form,lead_id:out.leadId});}return res.ok?out:{ok:false,error:out?.error||\"Request failed\"};}catch{return{ok:false,error:\"Network error\"};}}\nexport const __FramerMetadata__ = {\"exports\":{\"FIRST_TOUCH_KEY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LeadForm\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LAST_TOUCH_KEY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TURNSTILE_SITE_KEY\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LeadResult\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LeadPayload\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Attribution\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getTouches\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getTurnstileToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"TouchPoint\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getAttribution\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"LEAD_ENDPOINT\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"submitLead\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./submitLead.map","/**\n * WVNBookingForm · the Book a Demo form body, extracted from WVNBookingModal\n * so the modal and the /book-a-demo page render one source of truth.\n *\n * Fields, labels, validation, honeypot, submit behavior and success state are\n * unchanged from the modal. Submit calls submitLead(\"demo\", payload).\n *\n * Shared module, not a component. Import it with:\n *   import { WVNBookingForm, bookingFormCSS } from \"./WVNBookingForm.tsx\"\n *\n * onSubmitted fires once on success. The modal uses it to hide its header and\n * start its 3s auto-close; the page passes nothing, so it just stays put.\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useRef}from\"react\";import{submitLead}from\"https://framerusercontent.com/modules/9RAST5IT2oFRP3e4SMU4/agjpQpTKaaTjuE0qGpth/submitLead.js\";const INK=\"#0D1421\";const BLUE=\"#2663EB\";const BLUE_DARK=\"#1a4fc4\";const MUTED=\"#637085\";const OFF=\"#F6F8FA\";const BORDER=\"rgba(0,0,0,0.07)\";const F=\"'Plus Jakarta Sans', sans-serif\";const GENERIC_ERROR=\"Something went wrong. Please try again.\";export const bookingFormCSS=`\n.wvn-btn .btn-arrow-wrap { display:inline-flex; align-items:center; transition:transform 0.2s ease; }\n.wvn-btn:hover .btn-arrow-wrap { transform:translateX(4px); }\n@media (max-width: 480px) {\n  .wvn-booking-row { grid-template-columns: 1fr !important; }\n}\n`;// Order follows the vertical taxonomy: sponsored activations, retail, sports and\n// entertainment venues first, then the remaining option, with Other last. The select\n// submits value === label, so reordering moves labels and submitted values together and\n// changes neither. Pipedrive receives this as a free-text string in the lead note.\nconst verticals=[\"Experiential\",\"Retail\",\"Sports & Entertainment\",\"CPG\",\"Other\"];const honeypotStyle={position:\"absolute\",left:-9999,top:\"auto\",width:1,height:1,opacity:0,overflow:\"hidden\",pointerEvents:\"none\"};function InputField({label,type,name,required,placeholder,inputRef}){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsxs(\"label\",{style:{fontSize:12,fontWeight:600,color:INK},children:[label,required&&/*#__PURE__*/_jsx(\"span\",{style:{color:BLUE},children:\" *\"})]}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:type||\"text\",name:name,required:required,placeholder:placeholder,style:{fontSize:14,fontFamily:F,padding:\"10px 12px\",borderRadius:6,border:`1px solid ${BORDER}`,background:OFF,color:INK,outline:\"none\",transition:\"border-color 0.15s\"},onFocus:e=>{e.currentTarget.style.borderColor=BLUE;},onBlur:e=>{e.currentTarget.style.borderColor=BORDER;}})]});}function SelectField({label,name,options,required,selectRef}){return /*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsxs(\"label\",{style:{fontSize:12,fontWeight:600,color:INK},children:[label,required&&/*#__PURE__*/_jsx(\"span\",{style:{color:BLUE},children:\" *\"})]}),/*#__PURE__*/_jsxs(\"select\",{ref:selectRef,name:name,required:required,style:{fontSize:14,fontFamily:F,padding:\"10px 12px\",borderRadius:6,border:`1px solid ${BORDER}`,background:OFF,color:INK,outline:\"none\",appearance:\"none\",backgroundImage:`url(\"data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2398A3B3' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")`,backgroundRepeat:\"no-repeat\",backgroundPosition:\"right 12px center\",paddingRight:32},children:[/*#__PURE__*/_jsx(\"option\",{value:\"\",children:\"Select...\"}),options.map(o=>/*#__PURE__*/_jsx(\"option\",{value:o,children:o},o))]})]});}export function WVNBookingForm({onSubmitted}){const[submitted,setSubmitted]=useState(false);const[submitting,setSubmitting]=useState(false);const[error,setError]=useState(\"\");const[submitHover,setSubmitHover]=useState(false);const firstNameRef=useRef(null);const lastNameRef=useRef(null);const emailRef=useRef(null);const companyRef=useRef(null);const roleRef=useRef(null);const verticalRef=useRef(null);const notesRef=useRef(null);const websiteRef=useRef(null);const handleSubmit=async e=>{e.preventDefault();setSubmitting(true);setError(\"\");try{const result=await submitLead(\"demo\",{firstName:firstNameRef.current?.value||\"\",lastName:lastNameRef.current?.value||\"\",email:emailRef.current?.value||\"\",company:companyRef.current?.value||\"\",role:roleRef.current?.value||\"\",vertical:verticalRef.current?.value||\"\",message:notesRef.current?.value||\"\",website:websiteRef.current?.value||\"\"});if(result.ok){setSubmitted(true);onSubmitted?.();}else{setError(!result.error||result.error===\"Network error\"?GENERIC_ERROR:result.error);}}finally{setSubmitting(false);}};if(submitted){return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:bookingFormCSS}),/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",padding:\"40px 0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:48,height:48,borderRadius:\"50%\",background:\"#F0FDF4\",border:\"2px solid #22C55E\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",margin:\"0 auto 20px\"},children:/*#__PURE__*/_jsx(\"svg\",{width:\"20\",height:\"20\",viewBox:\"0 0 20 20\",fill:\"none\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 10l3 3 7-7\",stroke:\"#22C55E\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})})}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:20,fontWeight:700,color:INK,marginBottom:8},children:\"You're on the list.\"}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:14,color:MUTED},children:\"We'll be in touch soon.\"})]})]});}return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:bookingFormCSS}),/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleSubmit,style:{display:\"flex\",flexDirection:\"column\",gap:16},children:[/*#__PURE__*/_jsx(\"input\",{ref:websiteRef,type:\"text\",name:\"website\",tabIndex:-1,autoComplete:\"off\",\"aria-hidden\":\"true\",style:honeypotStyle}),/*#__PURE__*/_jsxs(\"div\",{className:\"wvn-booking-row\",style:{display:\"grid\",gridTemplateColumns:\"1fr 1fr\",gap:12},children:[/*#__PURE__*/_jsx(InputField,{label:\"First name\",name:\"firstName\",required:true,placeholder:\"James\",inputRef:firstNameRef}),/*#__PURE__*/_jsx(InputField,{label:\"Last name\",name:\"lastName\",required:true,placeholder:\"Chester\",inputRef:lastNameRef})]}),/*#__PURE__*/_jsx(InputField,{label:\"Work email\",type:\"email\",name:\"email\",required:true,placeholder:\"you@company.com\",inputRef:emailRef}),/*#__PURE__*/_jsx(InputField,{label:\"Company\",name:\"company\",required:true,placeholder:\"Your company\",inputRef:companyRef}),/*#__PURE__*/_jsxs(\"div\",{className:\"wvn-booking-row\",style:{display:\"grid\",gridTemplateColumns:\"1fr 1fr\",gap:12},children:[/*#__PURE__*/_jsx(InputField,{label:\"Your role\",name:\"role\",required:true,placeholder:\"VP of Retail\",inputRef:roleRef}),/*#__PURE__*/_jsx(SelectField,{label:\"Vertical\",name:\"vertical\",options:verticals,required:true,selectRef:verticalRef})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsxs(\"label\",{style:{fontSize:12,fontWeight:600,color:INK},children:[\"Anything else? \",/*#__PURE__*/_jsx(\"span\",{style:{fontWeight:400,color:MUTED},children:\"(optional)\"})]}),/*#__PURE__*/_jsx(\"textarea\",{ref:notesRef,name:\"notes\",rows:3,placeholder:\"Tell us about your experiences, goals, or questions...\",style:{fontSize:14,fontFamily:F,padding:\"10px 12px\",borderRadius:6,border:`1px solid ${BORDER}`,background:OFF,color:INK,outline:\"none\",resize:\"vertical\",transition:\"border-color 0.15s\"},onFocus:e=>{e.currentTarget.style.borderColor=BLUE;},onBlur:e=>{e.currentTarget.style.borderColor=BORDER;}})]}),/*#__PURE__*/_jsx(\"button\",{type:\"submit\",className:\"wvn-btn\",disabled:submitting,onMouseEnter:()=>setSubmitHover(true),onMouseLeave:()=>setSubmitHover(false),style:{width:\"100%\",padding:\"13px 24px\",fontSize:14,fontWeight:700,background:submitting?MUTED:submitHover?BLUE_DARK:BLUE,color:\"#FFFFFF\",border:`1.5px solid ${submitting?MUTED:submitHover?BLUE_DARK:BLUE}`,borderRadius:6,cursor:submitting?\"not-allowed\":\"pointer\",fontFamily:F,transition:\"all 0.2s\",marginTop:4,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",gap:6,opacity:submitting?.7:1},children:submitting?\"Sending...\":/*#__PURE__*/_jsxs(_Fragment,{children:[\"Request a Demo \",/*#__PURE__*/_jsx(\"span\",{className:\"btn-arrow-wrap\",children:\"→\"})]})}),error&&/*#__PURE__*/_jsx(\"div\",{style:{fontSize:13,color:\"#DC2626\",textAlign:\"center\",marginTop:-4},children:error})]})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"WVNBookingForm\":{\"type\":\"reactComponent\",\"name\":\"WVNBookingForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"bookingFormCSS\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./WVNBookingForm.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect,useCallback}from\"react\";import{WVNBookingForm}from\"https://framerusercontent.com/modules/ru6xoiDsWNU45LRgLBAo/ktVzzTvW9aenS5RG6qqF/WVNBookingForm.js\";const INK=\"#0D1421\";const MUTED=\"#637085\";const OFF=\"#F6F8FA\";const BORDER=\"rgba(0,0,0,0.07)\";const F=\"'Plus Jakarta Sans', sans-serif\";// Panel-only. The form's own styles (button arrow, row collapse) ship with\n// WVNBookingForm so the page gets them too.\nconst panelCSS=`\n@media (max-width: 480px) {\n  .wvn-booking-panel { padding: 24px 20px 20px !important; max-width: calc(100vw - 32px) !important; }\n}\n`;export default function WVNBookingModal(){const[open,setOpen]=useState(false);const[mounted,setMounted]=useState(false);const[submitted,setSubmitted]=useState(false);const handleOpen=useCallback(()=>{setOpen(true);setSubmitted(false);setMounted(false);},[]);const handleClose=useCallback(()=>{setMounted(false);setTimeout(()=>setOpen(false),250);},[]);useEffect(()=>{window.addEventListener(\"openBookingModal\",handleOpen);return()=>window.removeEventListener(\"openBookingModal\",handleOpen);},[handleOpen]);useEffect(()=>{if(open){requestAnimationFrame(()=>requestAnimationFrame(()=>setMounted(true)));}},[open]);useEffect(()=>{if(!open)return;const onKey=e=>{if(e.key===\"Escape\")handleClose();};window.addEventListener(\"keydown\",onKey);return()=>window.removeEventListener(\"keydown\",onKey);},[open,handleClose]);useEffect(()=>{if(submitted){const timer=setTimeout(()=>handleClose(),3e3);return()=>clearTimeout(timer);}},[submitted,handleClose]);if(!open)return null;return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"fixed\",inset:0,zIndex:900,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:20,background:mounted?\"rgba(13,20,33,0.5)\":\"rgba(13,20,33,0)\",backdropFilter:mounted?\"blur(4px)\":\"blur(0px)\",WebkitBackdropFilter:mounted?\"blur(4px)\":\"blur(0px)\",transition:\"background 0.25s ease, backdrop-filter 0.25s ease\",fontFamily:F},onClick:e=>{if(e.target===e.currentTarget)handleClose();},children:[/*#__PURE__*/_jsx(\"style\",{children:panelCSS}),/*#__PURE__*/_jsxs(\"div\",{className:\"wvn-booking-panel\",style:{background:\"#FFFFFF\",borderRadius:12,width:\"100%\",maxWidth:520,maxHeight:\"90vh\",overflowY:\"auto\",overflowX:\"hidden\",padding:\"32px 32px 28px\",position:\"relative\",opacity:mounted?1:0,transform:mounted?\"translateY(0)\":\"translateY(16px)\",transition:\"opacity 0.25s cubic-bezier(0.22,1,0.36,1), transform 0.25s cubic-bezier(0.22,1,0.36,1)\",boxShadow:\"0 32px 80px rgba(0,0,0,0.2)\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"div\",{onClick:handleClose,style:{position:\"absolute\",top:16,right:16,width:30,height:30,borderRadius:\"50%\",border:`1px solid ${BORDER}`,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",background:\"#FFFFFF\",transition:\"background 0.15s\"},onMouseEnter:e=>{e.currentTarget.style.background=OFF;},onMouseLeave:e=>{e.currentTarget.style.background=\"#FFFFFF\";},children:/*#__PURE__*/_jsx(\"svg\",{width:\"10\",height:\"10\",viewBox:\"0 0 10 10\",fill:\"none\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M1 1l8 8M9 1l-8 8\",stroke:MUTED,strokeWidth:\"1.5\",strokeLinecap:\"round\"})})}),!submitted&&/*#__PURE__*/_jsxs(\"div\",{style:{marginBottom:24},children:[/*#__PURE__*/_jsx(\"h3\",{style:{fontSize:22,fontWeight:700,color:INK,marginBottom:8},children:\"Book a demo\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:14,color:MUTED,lineHeight:1.5,margin:0},children:\"We'll tailor the walkthrough to your vertical and setup.\"})]}),/*#__PURE__*/_jsx(WVNBookingForm,{onSubmitted:()=>setSubmitted(true)})]})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"WVNBookingModal\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect,useRef}from\"react\";import{addPropertyControls,ControlType}from\"framer\";const FOOTER_BG=\"#070D1C\";const HEADING_COLOR=\"rgba(255,255,255,0.3)\";const LINK_COLOR=\"rgba(255,255,255,0.5)\";const LINK_HOVER=\"#FFFFFF\";const TAGLINE_COLOR=\"rgba(255,255,255,0.35)\";const DIVIDER=\"rgba(255,255,255,0.07)\";const F=\"'Plus Jakarta Sans', sans-serif\";// No single word alone on the last line. Built from a char code on purpose — a literal\n// U+00A0 is invisible in source and silently degrades to a plain space when the file is copied.\nconst NBSP=String.fromCharCode(160);const css=`\n.wvn-footer .footer-link {\n  font-size: 13.5px; color: rgba(255,255,255,0.5); text-decoration: none;\n  display: block; margin-bottom: 10px; transition: color 0.15s; cursor: pointer;\n}\n.wvn-footer .footer-link:hover { color: #FFFFFF; }\n`;export default function WVNFooter({customersHeader=\"Customers\",customersLink1Label=\"All Case Studies\",customersLink1Href=\"/customers\",customersLink2Label=\"PepsiCo\",customersLink2Href=\"/customers#pepsi\",customersLink3Label=\"Mugsy\",customersLink3Href=\"/customers#mugsy\",companyHeader=\"Company\",companyLink1Label=\"About\",companyLink1Href=\"/company\",companyLink2Label=\"Press\",companyLink2Href=\"/company#press\",companyLink3Label=\"LinkedIn\",companyLink3Href=\"https://www.linkedin.com/company/wearewvn/\",companyLink4Label=\"Privacy\",companyLink4Href=\"/privacy\",copyrightText=\"\\xa9 2026 WVN AI Corp. All rights reserved.\"}){// The brand tagline is fixed brand copy, not instance-editable. It is declared\n// here as a constant so that any stale per-page instance override is ignored.\nconst brandTagline=`True ROI for${NBSP}IRL.`;// The Platform and Experiences columns are fixed site structure, not\n// instance-editable. Declared as constants for the same reason as the taglines:\n// every page instance still carries stale overrides, and constants make them inert.\nconst platformHeader=\"Platform\";const platformLinks=[{label:\"Overview\",href:\"/#solutions\"},{label:\"Autonomous Intelligence\",href:\"/#solutions\"},{label:\"Knowledge Graph\",href:\"/#solutions\"},{label:\"Field Kit\",href:\"/solutions#field-kit\"}];const solutionsHeader=\"Experiences\";const solutionsLinks=[{label:\"Moments\",href:\"/solutions#moments\"},{label:\"Spaces\",href:\"/solutions#spaces\"}];const ref=useRef(null);const[w,setW]=useState(1440);useEffect(()=>{if(!ref.current)return;const ro=new ResizeObserver(entries=>setW(entries[0].contentRect.width));ro.observe(ref.current);return()=>ro.disconnect();},[]);const isM=w<=430;const isT=w<=820&&w>430;const isD=w>820;const hPad=isM?20:isT?28:40;const gridCols=isM?\"1fr\":isT?\"1fr 1fr\":\"220px repeat(4, 1fr)\";const columns=[{heading:platformHeader,links:platformLinks},{heading:solutionsHeader,links:solutionsLinks},{heading:customersHeader,links:[{label:customersLink1Label,href:customersLink1Href},{label:customersLink2Label,href:customersLink2Href},{label:customersLink3Label,href:customersLink3Href}]},{heading:companyHeader,links:[{label:companyLink1Label,href:companyLink1Href},{label:companyLink2Label,href:companyLink2Href},{label:companyLink3Label,href:companyLink3Href,external:true},{label:companyLink4Label,href:companyLink4Href}]}];return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:css}),/*#__PURE__*/_jsx(\"div\",{ref:ref,className:\"wvn-footer\",style:{width:\"100%\",maxWidth:\"100%\",overflowX:\"hidden\"},children:/*#__PURE__*/_jsx(\"footer\",{style:{width:\"100%\",background:FOOTER_BG,borderTop:`1px solid ${DIVIDER}`,padding:isM?\"48px 0 32px\":isT?\"56px 0 36px\":\"64px 0 40px\",fontFamily:F,boxSizing:\"border-box\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:1200,margin:\"0 auto\",padding:`0 ${hPad}px`,boxSizing:\"border-box\"},children:[!isD&&/*#__PURE__*/_jsxs(\"div\",{style:{marginBottom:isM?32:36},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:15,fontWeight:700,color:\"#FFFFFF\",marginBottom:10},children:\"WVN\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:13,color:TAGLINE_COLOR,lineHeight:1.55,margin:0,maxWidth:320},children:brandTagline})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:isM?\"flex\":\"grid\",flexDirection:isM?\"column\":undefined,gap:isM?28:isT?32:40,gridTemplateColumns:isM?undefined:gridCols},children:[isD&&/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:15,fontWeight:700,color:\"#FFFFFF\",marginBottom:12},children:\"WVN\"}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:13,color:TAGLINE_COLOR,lineHeight:1.55,margin:0},children:brandTagline})]}),columns.map(col=>/*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:11,fontWeight:700,textTransform:\"uppercase\",color:HEADING_COLOR,letterSpacing:\"0.09em\",marginBottom:isM?14:16},children:col.heading}),col.links.map(link=>/*#__PURE__*/_jsx(FooterLink,{...link},link.label))]},col.heading))]}),/*#__PURE__*/_jsx(\"div\",{style:{borderTop:`1px solid ${DIVIDER}`,marginTop:isM?36:isT?40:48,paddingTop:isM?20:24,display:\"flex\",flexDirection:isM?\"column\":\"row\",justifyContent:\"space-between\",alignItems:isM?\"flex-start\":\"center\"},children:/*#__PURE__*/_jsx(\"span\",{style:{fontSize:12,color:\"rgba(255,255,255,0.28)\"},children:copyrightText})})]})})})]});}function FooterLink({label,href,external}){const handleClick=e=>{if(external)return;e.preventDefault();const currentPath=window.location.pathname;const hasHash=href.includes(\"#\");if(hasHash){const[path,hash]=href.split(\"#\");if(path===currentPath||path===\"/\"&&currentPath===\"/\"){document.getElementById(hash)?.scrollIntoView({behavior:\"smooth\"});}else{window.location.href=href;}}else{window.location.href=href;}};return /*#__PURE__*/_jsx(\"a\",{href:href,target:external?\"_blank\":undefined,rel:external?\"noopener noreferrer\":undefined,onClick:handleClick,className:\"footer-link\",children:label});}addPropertyControls(WVNFooter,{customersHeader:{type:ControlType.String,defaultValue:\"Customers\"},customersLink1Label:{type:ControlType.String,defaultValue:\"All Case Studies\"},customersLink1Href:{type:ControlType.String,defaultValue:\"/customers\"},customersLink2Label:{type:ControlType.String,defaultValue:\"PepsiCo\"},customersLink2Href:{type:ControlType.String,defaultValue:\"/customers#pepsi\"},customersLink3Label:{type:ControlType.String,defaultValue:\"Mugsy\"},customersLink3Href:{type:ControlType.String,defaultValue:\"/customers#mugsy\"},companyHeader:{type:ControlType.String,defaultValue:\"Company\"},companyLink1Label:{type:ControlType.String,defaultValue:\"About\"},companyLink1Href:{type:ControlType.String,defaultValue:\"/company\"},companyLink2Label:{type:ControlType.String,defaultValue:\"Press\"},companyLink2Href:{type:ControlType.String,defaultValue:\"/company#press\"},companyLink3Label:{type:ControlType.String,defaultValue:\"LinkedIn\"},companyLink3Href:{type:ControlType.String,defaultValue:\"https://www.linkedin.com/company/wearewvn/\"},companyLink4Label:{type:ControlType.String,defaultValue:\"Privacy\"},companyLink4Href:{type:ControlType.String,defaultValue:\"/privacy\"},copyrightText:{type:ControlType.String,defaultValue:\"\\xa9 2026 WVN AI Corp. All rights reserved.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"WVNFooter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./WVNFooter.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect,useRef,useCallback}from\"react\";const INK=\"#0D1421\";const MUTED=\"#637085\";const LIME=\"#EEFF3F\";const NAV_H=60;/**\n * Site-wide webfont loader. WVNNav is the single owner because it renders on\n * every page; no other component should load the font.\n *\n * Why this is needed at all: every component names 'Plus Jakarta Sans', but\n * Framer only bundles a webfont when a Framer text style or text node uses it,\n * and this site is built entirely from code components. The project's\n * Plus Jakarta Sans text styles are therefore never exercised, the published\n * page shipped zero @font-face rules, and the family only resolved for visitors\n * who happened to have the font installed locally. Everyone else silently got\n * the system sans at every breakpoint.\n *\n * Idempotent: keyed by element id, so a second caller is a no-op and the link is\n * never duplicated. Preconnect only — no preload; the stylesheet request is on\n * the critical path already and a preload would just duplicate it.\n */const FONT_LINK_ID=\"wvn-font-plus-jakarta\";const FONT_HREF=\"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap\";function useWVNFont(){useEffect(()=>{if(typeof document===\"undefined\")return;if(document.getElementById(FONT_LINK_ID))return;const preconnect=document.createElement(\"link\");preconnect.rel=\"preconnect\";preconnect.href=\"https://fonts.gstatic.com\";preconnect.crossOrigin=\"anonymous\";document.head.appendChild(preconnect);const link=document.createElement(\"link\");link.id=FONT_LINK_ID;link.rel=\"stylesheet\";link.href=FONT_HREF;document.head.appendChild(link);},[]);}const navLinks=[{label:\"Platform\",href:\"/#solutions\",activePath:\"/\",hashId:\"solutions\"},{label:\"Experiences\",href:\"/solutions\",activePath:\"/solutions\",hashId:null},{label:\"Methodology\",href:\"/methodology\",activePath:\"/methodology\",hashId:null},{label:\"Developers\",href:\"/developers\",activePath:\"/developers\",hashId:null},{label:\"Customers\",href:\"/customers\",activePath:\"/customers\",hashId:null},{label:\"Company\",href:\"/company\",activePath:\"/company\",hashId:null},{label:\"Press\",href:\"/company#press\",activePath:null,hashId:\"press\"}];const css=`\nhtml { scrollbar-gutter: stable; }\n.wvn-nav { width: 100%; max-width: 100%; position: relative; }\n.wvn-nav .nav-bar {\n  position: fixed; left: 0; right: 0; z-index: 200;\n  height: 60px; display: flex; align-items: center;\n  background: rgba(255,255,255,0.95);\n  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);\n  border-bottom: 1px solid rgba(0,0,0,0.07);\n  box-shadow: 0 1px 16px rgba(0,0,0,0.08);\n  font-family: 'Plus Jakarta Sans', sans-serif;\n  box-sizing: border-box;\n}\n.wvn-nav .logo-wrap { display: flex; align-items: center; text-decoration: none; flex-shrink: 0; }\n.wvn-nav .nav-link {\n  font-size: 13.5px; font-weight: 700; color: #98A3B3;\n  text-decoration: none; cursor: pointer;\n  font-family: 'Plus Jakarta Sans', sans-serif;\n  display: inline-block; white-space: nowrap;\n  padding: 0; margin: 0; border: none; background: transparent;\n  line-height: 1.4; box-sizing: border-box;\n  vertical-align: middle;\n}\n.wvn-nav .nav-link:hover { color: #637085; }\n.wvn-nav .nav-link.active { color: #0D1421; }\n.wvn-nav .sign-in {\n  font-size: 13.5px; font-weight: 700; color: #2663EB;\n  text-decoration: none; padding: 10px 18px; border-radius: 3px;\n  border: 1.5px solid #2663EB; background: transparent;\n  transition: all 0.2s; cursor: pointer; white-space: nowrap;\n  font-family: 'Plus Jakarta Sans', sans-serif;\n}\n.wvn-nav .sign-in:hover { background: #EEF3FD; border-color: #1a4fc4; color: #1a4fc4; }\n.wvn-nav .book-demo {\n  font-size: 13.5px; font-weight: 700; background: #2663EB; color: #FFFFFF;\n  padding: 10px 18px; border-radius: 3px; border: 1.5px solid #2663EB;\n  text-decoration: none; transition: all 0.2s; cursor: pointer; white-space: nowrap;\n  font-family: 'Plus Jakarta Sans', sans-serif;\n}\n.wvn-nav .book-demo:hover { background: #1a4fc4; border-color: #1a4fc4; }\n.wvn-nav .hamburger-line {\n  display: block; position: absolute; left: 0; width: 24px; height: 2px;\n  background: #0D1421; border-radius: 1px; transition: all 0.3s ease;\n}\n.wvn-nav .mobile-link {\n  font-size: 16px; font-weight: 700; color: #0D1421; text-decoration: none;\n  padding: 16px 0; border-bottom: 1px solid rgba(0,0,0,0.07); display: block;\n  font-family: 'Plus Jakarta Sans', sans-serif;\n}\n.wvn-nav .mobile-sign-in {\n  font-size: 15px; font-weight: 700; color: #2663EB; text-decoration: none;\n  padding: 14px 18px; border-radius: 3px; border: 1.5px solid #2663EB;\n  background: transparent; text-align: center; box-sizing: border-box; width: 100%;\n  font-family: 'Plus Jakarta Sans', sans-serif; display: block;\n}\n.wvn-nav .mobile-book-demo {\n  font-size: 15px; font-weight: 700; background: #2663EB; color: #FFFFFF;\n  padding: 14px 18px; border-radius: 3px; border: 1.5px solid #2663EB;\n  text-decoration: none; text-align: center; box-sizing: border-box; width: 100%;\n  font-family: 'Plus Jakarta Sans', sans-serif; display: block;\n}\n.wvn-nav .wvn-banner-bar { cursor: pointer; text-decoration: none; }\n.wvn-nav .wvn-banner-arrow { display: inline-block; transition: transform 0.2s ease; }\n.wvn-nav .wvn-banner-bar:hover .wvn-banner-arrow { transform: translateX(4px); }\n@media (prefers-reduced-motion: reduce) {\n  .wvn-nav .wvn-banner-arrow { transition: none; }\n  .wvn-nav .wvn-banner-bar:hover .wvn-banner-arrow { transform: none; }\n}\n`;function WVNLogo({color=INK,size=72}){return /*#__PURE__*/_jsxs(\"svg\",{width:size,height:size*(18/72),viewBox:\"0 0 1411 361\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M0 120.435H120V0.435059H112C50.1441 0.435059 0 50.5792 0 112.435V120.435Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M189 0.435059H219V120.435H189V0.435059Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M141 0.435059H171V120.435H141V0.435059Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M360 120.435H240V0.435059H248C309.856 0.435059 360 50.5792 360 112.435V120.435Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M2.62268e-06 171.435L1.31134e-06 141.435H120V171.435H2.62268e-06Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M2.62268e-06 219.435L1.31134e-06 189.435H120V219.435H2.62268e-06Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M360 189.435V219.435H240V189.435H360Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M360 141.435V171.435H240V141.435H360Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M0 240.435H120V360.435H112C50.1441 360.435 0 310.291 0 248.435V240.435Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M171 360.435H141L141 240.435H171L171 360.435Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M219 360.435H189L189 240.435H219L219 360.435Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M360 240.435H240V360.435H248C309.856 360.435 360 310.291 360 248.435V240.435Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M1102.43 256.212C1094.79 286.094 1067.87 307 1037.03 307H901.008V53.8701H991.01V195.66C991.01 206.668 999.933 215.592 1010.94 215.592C1020.26 215.592 1028.33 209.141 1030.38 200.056L1063.43 53.8701H1154.14L1102.43 256.212Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M1294.77 53.8701C1358.45 53.8701 1410.08 105.498 1410.08 169.185V307H1320.08V167.779C1320.08 155.352 1310 145.278 1297.58 145.278C1285.15 145.278 1275.08 155.352 1275.08 167.779V307H1185.08V53.8701H1294.77Z\",fill:color}),/*#__PURE__*/_jsx(\"path\",{d:\"M856.007 191.685C856.007 255.372 804.379 307 740.692 307H496V53.8701H586.002V193.092C586.002 205.518 596.076 215.592 608.502 215.592C620.929 215.592 631.003 205.518 631.003 193.092V53.8701H721.004V193.092C721.004 205.518 731.078 215.592 743.505 215.592C755.932 215.592 766.005 205.518 766.005 193.092V53.8701H856.007V191.685Z\",fill:color})]});}export default function WVNNav({signInUrl=\"https://app.wearewvn.ai/login\",bookDemoUrl=\"#book-demo\"}){const ref=useRef(null);const navRef=useRef(null);const bannerRef=useRef(null);const[compWidth,setCompWidth]=useState(1440);const[menuOpen,setMenuOpen]=useState(false);const[currentPath,setCurrentPath]=useState(()=>typeof window!==\"undefined\"?window.location.pathname:\"\");const[activeHash,setActiveHash]=useState(null);const[bannerH,setBannerH]=useState(36);const isScrollingFromClick=useRef(false);const clickTimeout=useRef(null);// Loads Plus Jakarta Sans for the whole site. See useWVNFont above.\nuseWVNFont();// Announcement banner promotes /methodology site-wide; suppressed on /methodology itself.\nconst showBanner=currentPath!==\"/methodology\";useEffect(()=>{if(!ref.current)return;const observer=new ResizeObserver(entries=>{setCompWidth(entries[0].contentRect.width);});observer.observe(ref.current);return()=>observer.disconnect();},[]);// Measure the live banner height so the nav offset and in-flow spacer derive from it natively\n// (replacing the old cross-component injection hack). Re-measures on wrap / resize.\nuseEffect(()=>{const el=bannerRef.current;if(!el)return;const measure=()=>{if(bannerRef.current)setBannerH(Math.round(bannerRef.current.getBoundingClientRect().height));};measure();const ro=new ResizeObserver(measure);ro.observe(el);return()=>ro.disconnect();},[showBanner]);useEffect(()=>{const onPopState=()=>{setCurrentPath(window.location.pathname);setActiveHash(null);};window.addEventListener(\"popstate\",onPopState);return()=>window.removeEventListener(\"popstate\",onPopState);},[]);useEffect(()=>{const hashIds=navLinks.filter(l=>l.hashId).map(l=>l.hashId);const observers=[];const visible=new Set;hashIds.forEach(id=>{const el=document.getElementById(id);if(!el)return;const obs=new IntersectionObserver(([entry])=>{if(isScrollingFromClick.current)return;if(entry.isIntersecting)visible.add(id);else visible.delete(id);setActiveHash(visible.size>0?Array.from(visible).pop():null);},{threshold:.1,rootMargin:\"-80px 0px -50% 0px\"});obs.observe(el);observers.push(obs);});return()=>observers.forEach(o=>o.disconnect());},[]);const isMobile=compWidth<=820;const isBannerNarrow=compWidth<=430;const navTop=showBanner?bannerH:0;useEffect(()=>{document.body.style.overflow=menuOpen&&isMobile?\"hidden\":\"\";return()=>{document.body.style.overflow=\"\";};},[menuOpen,isMobile]);useEffect(()=>{if(!isMobile)setMenuOpen(false);},[isMobile]);useEffect(()=>{return()=>{if(clickTimeout.current)clearTimeout(clickTimeout.current);};},[]);const handleBookDemo=e=>{e.preventDefault();setMenuOpen(false);window.dispatchEvent(new CustomEvent(\"openBookingModal\"));};const handleNavClick=useCallback((e,href,link)=>{const hasHash=href.includes(\"#\");if(hasHash){const[path,hash]=href.split(\"#\");const isCurrentPage=path===currentPath||path===\"/\"&&currentPath===\"/\";if(isCurrentPage){e.preventDefault();setMenuOpen(false);isScrollingFromClick.current=true;setActiveHash(hash);if(clickTimeout.current)clearTimeout(clickTimeout.current);clickTimeout.current=setTimeout(()=>{isScrollingFromClick.current=false;},400);const el=document.getElementById(hash);if(el){el.scrollIntoView({behavior:\"smooth\"});}}else{setCurrentPath(path||\"/\");setActiveHash(hash);setMenuOpen(false);}}else{setCurrentPath(link.activePath||href);setActiveHash(null);setMenuOpen(false);}},[currentPath]);const isLinkActive=useCallback(link=>{if(!currentPath)return false;if(activeHash&&link.hashId===activeHash)return true;if(activeHash)return false;return link.activePath!==null&&currentPath===link.activePath;},[activeHash,currentPath]);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:css}),/*#__PURE__*/_jsxs(\"div\",{ref:ref,className:\"wvn-nav\",children:[showBanner&&/*#__PURE__*/_jsx(\"a\",{ref:bannerRef,href:\"/methodology\",className:\"wvn-banner-bar\",style:{position:\"fixed\",top:0,left:0,right:0,zIndex:250,background:INK,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",minHeight:36,padding:isBannerNarrow?\"7px 16px\":\"8px 20px\",boxSizing:\"border-box\",fontFamily:\"'Plus Jakarta Sans', sans-serif\"},children:/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:isBannerNarrow?11:13,color:\"#FFFFFF\",textAlign:\"center\",lineHeight:1.35},children:[\"Real world experiences now have a standard unit of measurement.\",\" \",/*#__PURE__*/_jsxs(\"span\",{style:{color:LIME,fontWeight:700,whiteSpace:\"nowrap\"},children:[\"Read the methodology. \",/*#__PURE__*/_jsx(\"span\",{className:\"wvn-banner-arrow\",children:\"→\"})]})]})}),/*#__PURE__*/_jsxs(\"nav\",{ref:navRef,className:\"nav-bar\",style:{top:navTop,padding:isMobile?\"0 20px\":\"0 40px\"},children:[/*#__PURE__*/_jsx(\"a\",{href:\"/\",onClick:()=>{setCurrentPath(\"/\");setActiveHash(null);setMenuOpen(false);},className:\"logo-wrap\",style:{marginRight:isMobile?0:40},children:/*#__PURE__*/_jsx(WVNLogo,{color:INK,size:72})}),!isMobile&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",gap:28,flex:1,alignItems:\"center\"},children:navLinks.map(link=>/*#__PURE__*/_jsx(\"a\",{href:link.href,onClick:e=>handleNavClick(e,link.href,link),className:`nav-link${isLinkActive(link)?\" active\":\"\"}`,children:link.label},link.label))}),!isMobile&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12,flexShrink:0},children:[/*#__PURE__*/_jsx(\"a\",{href:signInUrl,target:\"_blank\",rel:\"noopener noreferrer\",className:\"sign-in\",children:\"Sign in\"}),/*#__PURE__*/_jsx(\"a\",{href:bookDemoUrl,onClick:handleBookDemo,className:\"book-demo\",children:\"Book a demo\"})]}),isMobile&&/*#__PURE__*/_jsx(\"button\",{onClick:()=>setMenuOpen(!menuOpen),\"aria-label\":\"Toggle menu\",style:{background:\"none\",border:\"none\",padding:8,cursor:\"pointer\",zIndex:201,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",marginLeft:\"auto\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:24,height:24,position:\"relative\"},children:[/*#__PURE__*/_jsx(\"span\",{className:\"hamburger-line\",style:{top:menuOpen?11:5,transform:menuOpen?\"rotate(45deg)\":\"none\"}}),/*#__PURE__*/_jsx(\"span\",{className:\"hamburger-line\",style:{top:11,opacity:menuOpen?0:1}}),/*#__PURE__*/_jsx(\"span\",{className:\"hamburger-line\",style:{top:menuOpen?11:17,transform:menuOpen?\"rotate(-45deg)\":\"none\"}})]})})]}),showBanner&&/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{width:\"100%\",height:bannerH}}),isMobile&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"fixed\",top:navTop+NAV_H,left:0,right:0,bottom:0,zIndex:300,background:\"#FFFFFF\",display:\"flex\",flexDirection:\"column\",padding:20,overflow:\"auto\",transform:menuOpen?\"translateY(0)\":\"translateY(-100%)\",opacity:menuOpen?1:0,transition:\"transform 0.3s ease, opacity 0.3s ease\",pointerEvents:menuOpen?\"auto\":\"none\",fontFamily:\"'Plus Jakarta Sans', sans-serif\"},children:[navLinks.map(link=>/*#__PURE__*/_jsx(\"a\",{href:link.href,onClick:e=>handleNavClick(e,link.href,link),className:\"mobile-link\",children:link.label},link.label)),/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:32,display:\"flex\",flexDirection:\"column\",gap:12},children:[/*#__PURE__*/_jsx(\"a\",{href:signInUrl,target:\"_blank\",rel:\"noopener noreferrer\",className:\"mobile-sign-in\",children:\"Sign in\"}),/*#__PURE__*/_jsx(\"a\",{href:bookDemoUrl,onClick:handleBookDemo,className:\"mobile-book-demo\",children:\"Book a demo\"})]})]})]})]});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"WVNNav\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./WVNNav.map"],"mappings":"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"}