{"version":3,"file":"shared-lib.LKShh_Bp.mjs","names":["mask","SVG","getProps","Icon","React.forwardRef","fonts","css","className","fonts","css","className","fonts","css","className","mask","SVG","getProps","Icon","React.forwardRef","fonts","css","className","useRef","fonts","css","className","fonts","css","className","fonts","css","className","React.forwardRef","__esmMin","init_ssg_sandbox_shims","window","de","init_jsx_runtime","J","c","init_npm_react_18_3_1","ce","motion","init_framer_CaDWdxiz","addPropertyControls","fontStore","cx","ControlType","withCSS","useSVGTemplate","mask$2","Base","MotionSVG","SVG$2","svg","getProps$2","Icon$2","init_ZodASoCsI","props","rest","animated","width1","color","restProps","href","className","P_DcoRcrY","JEeZYcamG","style","fonts$7","css$7","className$7","init_DOdv9gApo","fonts$6","css$6","className$6","init_TPMD3JQ4Q","fonts$5","css$5","className$5","init_YL_anmAJu","mask$1","SVG$1","getProps$1","Icon$1","init_hPLkueAbt","fonts$4","css$4","className$4","init_E5SvqrXV_","ensureStyle","el","CSS","withNavUnderline","Component","withNavUnderlineSolutions","withNavMenu","root","frame","track","menu","r","init_NavUnderline","byName","name","allByName","found","names","n","i","firstTextNode","once","io","entries","run","OBSERVE","withMaskedLineLate","ref","wrapper","inner","prefersReduced","siblings","index","EASE","check","withChoreography","makeChoreography","withChoreographyConnected","mq","reduce","scope","connected","pinRunway","section05","steps","shots","rails","barEls","bars","missing","fade","cleanups","button","fill","onClick","playAuto","top","current","barsRun","setStep","auto","STEP_MS","stopAuto","showAuto","k","active","start","onScroll","rootTop","p","clamp","sub","onMotionChange","fn","withCounter","match","prefix","raw","suffix","target","fmt","v","write","node","state","play","step","ts","easeOut","vh","visible","gone","t","withMaskedLine","children","withRule","owner","rule","withPoint","parent","delay","withNav","scrolled","menuOpen","init_Choreography","fonts$3","css$3","className$3","init_BKJ4SzEq5","fonts$2","css$2","className$2","init_iVRpdaR0_","fonts$1","css$1","className$1","init_Lk2z9jQgm","fonts","css","init_X_YiIV5kI","mask","SVG","getProps","Icon","init_WvChJbET1"],"sources":["https:/framerusercontent.com/modules/N337XogaeeiHiht2ZN9f/pwB48zFyU8FvNKh5lIfY/ZodASoCsI.js","https:/framerusercontent.com/modules/iXhMh5smu8sOepuR13lA/y3t35dWQUd9n1NnbrrQp/DOdv9gApo.js","https:/framerusercontent.com/modules/KSzxXFEdfHaEHYqR1bIH/QQxkmZsexCrsjOh9vWfj/TPMD3JQ4Q.js","https:/framerusercontent.com/modules/2aR8cEe21nqClLEYuYmk/B5YWAYJEEkr1UsrdRXUo/YL_anmAJu.js","https:/framerusercontent.com/modules/LAXiEJr65BPUZxCMfvny/MXXkfZE9kdK37MtSrrkf/hPLkueAbt.js","https:/framerusercontent.com/modules/ZmklM4AyX48o6fWotNKW/ojTEVawvu6THhHzbbskz/E5SvqrXV_.js","https:/framerusercontent.com/modules/3An23sGTfjzocL7i6Uho/QHIEfg9CVLmyUDb7gU1f/NavUnderline.js","https:/framerusercontent.com/modules/qFCJjn0xeulk3EJEqGc7/AZYybefnsRImEuBCCgD5/Choreography.js","https:/framerusercontent.com/modules/bufExAtNdNAfFbglyzXk/p7SG85R776AiyyoQrcs8/BKJ4SzEq5.js","https:/framerusercontent.com/modules/8fak42Ent9BWwJNbw5kc/DfkRK2nC6SmKTndaD282/iVRpdaR0_.js","https:/framerusercontent.com/modules/tSfm1H3mQQov6FfIonQu/77adaGK0Vm10AQUNGZCP/Lk2z9jQgm.js","https:/framerusercontent.com/modules/pXDHcEORQwd8McFqvyvH/sC6LKKMMjVbiwNpX5FCN/X_YiIV5kI.js","https:/framerusercontent.com/modules/WYY5Mrbhz2btaHtwpd8B/TwK2GrVjbuOO0n82sH08/WvChJbET1.js"],"sourcesContent":["// Generated by Framer (85eaff3)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 0 L 6 6 L 12 0\" fill=\"transparent\" height=\"6px\" id=\"HLE2KBXxw\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--js9iwy, 2)\" stroke=\"var(--1m973uw, rgb(0,0,0))\" transform=\"translate(6 9)\" width=\"12px\"/></svg>';const getProps=({color,height,id,width,width1,...props})=>{return{...props,JEeZYcamG:width1??props.JEeZYcamG??2,P_DcoRcrY:color??props.P_DcoRcrY??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,P_DcoRcrY,JEeZYcamG,...restProps}=getProps(props);const href=useSVGTemplate(\"4024583230\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-rjFuH\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m973uw\":P_DcoRcrY,\"--js9iwy\":JEeZYcamG,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-rjFuH { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"P_DcoRcrY\":\"color\",\"JEeZYcamG\":\"width1\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Chevron Down\",\"color\":{\"type\":\"variable\",\"value\":\"1m973uw\"},\"set\":{\"localId\":\"vectorSet/ZsiCCGPvG\",\"id\":\"ZsiCCGPvG\",\"moduleId\":\"Y7SpbVH16cWqMhj75z1M\"}}\n */const Icon=withCSS(Component,css,\"framer-rjFuH\");Icon.displayName=\"Chevron Down\";export default Icon;addPropertyControls(Icon,{P_DcoRcrY:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},JEeZYcamG:{defaultValue:2,displayStepper:true,hidden:false,max:16,min:1,title:\"Width\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerVector\":\"{\\\"name\\\":\\\"Chevron Down\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1m973uw\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/ZsiCCGPvG\\\",\\\"id\\\":\\\"ZsiCCGPvG\\\",\\\"moduleId\\\":\\\"Y7SpbVH16cWqMhj75z1M\\\"}}\",\"framerVariables\":\"{\\\"P_DcoRcrY\\\":\\\"color\\\",\\\"JEeZYcamG\\\":\\\"width1\\\"}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"24\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9801af1)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-regular\",\"FS;Switzer-bold\",\"FS;Switzer-bold italic\",\"FS;Switzer-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/BLNB4FAQFNK56DWWNF7PMGTCOTZHOEII/ST3WKSSDMBK2MIQQO3MAVYWLF4FTOLFV/6IN5WOLRCYP4G4MOCOHOMXNON6Q7MDAR.woff2\",weight:\"400\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/HBNTRIISA5MEXGL5WPYI7CV2HIWTDV3Q/YDPDINVT673XLXNSTMLG4JNCZZMVVNPN/Y7SCNZJOT2MW5ADSGOFLDGH4TNL4JCQY.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LVPXCMXCWY3V7PSXRMGRQUJDAS2DT47E/BPEVRT2HG7PPVVUS7A67MZQQZW6LR6A5/A7AS3UPAGLC7MDVC67SBNTE5FGF2Z2RG.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/XVUY2PHYBA6KMN4RMEMJPHQSTKCQ267G/UICOQA6KCSHFOSCPYDVVDNNCDKYFXHJB/O34WRFYO7JNWEBBA2LRV2XYRUSYXYDKH.woff2\",weight:\"400\"}]}];export const css=['.framer-2dhIx .framer-styles-preset-13fes7q:not(.rich-text-wrapper), .framer-2dhIx .framer-styles-preset-13fes7q.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 13px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #666666; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-2dhIx\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9801af1)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-regular\",\"FS;Switzer-bold\",\"FS;Switzer-bold italic\",\"FS;Switzer-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/BLNB4FAQFNK56DWWNF7PMGTCOTZHOEII/ST3WKSSDMBK2MIQQO3MAVYWLF4FTOLFV/6IN5WOLRCYP4G4MOCOHOMXNON6Q7MDAR.woff2\",weight:\"400\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/HBNTRIISA5MEXGL5WPYI7CV2HIWTDV3Q/YDPDINVT673XLXNSTMLG4JNCZZMVVNPN/Y7SCNZJOT2MW5ADSGOFLDGH4TNL4JCQY.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LVPXCMXCWY3V7PSXRMGRQUJDAS2DT47E/BPEVRT2HG7PPVVUS7A67MZQQZW6LR6A5/A7AS3UPAGLC7MDVC67SBNTE5FGF2Z2RG.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/XVUY2PHYBA6KMN4RMEMJPHQSTKCQ267G/UICOQA6KCSHFOSCPYDVVDNNCDKYFXHJB/O34WRFYO7JNWEBBA2LRV2XYRUSYXYDKH.woff2\",weight:\"400\"}]}];export const css=['.framer-UMRj2 .framer-styles-preset-mvhgej:not(.rich-text-wrapper), .framer-UMRj2 .framer-styles-preset-mvhgej.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.5em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #666666; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-UMRj2\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (b7e356e)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Clash Grotesk-regular\",\"FS;Clash Grotesk-bold\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Clash Grotesk\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Clash Grotesk\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/O462VY6O6FTQCS72XVMTQHXAM4NN5CY3/TWF57ITZORMJ3MEWLQQIVO6BMXIB6FUR/MJQFMMOTEGNXDVM7HBBDTQHTVB2M7Y6G.woff2\",weight:\"400\"},{cssFamilyName:\"Clash Grotesk\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Clash Grotesk\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/P6VJ47S3OYMUC7HYSJLTK7PEIK5O2NPQ/TK62VLUWA76PMTK2XWBNDZB7QVXJGYE3/I5W5NEJGYVFUC5I4XOXVET63OE5PSVHJ.woff2\",weight:\"700\"}]}];export const css=[\".framer-HZyq7 .framer-styles-preset-mfnzn5:not(.rich-text-wrapper), .framer-HZyq7 .framer-styles-preset-mfnzn5.rich-text-wrapper h3 { --framer-font-family: \\\"Clash Grotesk\\\", \\\"Clash Grotesk Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Clash Grotesk\\\", \\\"Clash Grotesk Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 25.6px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: -0.025em; --framer-line-height: 1em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #000000; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }\",\"@media (max-width: 1199px) and (min-width: 810px) { .framer-HZyq7 .framer-styles-preset-mfnzn5:not(.rich-text-wrapper), .framer-HZyq7 .framer-styles-preset-mfnzn5.rich-text-wrapper h3 { --framer-font-family: \\\"Clash Grotesk\\\", \\\"Clash Grotesk Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Clash Grotesk\\\", \\\"Clash Grotesk Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 24px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: -0.025em; --framer-line-height: 1em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #000000; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\",\"@media (max-width: 809px) and (min-width: 0px) { .framer-HZyq7 .framer-styles-preset-mfnzn5:not(.rich-text-wrapper), .framer-HZyq7 .framer-styles-preset-mfnzn5.rich-text-wrapper h3 { --framer-font-family: \\\"Clash Grotesk\\\", \\\"Clash Grotesk Placeholder\\\", sans-serif; --framer-font-family-bold: \\\"Clash Grotesk\\\", \\\"Clash Grotesk Placeholder\\\", sans-serif; --framer-font-open-type-features: 'blwf' on, 'cv03' on, 'cv04' on, 'cv09' on, 'cv11' on; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-letter-spacing: -0.025em; --framer-line-height: 1em; --framer-paragraph-spacing: 40px; --framer-text-alignment: start; --framer-text-color: #000000; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }\"];export const className=\"framer-HZyq7\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (7788242)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.img,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"img\",{...rest,ref:ref});});const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,alt:\"\",className:cx(\"framer-aKQaU\",className),layoutId:layoutId,ref:ref,src:'data:image/svg+xml,<svg display=\"block\" id=\"1342741292\" role=\"presentation\" viewBox=\"0 0 83 17\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 1.91 6.9 L 1.91 11.85 L 0 11.85 L 0 0 L 1.91 0 L 1.91 5.06 L 5.5 5.06 L 8.97 0 L 11.23 0 L 7.09 5.85 L 11.22 11.85 L 8.95 11.85 L 5.54 6.9 M 13.89 0 L 13.89 11.85 L 11.98 11.85 L 11.98 0 M 19.82 12.03 C 18.353 12.03 17.19 11.633 16.33 10.84 C 15.47 10.04 15.04 8.913 15.04 7.46 C 15.04 6.08 15.473 4.973 16.34 4.14 C 17.207 3.3 18.353 2.88 19.78 2.88 C 21.173 2.88 22.287 3.25 23.12 3.99 C 23.953 4.723 24.37 5.747 24.37 7.06 C 24.37 7.38 24.347 7.657 24.3 7.89 L 16.83 7.89 C 16.863 8.763 17.113 9.417 17.58 9.85 C 18.047 10.277 18.777 10.49 19.77 10.49 C 21.503 10.49 22.37 9.943 22.37 8.85 L 22.37 8.7 L 24.28 8.7 L 24.28 8.86 C 24.28 9.793 23.863 10.557 23.03 11.15 C 22.197 11.737 21.127 12.03 19.82 12.03 M 19.75 4.38 C 17.917 4.38 16.95 5.197 16.85 6.83 L 22.56 6.83 L 22.56 6.79 C 22.56 5.183 21.623 4.38 19.75 4.38 M 29.96 12.03 C 28.5 12.03 27.337 11.633 26.47 10.84 C 25.61 10.04 25.18 8.913 25.18 7.46 C 25.18 6.08 25.613 4.973 26.48 4.14 C 27.347 3.3 28.497 2.88 29.93 2.88 C 31.317 2.88 32.427 3.25 33.26 3.99 C 34.093 4.723 34.51 5.747 34.51 7.06 C 34.51 7.38 34.487 7.657 34.44 7.89 L 26.97 7.89 C 27.003 8.763 27.253 9.417 27.72 9.85 C 28.187 10.277 28.917 10.49 29.91 10.49 C 31.643 10.49 32.51 9.943 32.51 8.85 L 32.51 8.7 L 34.42 8.7 L 34.42 8.86 C 34.42 9.793 34.003 10.557 33.17 11.15 C 32.343 11.737 31.273 12.03 29.96 12.03 M 29.89 4.38 C 28.063 4.38 27.097 5.197 26.99 6.83 L 32.7 6.83 L 32.7 6.79 C 32.7 5.183 31.763 4.38 29.89 4.38 M 37.59 7.5 L 37.59 11.85 L 35.68 11.85 L 35.68 3.06 L 37.43 3.06 L 37.43 5.78 L 37.55 5.78 C 37.697 4.967 38.08 4.28 38.7 3.72 C 39.327 3.16 40.167 2.88 41.22 2.88 C 42.387 2.88 43.287 3.227 43.92 3.92 C 44.547 4.607 44.86 5.487 44.86 6.56 L 44.86 11.85 L 42.95 11.85 L 42.95 7.08 C 42.95 6.24 42.747 5.617 42.34 5.21 C 41.933 4.803 41.283 4.6 40.39 4.6 C 38.523 4.6 37.59 5.567 37.59 7.5 M 50.97 6.74 L 50.97 11.85 L 49.06 11.85 L 49.06 0 L 50.97 0 L 50.97 5.02 L 57.94 5.02 L 57.94 0 L 59.84 0 L 59.84 11.85 L 57.94 11.85 L 57.94 6.74 M 65.02 12.03 C 63.833 12.03 62.923 11.687 62.29 11 C 61.657 10.307 61.34 9.423 61.34 8.35 L 61.34 3.06 L 63.24 3.06 L 63.24 7.84 C 63.24 8.673 63.45 9.293 63.87 9.7 C 64.283 10.107 64.947 10.31 65.86 10.31 C 67.76 10.31 68.71 9.343 68.71 7.41 L 68.71 3.06 L 70.6 3.06 L 70.6 11.85 L 68.85 11.85 L 68.85 9.13 L 68.74 9.13 C 68.587 9.957 68.193 10.647 67.56 11.2 C 66.933 11.753 66.087 12.03 65.02 12.03 M 73.82 9.32 L 73.82 11.85 L 72.07 11.85 L 72.07 0 L 73.98 0 L 73.98 5.45 L 74.09 5.45 C 74.277 4.67 74.673 4.047 75.28 3.58 C 75.887 3.113 76.7 2.88 77.72 2.88 C 79.053 2.88 80.083 3.293 80.81 4.12 C 81.543 4.947 81.91 6.06 81.91 7.46 C 81.91 8.847 81.537 9.953 80.79 10.78 C 80.037 11.613 78.977 12.03 77.61 12.03 C 76.61 12.03 75.797 11.797 75.17 11.33 C 74.543 10.863 74.137 10.193 73.95 9.32 L 73.82 9.32 M 73.98 7.41 L 73.98 7.55 C 73.98 8.463 74.243 9.147 74.77 9.6 C 75.297 10.053 76.043 10.28 77.01 10.28 C 78.01 10.28 78.76 10.063 79.26 9.63 C 79.753 9.203 80 8.48 80 7.46 C 80 6.433 79.753 5.703 79.26 5.27 C 78.76 4.83 78.02 4.61 77.04 4.61 C 75 4.61 73.98 5.543 73.98 7.41\" fill=\"rgb(39, 39, 40)\" height=\"12.030000114440917px\" id=\"tYxT78AQE\" transform=\"translate(0.89 2.66)\" width=\"81.90999969482422px\"/></svg>',style:{...style}});});const css=[`.framer-aKQaU { -webkit-mask: ${mask}; aspect-ratio: 4.882352941176471; display: block; mask: ${mask}; user-select: none; width: 83px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 83\n * @framerIntrinsicHeight 17\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Wordmark Nav\",\"color\":{\"type\":\"static\",\"value\":\"rgb(39,39,40)\"},\"set\":{\"localId\":\"vectorSet/x_dB8JpFn\",\"id\":\"x_dB8JpFn\",\"moduleId\":\"pruPlkhMBywQdTqh4JB6\"}}\n */const Icon=withCSS(Component,css,\"framer-aKQaU\");Icon.displayName=\"Wordmark Nav\";export default Icon;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"83\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Wordmark Nav\\\",\\\"color\\\":{\\\"type\\\":\\\"static\\\",\\\"value\\\":\\\"rgb(39,39,40)\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/x_dB8JpFn\\\",\\\"id\\\":\\\"x_dB8JpFn\\\",\\\"moduleId\\\":\\\"pruPlkhMBywQdTqh4JB6\\\"}}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"17\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9801af1)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-regular\",\"FS;Switzer-bold\",\"FS;Switzer-bold italic\",\"FS;Switzer-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/BLNB4FAQFNK56DWWNF7PMGTCOTZHOEII/ST3WKSSDMBK2MIQQO3MAVYWLF4FTOLFV/6IN5WOLRCYP4G4MOCOHOMXNON6Q7MDAR.woff2\",weight:\"400\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/HBNTRIISA5MEXGL5WPYI7CV2HIWTDV3Q/YDPDINVT673XLXNSTMLG4JNCZZMVVNPN/Y7SCNZJOT2MW5ADSGOFLDGH4TNL4JCQY.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LVPXCMXCWY3V7PSXRMGRQUJDAS2DT47E/BPEVRT2HG7PPVVUS7A67MZQQZW6LR6A5/A7AS3UPAGLC7MDVC67SBNTE5FGF2Z2RG.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/XVUY2PHYBA6KMN4RMEMJPHQSTKCQ267G/UICOQA6KCSHFOSCPYDVVDNNCDKYFXHJB/O34WRFYO7JNWEBBA2LRV2XYRUSYXYDKH.woff2\",weight:\"400\"}]}];export const css=['.framer-TXC3f .framer-styles-preset-1i1lw67:not(.rich-text-wrapper), .framer-TXC3f .framer-styles-preset-1i1lw67.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 15px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #666666; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-TXC3f\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,forwardRef}from\"react\";const CSS=`\n.kh-nav-ul { position: relative; }\n.kh-nav-ul::after {\n    content: \"\";\n    position: absolute;\n    left: 0;\n    right: 0;\n    bottom: -5px;\n    height: 1.5px;\n    background: var(--token-62c2aa27-69df-4dce-9b77-8e4d19d60279, #5b4cf5);\n    transform: scaleX(0);\n    transform-origin: left center;\n    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);\n    pointer-events: none;\n}\n.kh-nav-ul:hover::after,\n*:has(> .kh-nav-sol):hover > .kh-nav-sol::after { transform: scaleX(1); }\n/* Nav + Solutions menu glass. Each blur layer reaches past its visible edge and is masked\n   back, so both sample the same backdrop and there is no seam where they meet. */\n.kh-nav, .kh-menu {\n    background: transparent !important;\n    backdrop-filter: none !important;\n    -webkit-backdrop-filter: none !important;\n}\n.kh-menu { overflow: visible !important; }\n.kh-nav::before, .kh-menu::before {\n    content: \"\";\n    position: absolute;\n    z-index: -1;\n    pointer-events: none;\n    background: rgba(234, 234, 234, 0.45);\n    backdrop-filter: blur(30px);\n    -webkit-backdrop-filter: blur(30px);\n}\n.kh-nav::before {\n    top: 0; left: 0; right: 0; bottom: -240px;\n    -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 240px), transparent calc(100% - 240px));\n    mask-image: linear-gradient(to bottom, #000 calc(100% - 240px), transparent calc(100% - 240px));\n}\n.kh-menu::before {\n    top: -80px; left: 0; right: 0; bottom: 0;\n    border-radius: 0 0 8px 8px;\n    -webkit-mask-image: linear-gradient(to bottom, transparent 80px, #000 80px);\n    mask-image: linear-gradient(to bottom, transparent 80px, #000 80px);\n}\n/* Nav bottom edge: white hairline plus a soft shadow, always on. While the Solutions menu\n   is open a gap is cut where the menu attaches (--kh-gap-l / --kh-gap-r, set by withNavMenu). */\n.kh-nav { border-bottom-color: transparent !important; }\n.kh-nav::after {\n    content: \"\";\n    position: absolute;\n    left: 0; right: 0; top: 100%;\n    height: 32px;\n    margin-top: -1px;\n    border-top: 1px solid var(--token-0bf6ea23-2c23-4e1c-bd94-c3f3716fcba1, #fff);\n    background: linear-gradient(to bottom, rgba(39, 39, 40, 0.035), rgba(39, 39, 40, 0.012) 40%, rgba(39, 39, 40, 0));\n    pointer-events: none;\n    -webkit-mask-image: linear-gradient(to right, #000 var(--kh-gap-l, -1px), transparent var(--kh-gap-l, -1px), transparent var(--kh-gap-r, -1px), #000 var(--kh-gap-r, -1px));\n    mask-image: linear-gradient(to right, #000 var(--kh-gap-l, -1px), transparent var(--kh-gap-l, -1px), transparent var(--kh-gap-r, -1px), #000 var(--kh-gap-r, -1px));\n}\n`;function ensureStyle(){if(typeof document===\"undefined\")return;if(document.getElementById(\"kh-nav-ul-style-v5\"))return;const el=document.createElement(\"style\");el.id=\"kh-nav-ul-style-v5\";el.textContent=CSS;document.head.appendChild(el);}// Indigo underline that grows left to right on hover\nexport function withNavUnderline(Component){return props=>{ensureStyle();return /*#__PURE__*/_jsx(Component,{...props,className:(props.className||\"\")+\" kh-nav-ul\"});};}// Solutions label: underline also shows while hovering the chevron next to it\nexport function withNavUnderlineSolutions(Component){return props=>{ensureStyle();return /*#__PURE__*/_jsx(Component,{...props,className:(props.className||\"\")+\" kh-nav-ul kh-nav-sol\"});};}// Solutions dropdown: while open, hide the nav's bottom hairline so the menu reads as part of the bar\nexport function withNavMenu(Component){return /*#__PURE__*/forwardRef((props,ref)=>{ensureStyle();useEffect(()=>{const root=document.documentElement;root.classList.add(\"kh-menu-open\");window.dispatchEvent(new Event(\"kh-menu-change\"));// Track the menu's left/right edges so the nav hairline can open a gap above it\nlet frame=0;const track=()=>{const menu=document.querySelector(\".kh-menu\");if(menu){const r=menu.getBoundingClientRect();root.style.setProperty(\"--kh-gap-l\",r.left+1+\"px\");root.style.setProperty(\"--kh-gap-r\",r.right-1+\"px\");}frame=requestAnimationFrame(track);};track();return()=>{cancelAnimationFrame(frame);root.style.removeProperty(\"--kh-gap-l\");root.style.removeProperty(\"--kh-gap-r\");root.classList.remove(\"kh-menu-open\");window.dispatchEvent(new Event(\"kh-menu-change\"));};},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref,className:(props.className||\"\")+\" kh-menu\"});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withNavMenu\":{\"type\":\"reactHoc\",\"name\":\"withNavMenu\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withNavUnderline\":{\"type\":\"reactHoc\",\"name\":\"withNavUnderline\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withNavUnderlineSolutions\":{\"type\":\"reactHoc\",\"name\":\"withNavUnderlineSolutions\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./NavUnderline.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";// Kleen Hub scroll choreography.\n// Implements CLAUDE.md 6.2, 6.3 and 6.6, plus the entrance behaviours that\n// Framer cannot express natively (scaleX/scaleY wipes, counting figures, and\n// masked line reveals that must observe a container rather than themselves).\n// Every constant is taken from design/desktop.html, the signed-off reference.\nconst EASE=\"cubic-bezier(.22,1,.36,1)\";const OBSERVE={threshold:.2,rootMargin:\"0px 0px -6% 0px\"};const clamp=v=>Math.min(1,Math.max(0,v));const easeInOut=t=>t<.5?4*t*t*t:1-Math.pow(-2*t+2,3)/2;const easeOut=t=>1-Math.pow(1-t,3);const prefersReduced=()=>typeof window!==\"undefined\"&&window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;function byName(root,name){return root.querySelector(`[data-framer-name=\"${name}\"]`);}function allByName(root,names){const found=names.map(n=>byName(root,n));return{els:found.filter(Boolean),missing:names.filter((_,i)=>!found[i])};}// Framer renders text inside nested elements. Rewrite the text node itself so\n// the surrounding spans, and therefore the styling, survive.\nfunction firstTextNode(el){const walker=document.createTreeWalker(el,NodeFilter.SHOW_TEXT);return walker.nextNode();}function once(el,run){const io=new IntersectionObserver(entries=>{entries.forEach(e=>{if(!e.isIntersecting)return;io.disconnect();run();});},OBSERVE);io.observe(el);return()=>io.disconnect();}/* Masked line reveal that waits until the line is a quarter of the way up the\n   screen (top above 75% of the viewport height), instead of firing the moment it\n   peeks in at the bottom. Uses scroll position, so it also works inside sticky sections. */export function withMaskedLineLate(Component){return props=>{const ref=useRef(null);useEffect(()=>{const wrapper=ref.current;if(!wrapper)return;const children=Array.from(wrapper.children);const inner=children.find(el=>(el.textContent||\"\").trim().length>0)??null;if(!inner)return;if(prefersReduced()){inner.style.transform=\"none\";return;}const siblings=wrapper.parentElement?Array.from(wrapper.parentElement.children):[wrapper];const index=Math.max(0,siblings.indexOf(wrapper));inner.style.transform=\"translateY(106%)\";inner.style.transition=`transform .66s ${EASE} ${(index*.07).toFixed(2)}s`;const check=()=>{const r=wrapper.getBoundingClientRect();if(r.top<window.innerHeight*.75&&r.bottom>0){inner.style.transform=\"translateY(0)\";window.removeEventListener(\"scroll\",check);window.removeEventListener(\"resize\",check);}};window.addEventListener(\"scroll\",check,{passive:true});window.addEventListener(\"resize\",check);requestAnimationFrame(check);return()=>{window.removeEventListener(\"scroll\",check);window.removeEventListener(\"resize\",check);};},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}/* ------------------------------------------------------------------ *//* 6.2 and 6.3 — the scroll engine. Attach to the 02 Wrapper.          *//* ------------------------------------------------------------------ */export function withChoreography(Component){return makeChoreography(Component,false);}// Alternate homepage: 01 and 02 are one section. Attach to the wrapper that holds\n// Pin Runway + Lower Stack. Steps are found in the parent, and the steps advance\n// from the moment the merged section pins (runway top at the viewport bottom).\nexport function withChoreographyConnected(Component){return makeChoreography(Component,true);}function makeChoreography(Component,connected){return props=>{const ref=useRef(null);useEffect(()=>{const root=ref.current;if(!root)return;const mq=window.matchMedia(\"(prefers-reduced-motion: reduce)\");let reduce=mq.matches;const scope=connected?root.parentElement??root:root;const pinRunway=byName(root,\"Pin Runway\");const section05=byName(root,\"05 Compliance and data\");const steps=allByName(scope,[\"Step 1\",\"Step 2\",\"Step 3\"]);const shots=allByName(scope,[\"Shot 1\",\"Shot 2\",\"Shot 3\"]);const rails=allByName(scope,[\"Rail Fill 1\",\"Rail Fill 2\",\"Rail Fill 3\"]);// Every layer named \"Bar <n>\", so bars can be added without code changes\nconst barEls=Array.from(root.querySelectorAll('[data-framer-name^=\"Bar \"]')).filter(el=>/^Bar \\d+$/.test(el.getAttribute(\"data-framer-name\")||\"\"));const bars={els:barEls,missing:barEls.length?[]:[\"Bar 1\"]};const missing=[!pinRunway&&\"Pin Runway\",!section05&&\"05 Compliance and data\",...steps.missing,...shots.missing,...rails.missing,...bars.missing].filter(Boolean);if(missing.length){console.warn(\"[Kleen Hub] choreography could not find:\",missing.join(\", \"),\"\\nLayer names must match exactly.\");}else{console.info(\"[Kleen Hub] choreography ready —\",`${steps.els.length} steps, ${shots.els.length} shots,`,`${rails.els.length} rails, ${bars.els.length} bars`);}const fade=reduce?\"opacity .15s linear\":`opacity .55s ${EASE}`;steps.els.forEach((el,i)=>{el.style.transition=fade;el.style.opacity=i===0?\"1\":\"0\";el.style.pointerEvents=i===0?\"auto\":\"none\";});shots.els.forEach((el,i)=>{el.style.transition=fade;el.style.opacity=i===0?\"1\":\"0\";if(reduce)el.style.transform=\"none\";});rails.els.forEach(el=>{el.style.transformOrigin=\"left center\";el.style.transform=reduce?\"scaleX(1)\":\"scaleX(0)\";});bars.els.forEach((el,i)=>{el.style.transformOrigin=\"bottom\";if(reduce){el.style.transition=\"none\";el.style.transform=\"none\";}else{el.style.transition=`transform .85s ${EASE} ${(.05+i*.08).toFixed(2)}s`;el.style.transform=\"scaleY(0)\";}});// Rail buttons scroll to their step (CLAUDE.md 9)\nconst cleanups=[];rails.els.forEach((fill,i)=>{const button=fill.parentElement;if(!button||!pinRunway)return;const onClick=()=>{if(pinRunway.offsetHeight<10){playAuto(i);return;}const top=root.getBoundingClientRect().top+window.scrollY-(connected?window.innerHeight:0);window.scrollTo({top:top+pinRunway.offsetHeight*(i/3+.17),behavior:reduce?\"auto\":\"smooth\"});};button.addEventListener(\"click\",onClick);cleanups.push(()=>button.removeEventListener(\"click\",onClick));});let current=-1;let barsRun=reduce;const setStep=i=>{if(i===current)return;current=i;steps.els.forEach((el,n)=>{el.style.opacity=n===i?\"1\":\"0\";el.style.pointerEvents=n===i?\"auto\":\"none\";});shots.els.forEach((el,n)=>{el.style.opacity=n===i?\"1\":\"0\";});};let auto=0;const STEP_MS=4e3;const stopAuto=()=>{if(auto)window.clearInterval(auto);auto=0;};const showAuto=k=>{setStep(k);rails.els.forEach((el,n)=>{el.style.transition=n===k?`transform ${STEP_MS}ms linear`:\"none\";el.style.transform=n<k?\"scaleX(1)\":\"scaleX(0)\";});const active=rails.els[k];if(active)requestAnimationFrame(()=>{active.style.transform=\"scaleX(1)\";});};const playAuto=start=>{stopAuto();let k=start;showAuto(k);auto=window.setInterval(()=>{k=(k+1)%Math.max(1,steps.els.length);showAuto(k);},STEP_MS);};const onScroll=()=>{// 6.2 — 02 holds while its three steps advance\nif(pinRunway&&pinRunway.offsetHeight<10){// Phone: no runway, so the steps advance on a timer instead of scroll\nif(!auto)playAuto(0);}else if(pinRunway){stopAuto();const rootTop=root.getBoundingClientRect().top;const p=clamp((connected?window.innerHeight-rootTop:-rootTop)/pinRunway.offsetHeight);setStep(p<.34?0:p<.67?1:2);if(!reduce){// the rail fills continuously, not a third at a time\nrails.els.forEach((el,n)=>{el.style.transform=`scaleX(${clamp(p*3-n).toFixed(3)})`;});// the frame is static; the image eases out of a slight zoom\nshots.els.forEach((el,n)=>{const sub=clamp(p*3-n);el.style.transform=`scale(${(1.09-.09*sub).toFixed(4)})`;});}}// 03, 04 and 05 now stack vertically (each is sticky and the next\n// covers it). The bars grow once 05 has scrolled most of the way up.\nif(section05&&!barsRun){const top=section05.getBoundingClientRect().top;if(top<window.innerHeight*.35){barsRun=true;bars.els.forEach(el=>{el.style.transform=\"scaleY(1)\";});}}};const onMotionChange=()=>{reduce=mq.matches;onScroll();};window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"resize\",onScroll);mq.addEventListener?.(\"change\",onMotionChange);onScroll();return()=>{window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"resize\",onScroll);mq.removeEventListener?.(\"change\",onMotionChange);cleanups.forEach(fn=>fn());stopAuto();};},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}/* ------------------------------------------------------------------ *//* Counting figures. Attach to the text layer holding the figure.      *//* Target, prefix and suffix are read from the text itself.            *//* ------------------------------------------------------------------ */export function withCounter(Component){return props=>{const ref=useRef(null);useEffect(()=>{const el=ref.current;if(!el)return;// Read the figure once and keep it on the element, so a later\n// re-render (hydration, navigating back) can't leave us with \"0\".\nif(!el.dataset.khCount){el.dataset.khCount=firstTextNode(el)?.nodeValue||\"\";}const match=/^(\\D*?)(\\d+(?:\\.\\d+)?)(.*)$/.exec(el.dataset.khCount);if(!match)return;const[,prefix,raw,suffix]=match;const target=parseFloat(raw);const fmt=v=>prefix+Math.round(v)+suffix;// Always write to the current text node, it can be swapped out\nconst write=v=>{const node=firstTextNode(el);if(node)node.nodeValue=fmt(v);};if(prefersReduced()){write(target);return;}// Count up every time the figure comes into view, and reset once\n// it has left the screen completely so it plays again next time.\nlet state=\"idle\";let frame=0;write(0);const play=()=>{const duration=1300;let start=null;const step=ts=>{if(start===null)start=ts;const p=Math.min(1,(ts-start)/duration);write(target*easeOut(p));if(p<1)frame=requestAnimationFrame(step);};cancelAnimationFrame(frame);frame=requestAnimationFrame(step);};const check=()=>{const r=el.getBoundingClientRect();const vh=window.innerHeight;const visible=r.top<vh*.85&&r.bottom>vh*.1;const gone=r.top>vh||r.bottom<0;if(state===\"idle\"&&visible){state=\"played\";play();}else if(state===\"played\"&&gone){state=\"idle\";cancelAnimationFrame(frame);write(0);}};window.addEventListener(\"scroll\",check,{passive:true});window.addEventListener(\"resize\",check);const t=setTimeout(check,50);return()=>{clearTimeout(t);cancelAnimationFrame(frame);window.removeEventListener(\"scroll\",check);window.removeEventListener(\"resize\",check);write(target);};},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}/* ------------------------------------------------------------------ *//* Masked line reveal. Attach to the clipping wrapper, not the text.   *//* The wrapper keeps normal geometry, so it can observe itself; the    *//* text inside is what gets displaced.                                 *//* ------------------------------------------------------------------ */export function withMaskedLine(Component){return props=>{const ref=useRef(null);useEffect(()=>{const wrapper=ref.current;if(!wrapper)return;// Pick the first child that actually carries the text. Framer\n// renders background and fill elements before the content, so\n// firstElementChild is often an empty div, and transforming it\n// does nothing at all.\nconst children=Array.from(wrapper.children);const inner=children.find(el=>(el.textContent||\"\").trim().length>0)??null;if(!inner){console.warn(\"[Kleen Hub] withMaskedLine found no text child inside\",wrapper.getAttribute(\"data-framer-name\")||wrapper,\"children:\",children.length);return;}if(prefersReduced()){inner.style.transform=\"none\";return;}const siblings=wrapper.parentElement?Array.from(wrapper.parentElement.children):[wrapper];const index=Math.max(0,siblings.indexOf(wrapper));inner.style.transform=\"translateY(106%)\";inner.style.transition=`transform .66s ${EASE} ${(index*.07).toFixed(2)}s`;return once(wrapper,()=>{inner.style.transform=\"translateY(0)\";});},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}/* ------------------------------------------------------------------ *//* Rule wipe. Attach to the block that owns the rule; the rule is its  *//* first child. A 1px rule at scaleX(0) cannot observe itself.         *//* ------------------------------------------------------------------ */export function withRule(Component){return props=>{const ref=useRef(null);useEffect(()=>{const owner=ref.current;if(!owner)return;// Select by name. Framer wraps layer children, so the first\n// element child is a wrapper holding the whole block, and\n// scaling that would collapse the entire point.\nconst rule=owner.querySelector('[data-framer-name*=\"Rule\"]');if(!rule){console.warn(\"[Kleen Hub] withRule found no layer named *Rule* inside\",owner.getAttribute(\"data-framer-name\")||owner);return;}rule.style.transformOrigin=\"left center\";if(prefersReduced()){rule.style.transform=\"scaleX(1)\";return;}rule.style.transform=\"scaleX(0)\";rule.style.transition=`transform .7s ${EASE}`;return once(owner,()=>{rule.style.transform=\"scaleX(1)\";});},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}/* ------------------------------------------------------------------ *//* Point block: rises into place and draws its rule. Attach to the     *//* block itself. Do NOT also give it a Framer appear effect: an        *//* override forwards its own ref, which the appear effect needs, and   *//* the block is then left stuck at its start state.                    *//* ------------------------------------------------------------------ */export function withPoint(Component){return props=>{const ref=useRef(null);useEffect(()=>{const owner=ref.current;if(!owner)return;const rule=owner.querySelector('[data-framer-name*=\"Rule\"]');if(rule)rule.style.transformOrigin=\"left center\";// Stagger by position, ignoring the 1px column dividers.\nconst parent=owner.parentElement;const siblings=parent?Array.from(parent.children).filter(el=>!/Divider/.test(el.getAttribute(\"data-framer-name\")||\"\")):[owner];const index=Math.max(0,siblings.indexOf(owner));const delay=(index*.08).toFixed(2);if(prefersReduced()){owner.style.opacity=\"1\";owner.style.transform=\"none\";if(rule)rule.style.transform=\"scaleX(1)\";return;}owner.style.opacity=\"0\";owner.style.transform=\"translateY(22px)\";owner.style.transition=`opacity .62s ${EASE} ${delay}s, `+`transform .62s ${EASE} ${delay}s`;if(rule){rule.style.transform=\"scaleX(0)\";rule.style.transition=`transform .7s ${EASE} ${delay}s`;}return once(owner,()=>{owner.style.opacity=\"1\";owner.style.transform=\"translateY(0)\";if(rule)rule.style.transform=\"scaleX(1)\";});},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}/* ------------------------------------------------------------------ *//* Nav hairline, which appears once the page has moved. Attach to Nav. *//* ------------------------------------------------------------------ */export function withNav(Component){return props=>{const ref=useRef(null);useEffect(()=>{const el=ref.current;if(!el)return;el.classList.add(\"kh-nav\");el.style.borderBottom=\"1px solid transparent\";el.style.transition=`border-color .3s ${EASE}`;const onScroll=()=>{const scrolled=(window.scrollY||0)>24;// Hidden while the Solutions dropdown is open, so the menu reads as part of the bar\nconst menuOpen=document.documentElement.classList.contains(\"kh-menu-open\");el.style.borderBottomColor=scrolled&&!menuOpen?\"rgba(39,39,40,.12)\":\"transparent\";};window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"kh-menu-change\",onScroll);onScroll();return()=>{window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"kh-menu-change\",onScroll);};},[]);return /*#__PURE__*/_jsx(Component,{...props,ref:ref});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withMaskedLine\":{\"type\":\"reactHoc\",\"name\":\"withMaskedLine\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withMaskedLineLate\":{\"type\":\"reactHoc\",\"name\":\"withMaskedLineLate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withNav\":{\"type\":\"reactHoc\",\"name\":\"withNav\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withChoreography\":{\"type\":\"reactHoc\",\"name\":\"withChoreography\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withCounter\":{\"type\":\"reactHoc\",\"name\":\"withCounter\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withPoint\":{\"type\":\"reactHoc\",\"name\":\"withPoint\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRule\":{\"type\":\"reactHoc\",\"name\":\"withRule\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withChoreographyConnected\":{\"type\":\"reactHoc\",\"name\":\"withChoreographyConnected\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Choreography.map","// Generated by Framer (7788242)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-medium\",\"FS;Switzer-bold\",\"FS;Switzer-bold italic\",\"FS;Switzer-medium italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/OYB4CXKJQXKTNSLJMTDQOIVUL2V5EL7S/WYO2P7DQVV5RNXGMCUO2HL4RJP4VFUAS/6XPIMU23OJVRY676OG5YVJMWEHWICATX.woff2\",weight:\"500\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/HBNTRIISA5MEXGL5WPYI7CV2HIWTDV3Q/YDPDINVT673XLXNSTMLG4JNCZZMVVNPN/Y7SCNZJOT2MW5ADSGOFLDGH4TNL4JCQY.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LVPXCMXCWY3V7PSXRMGRQUJDAS2DT47E/BPEVRT2HG7PPVVUS7A67MZQQZW6LR6A5/A7AS3UPAGLC7MDVC67SBNTE5FGF2Z2RG.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/QMRBNVYKDJEZ66DA22SPWH5EVVYACHCU/ZHMXHHA546NDNEHJN5RPZX5KISJY5CWF/C6VLICDGQWYKV6YT65TM5G3OVN4AOZBN.woff2\",weight:\"500\"}]}];export const css=['.framer-OZmbh .framer-styles-preset-1xersvf:not(.rich-text-wrapper), .framer-OZmbh .framer-styles-preset-1xersvf.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 500; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #666666; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-OZmbh\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9801af1)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-regular\",\"FS;Switzer-bold\",\"FS;Switzer-bold italic\",\"FS;Switzer-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/BLNB4FAQFNK56DWWNF7PMGTCOTZHOEII/ST3WKSSDMBK2MIQQO3MAVYWLF4FTOLFV/6IN5WOLRCYP4G4MOCOHOMXNON6Q7MDAR.woff2\",weight:\"400\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/HBNTRIISA5MEXGL5WPYI7CV2HIWTDV3Q/YDPDINVT673XLXNSTMLG4JNCZZMVVNPN/Y7SCNZJOT2MW5ADSGOFLDGH4TNL4JCQY.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/LVPXCMXCWY3V7PSXRMGRQUJDAS2DT47E/BPEVRT2HG7PPVVUS7A67MZQQZW6LR6A5/A7AS3UPAGLC7MDVC67SBNTE5FGF2Z2RG.woff2\",weight:\"700\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/XVUY2PHYBA6KMN4RMEMJPHQSTKCQ267G/UICOQA6KCSHFOSCPYDVVDNNCDKYFXHJB/O34WRFYO7JNWEBBA2LRV2XYRUSYXYDKH.woff2\",weight:\"400\"}]}];export const css=['.framer-FdTCs .framer-styles-preset-ivio7n:not(.rich-text-wrapper), .framer-FdTCs .framer-styles-preset-ivio7n.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: -0.02em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #666666; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-FdTCs\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9801af1)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-jJhTG .framer-styles-preset-1kjr2w3:not(.rich-text-wrapper), .framer-jJhTG .framer-styles-preset-1kjr2w3.rich-text-wrapper a { --framer-link-hover-text-color: var(--token-617c4859-bcde-486f-b526-74ff55b76f7b); --framer-link-text-color: var(--token-909b4f7b-ad17-4f9b-ab5d-fa6901bd73a3); transition-delay: 0s; transition-duration: 0.35s; transition-property: color; transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1); }\"];export const className=\"framer-jJhTG\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (9801af1)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"FS;Switzer-semibold\",\"FS;Switzer-black\",\"FS;Switzer-black italic\",\"FS;Switzer-semibold italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/5SZVFDB7V52TI6ULVC6J3WQZQCIZVDV5/ODYPSTCUDMKSTYIPTV4CLQ7URIK7XYBJ/YS3VPNVO4B3TOJMEXDGFZQ4TLZGGSRZC.woff2\",weight:\"600\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"normal\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/A54N3N7J5AY6YOPYJKLHF5VH7G7HSSUN/ERWIWIB434FMFHQFSSBD233EP3C62HOI/TOHQHMLIEIPKVF2JPM6SVKXFYGO5G2TJ.woff2\",weight:\"900\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/FQHNKZEV35SAMFWVFCFSORJXUNHNILL4/X4YCR4COAQTK5XB6JCDDBS7Q33AQWUAE/J7XVDQ2IJENINPUAVBDJNH3VEXVDSPQQ.woff2\",weight:\"900\"},{cssFamilyName:\"Switzer\",openType:true,source:\"fontshare\",style:\"italic\",uiFamilyName:\"Switzer\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/2UC2M25RQ2XRSGCBJRQ2G5SNXCROECQB/QJT3T33NN372363FJY5EO5D63GKDKLDK/IOAFMDAPNX3S6OL2GYQQJ2FFJIRSVB3N.woff2\",weight:\"600\"}]}];export const css=['.framer-WiDA3 .framer-styles-preset-rn4r1:not(.rich-text-wrapper), .framer-WiDA3 .framer-styles-preset-rn4r1.rich-text-wrapper p { --framer-font-family: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-family-italic: \"Switzer\", \"Switzer Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 15px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 600; --framer-font-weight-bold: 900; --framer-font-weight-bold-italic: 900; --framer-font-weight-italic: 600; --framer-letter-spacing: -0.02em; --framer-line-height: 1em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #666666; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-WiDA3\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (7788242)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.img,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"img\",{...rest,ref:ref});});const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,alt:\"\",className:cx(\"framer-3dXL7\",className),layoutId:layoutId,ref:ref,src:'data:image/svg+xml,<svg display=\"block\" id=\"1999874870\" role=\"presentation\" viewBox=\"0 0 72 15\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 1.65 5.98 L 1.65 10.28 L 0 10.28 L 0 0 L 1.65 0 L 1.65 4.39 L 4.77 4.39 L 7.77 0 L 9.74 0 L 6.15 5.08 L 9.72 10.28 L 7.76 10.28 L 4.8 5.98 M 12.04 0 L 12.04 10.28 L 10.38 10.28 L 10.38 0 M 17.18 10.43 C 15.913 10.43 14.907 10.087 14.16 9.4 C 13.413 8.707 13.04 7.73 13.04 6.47 C 13.04 5.277 13.413 4.317 14.16 3.59 C 14.913 2.863 15.91 2.5 17.15 2.5 C 18.357 2.5 19.32 2.82 20.04 3.46 C 20.76 4.1 21.12 4.987 21.12 6.12 C 21.12 6.4 21.1 6.64 21.06 6.84 L 14.59 6.84 C 14.617 7.6 14.833 8.167 15.24 8.54 C 15.64 8.913 16.27 9.1 17.13 9.1 C 18.637 9.1 19.39 8.623 19.39 7.67 L 19.39 7.55 L 21.04 7.55 L 21.04 7.69 C 21.04 8.497 20.68 9.157 19.96 9.67 C 19.24 10.177 18.313 10.43 17.18 10.43 M 17.12 3.81 C 15.533 3.81 14.693 4.513 14.6 5.92 L 19.56 5.92 L 19.56 5.89 C 19.56 4.503 18.747 3.81 17.12 3.81 M 25.97 10.43 C 24.703 10.43 23.697 10.087 22.95 9.4 C 22.203 8.707 21.83 7.73 21.83 6.47 C 21.83 5.277 22.203 4.317 22.95 3.59 C 23.703 2.863 24.7 2.5 25.94 2.5 C 27.147 2.5 28.11 2.82 28.83 3.46 C 29.55 4.1 29.91 4.987 29.91 6.12 C 29.91 6.4 29.89 6.64 29.85 6.84 L 23.38 6.84 C 23.407 7.6 23.623 8.167 24.03 8.54 C 24.43 8.913 25.06 9.1 25.92 9.1 C 27.427 9.1 28.18 8.623 28.18 7.67 L 28.18 7.55 L 29.83 7.55 L 29.83 7.69 C 29.83 8.497 29.47 9.157 28.75 9.67 C 28.03 10.177 27.103 10.43 25.97 10.43 M 25.91 3.81 C 24.323 3.81 23.483 4.513 23.39 5.92 L 28.35 5.92 L 28.35 5.89 C 28.35 4.503 27.537 3.81 25.91 3.81 M 32.58 6.51 L 32.58 10.28 L 30.92 10.28 L 30.92 2.65 L 32.44 2.65 L 32.44 5.02 L 32.55 5.02 C 32.67 4.313 33.003 3.717 33.55 3.23 C 34.09 2.743 34.813 2.5 35.72 2.5 C 36.733 2.5 37.513 2.8 38.06 3.4 C 38.607 4 38.88 4.763 38.88 5.69 L 38.88 10.28 L 37.23 10.28 L 37.23 6.14 C 37.23 5.413 37.053 4.873 36.7 4.52 C 36.347 4.167 35.78 3.99 35 3.99 C 33.387 3.99 32.58 4.83 32.58 6.51 M 44.18 5.85 L 44.18 10.28 L 42.52 10.28 L 42.52 0 L 44.18 0 L 44.18 4.36 L 50.22 4.36 L 50.22 0 L 51.86 0 L 51.86 10.28 L 50.22 10.28 L 50.22 5.85 M 56.36 10.43 C 55.327 10.43 54.537 10.13 53.99 9.53 C 53.443 8.937 53.17 8.173 53.17 7.24 L 53.17 2.65 L 54.81 2.65 L 54.81 6.8 C 54.81 7.527 54.99 8.063 55.35 8.41 C 55.717 8.763 56.293 8.94 57.08 8.94 C 58.727 8.94 59.55 8.103 59.55 6.43 L 59.55 2.65 L 61.19 2.65 L 61.19 10.28 L 59.67 10.28 L 59.67 7.92 L 59.58 7.92 C 59.447 8.633 59.107 9.23 58.56 9.71 C 58.013 10.19 57.28 10.43 56.36 10.43 M 63.98 8.09 L 63.98 10.28 L 62.46 10.28 L 62.46 0 L 64.12 0 L 64.12 4.73 L 64.21 4.73 C 64.377 4.05 64.723 3.51 65.25 3.11 C 65.777 2.703 66.477 2.5 67.35 2.5 C 68.51 2.5 69.407 2.86 70.04 3.58 C 70.673 4.293 70.99 5.257 70.99 6.47 C 70.99 7.67 70.667 8.63 70.02 9.35 C 69.367 10.07 68.447 10.43 67.26 10.43 C 66.393 10.43 65.69 10.23 65.15 9.83 C 64.603 9.423 64.25 8.843 64.09 8.09 L 63.98 8.09 M 64.12 6.43 L 64.12 6.55 C 64.12 7.337 64.347 7.927 64.8 8.32 C 65.253 8.713 65.9 8.91 66.74 8.91 C 67.613 8.91 68.263 8.723 68.69 8.35 C 69.117 7.977 69.33 7.35 69.33 6.47 C 69.33 5.583 69.117 4.95 68.69 4.57 C 68.263 4.19 67.623 4 66.77 4 C 65.003 4 64.12 4.81 64.12 6.43\" fill=\"rgb(39, 39, 40)\" height=\"10.430000095367433px\" id=\"JMOGhKqDJ\" transform=\"translate(0.77 2.3)\" width=\"70.98999908447266px\"/></svg>',style:{...style}});});const css=[`.framer-3dXL7 { -webkit-mask: ${mask}; aspect-ratio: 4.8; display: block; mask: ${mask}; user-select: none; width: 72px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 72\n * @framerIntrinsicHeight 15\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Wordmark Footer\",\"color\":{\"type\":\"static\",\"value\":\"rgb(39,39,40)\"},\"set\":{\"localId\":\"vectorSet/x_dB8JpFn\",\"id\":\"x_dB8JpFn\",\"moduleId\":\"pruPlkhMBywQdTqh4JB6\"}}\n */const Icon=withCSS(Component,css,\"framer-3dXL7\");Icon.displayName=\"Wordmark Footer\";export default Icon;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerVector\":\"{\\\"name\\\":\\\"Wordmark Footer\\\",\\\"color\\\":{\\\"type\\\":\\\"static\\\",\\\"value\\\":\\\"rgb(39,39,40)\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/x_dB8JpFn\\\",\\\"id\\\":\\\"x_dB8JpFn\\\",\\\"moduleId\\\":\\\"pruPlkhMBywQdTqh4JB6\\\"}}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"15\",\"framerIntrinsicWidth\":\"72\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}