{"version":3,"file":"shared-lib.BA2O0EtL.mjs","names":["addPropertyOverrides","serializationHash","variantClassNames","transition1","Transition","Variants","getProps","createLayoutDependency","Component","css","Button"],"sources":["https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/lB1fVuA0TNTFhDvElZph/iEAx27JzO0sKkuUc9rNA/IjZ4B8Uor.js","https:/framerusercontent.com/modules/1ca7dTXjNCZUA78lpKPM/3IoMbEhq0ZUQehVewonf/K9fojyFL8.js","https:/framerusercontent.com/modules/qjuiBHSL24lDINMe1tBK/hFDTaR4oGmkMktfw1Pd0/siteMetadata.js"],"sourcesContent":["import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","// Generated by Framer (5351ffe)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,Link,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const enabledGestures={E72RHle9f:{hover:true,pressed:true}};const serializationHash=\"framer-KAAjM\";const variantClassNames={E72RHle9f:\"framer-v-kof6zn\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({buttonLink,click,height,id,seeCaseStudy,width,...props})=>{return{...props,f2REtqT24:buttonLink??props.f2REtqT24,ieuxi4GDj:seeCaseStudy??props.ieuxi4GDj??\"See case study\",yBxTRZeA_:click??props.yBxTRZeA_};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,f2REtqT24,ieuxi4GDj,yBxTRZeA_,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"E72RHle9f\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTapofjxox=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(yBxTRZeA_){const res=await yBxTRZeA_(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:f2REtqT24,motionChild:true,nodeId:\"E72RHle9f\",scopeId:\"IjZ4B8Uor\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-kof6zn\",className,classNames)} framer-1i9kcdo`,\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"E72RHle9f\",onTap:onTapofjxox,ref:refBinding,style:{backgroundColor:\"rgb(248, 248, 248)\",borderBottomLeftRadius:13,borderBottomRightRadius:13,borderTopLeftRadius:13,borderTopRightRadius:13,boxShadow:\"inset 0px -3px 2px 0px rgba(28, 2, 79, 0.25), inset 0px 2px 4px 0px rgb(255, 255, 255)\",...style},variants:{\"E72RHle9f-hover\":{backgroundColor:\"rgb(208, 202, 217)\"},\"E72RHle9f-pressed\":{backgroundColor:\"rgb(147, 141, 158)\",boxShadow:\"inset 0px 5px 2px 0px rgba(28, 2, 79, 0.52), inset 0px -3px 4px 0px rgba(255, 255, 255, 0.65)\"}},...addPropertyOverrides({\"E72RHle9f-hover\":{\"data-framer-name\":undefined},\"E72RHle9f-pressed\":{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"RlM7UGx1cyBKYWthcnRhIFNhbnMtYm9sZA==\",\"--framer-font-family\":'\"Plus Jakarta Sans\", \"Plus Jakarta Sans Placeholder\", sans-serif',\"--framer-font-weight\":\"700\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c8be0792-52ba-4a0a-8b11-56fc21b255dc, rgb(0, 17, 39)))\"},children:\"See case study\"})}),className:\"framer-omedok\",fonts:[\"FS;Plus Jakarta Sans-bold\"],layoutDependency:layoutDependency,layoutId:\"gDDlEP82z\",style:{\"--extracted-r6o4lv\":\"var(--token-c8be0792-52ba-4a0a-8b11-56fc21b255dc, rgb(0, 17, 39))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:ieuxi4GDj,verticalAlignment:\"top\",withExternalLayout:true})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-KAAjM.framer-1i9kcdo, .framer-KAAjM .framer-1i9kcdo { display: block; }\",\".framer-KAAjM.framer-kof6zn { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 50px; justify-content: center; overflow: hidden; padding: 0px; position: relative; text-decoration: none; width: 200px; will-change: var(--framer-will-change-override, transform); }\",\".framer-KAAjM .framer-omedok { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 50\n * @framerIntrinsicWidth 200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"wj8FZSR6w\":{\"layout\":[\"fixed\",\"fixed\"]},\"F2CsNIekh\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"f2REtqT24\":\"buttonLink\",\"ieuxi4GDj\":\"seeCaseStudy\",\"yBxTRZeA_\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerIjZ4B8Uor=withCSS(Component,css,\"framer-KAAjM\");export default FramerIjZ4B8Uor;FramerIjZ4B8Uor.displayName=\"Button\";FramerIjZ4B8Uor.defaultProps={height:50,width:200};addPropertyControls(FramerIjZ4B8Uor,{f2REtqT24:{title:\"Button link\",type:ControlType.Link},ieuxi4GDj:{defaultValue:\"See case study\",displayTextArea:false,title:\"See case study\",type:ControlType.String},yBxTRZeA_:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramerIjZ4B8Uor,[{explicitInter:true,fonts:[{family:\"Plus Jakarta Sans\",source:\"fontshare\",style:\"normal\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/AJVGEOXGB2ALQKAZEK2LDOLCVBCMCOIT/LDEP4R7SNNABDEG433DCQGM2A7YCBHLU/OWABOLGBAKFVLPZ756IYS6EKYKU54K3I.woff2\",weight:\"700\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerIjZ4B8Uor\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"200\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerVariables\":\"{\\\"f2REtqT24\\\":\\\"buttonLink\\\",\\\"ieuxi4GDj\\\":\\\"seeCaseStudy\\\",\\\"yBxTRZeA_\\\":\\\"click\\\"}\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"wj8FZSR6w\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"F2CsNIekh\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"50\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./IjZ4B8Uor.map","// Generated by Framer (5da54f8)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,ResolveLinks,SmartComponentScopedContainer,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Button from\"https://framerusercontent.com/modules/lB1fVuA0TNTFhDvElZph/iEAx27JzO0sKkuUc9rNA/IjZ4B8Uor.js\";const ButtonFonts=getFonts(Button);const cycleOrder=[\"Q2FS730b8\",\"Z3G1aXHLv\",\"oDoYJlWkr\"];const serializationHash=\"framer-KOshN\";const variantClassNames={oDoYJlWkr:\"framer-v-1uw3xcm\",Q2FS730b8:\"framer-v-fxxb1p\",Z3G1aXHLv:\"framer-v-1mkao56\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:40,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Phone Open\":\"oDoYJlWkr\",Desktop:\"Q2FS730b8\",Phone:\"Z3G1aXHLv\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"Q2FS730b8\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Q2FS730b8\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap9bvrhw=activeVariantCallback(async(...args)=>{setVariant(\"oDoYJlWkr\");});const onTapr0i0ey=activeVariantCallback(async(...args)=>{setVariant(\"Z3G1aXHLv\");});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"Z3G1aXHLv\",\"oDoYJlWkr\"].includes(baseVariant))return true;return false;};const router=useRouter();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.nav,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-fxxb1p\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"Q2FS730b8\",ref:refBinding,style:{backgroundColor:\"var(--token-6196dcfe-5001-4450-99db-fb34ba944fe7, rgba(248, 248, 248, 0.97))\",...style},...addPropertyOverrides({oDoYJlWkr:{\"data-framer-name\":\"Phone Open\"},Z3G1aXHLv:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"YdhoX2gQU\",scopeId:\"K9fojyFL8\",children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-18q42n3 framer-1kqjo9n\",\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"YdhoX2gQU\",...addPropertyOverrides({oDoYJlWkr:{\"data-highlight\":true,onTap:onTapr0i0ey},Z3G1aXHLv:{\"data-highlight\":true,onTap:onTap9bvrhw}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(SVG,{className:\"framer-1aite9a\",layoutDependency:layoutDependency,layoutId:\"VfYfGaccO\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 77.693 54.243\" overflow=\"visible\"><path d=\"M 0.413 0 L 35.582 30.97 L 35.582 1.985 L 45.63 1.985 L 45.261 15.701 C 45.503 13.66 46.104 11.836 47.066 10.23 C 48.397 8.085 50.255 6.396 52.641 5.164 C 55.027 3.886 57.78 3.179 60.9 3.042 C 64.983 3.042 68.287 3.521 70.81 4.48 C 73.38 5.438 75.674 6.579 77.693 7.902 L 73.907 15.5 C 71.98 14.451 70.007 13.584 67.988 12.899 C 66.016 12.215 64.157 11.872 62.415 11.872 C 60.259 11.872 58.561 12.306 57.322 13.173 C 56.084 14.04 55.464 15.341 55.464 17.075 C 55.464 18.261 55.923 19.334 56.841 20.292 C 57.803 21.205 59.018 22.026 60.487 22.756 C 62.001 23.486 63.561 24.148 65.167 24.741 C 67.14 25.471 69.045 26.407 70.881 27.548 C 72.716 28.643 74.23 30.172 75.423 32.134 C 76.616 34.05 77.212 36.606 77.212 39.8 C 77.212 42.356 76.547 44.729 75.216 46.919 C 73.886 49.11 71.936 50.889 69.366 52.258 C 66.797 53.582 63.631 54.243 59.869 54.243 C 56.978 54.243 54.017 53.81 50.989 52.943 C 48.007 52.076 45.185 50.701 42.524 48.831 L 41.294 47.915 L 9.941 21.296 L 10.117 52.365 L 0 52.365 L 0 0 Z M 45.118 38.789 C 47.412 41.831 50.471 43.352 52.918 44.25 C 55.166 45.071 57.185 45.482 58.974 45.482 C 60.167 45.482 61.36 45.322 62.553 45.003 C 63.792 44.637 64.8 44.044 65.58 43.223 C 66.406 42.401 66.818 41.261 66.818 39.8 C 66.818 38.796 66.476 37.884 65.788 37.062 C 65.145 36.241 64.249 35.488 63.102 34.803 C 61.948 34.093 60.726 33.497 59.454 33.024 C 57.894 32.43 56.288 31.746 54.637 30.97 C 52.985 30.194 51.425 29.259 49.957 28.164 C 48.525 27.012 47.333 25.594 46.447 23.988 C 45.716 22.57 45.29 20.896 45.173 18.964 Z\" fill=\"rgb(28,2,79)\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({Z3G1aXHLv:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 69.171 48.216\" overflow=\"visible\"><path d=\"M 0.368 0 L 31.679 27.529 L 31.679 1.765 L 40.625 1.765 L 40.297 13.957 C 40.512 12.142 41.048 10.521 41.904 9.093 C 43.089 7.186 44.743 5.686 46.867 4.59 C 48.992 3.455 51.443 2.826 54.22 2.704 C 57.856 2.704 60.797 3.13 63.044 3.982 C 65.332 4.834 67.374 5.848 69.171 7.024 L 65.801 13.778 C 64.086 12.845 62.329 12.074 60.532 11.466 C 58.775 10.857 57.121 10.553 55.57 10.553 C 53.65 10.553 52.138 10.939 51.035 11.709 C 49.932 12.48 49.381 13.636 49.381 15.177 C 49.381 16.232 49.789 17.185 50.606 18.037 C 51.463 18.848 52.545 19.579 53.853 20.228 C 55.201 20.877 56.59 21.465 58.019 21.992 C 59.776 22.641 61.473 23.473 63.107 24.487 C 64.741 25.46 66.089 26.819 67.151 28.563 C 68.213 30.267 68.744 32.539 68.744 35.378 C 68.744 37.65 68.152 39.759 66.967 41.706 C 65.782 43.653 64.046 45.235 61.759 46.452 C 59.471 47.628 56.652 48.216 53.303 48.216 C 50.729 48.216 48.093 47.831 45.397 47.06 C 42.741 46.29 40.229 45.067 37.86 43.406 L 36.765 42.592 L 8.851 18.93 L 9.007 46.546 L 0 46.546 L 0 0 Z M 40.169 34.479 C 42.212 37.183 44.935 38.535 47.114 39.333 C 49.115 40.063 50.913 40.428 52.506 40.428 C 53.568 40.428 54.63 40.286 55.692 40.002 C 56.795 39.678 57.693 39.15 58.387 38.42 C 59.122 37.69 59.49 36.676 59.49 35.378 C 59.49 34.486 59.185 33.674 58.572 32.944 C 58 32.214 57.202 31.545 56.181 30.936 C 55.153 30.305 54.066 29.775 52.934 29.354 C 51.545 28.827 50.115 28.219 48.644 27.529 C 47.174 26.839 45.785 26.008 44.478 25.034 C 43.203 24.01 42.142 22.75 41.353 21.323 C 40.702 20.063 40.323 18.574 40.218 16.857 Z\" fill=\"rgb(28,2,79)\"></path></svg>'}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-147a7si\",layoutDependency:layoutDependency,layoutId:\"ifOvZu2a9\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 77.693 54.243\" overflow=\"visible\"><path d=\"M 0.413 0 L 35.582 30.97 L 35.582 1.985 L 45.63 1.985 L 45.261 15.701 C 45.503 13.66 46.104 11.836 47.066 10.23 C 48.397 8.085 50.255 6.396 52.641 5.164 C 55.027 3.886 57.78 3.179 60.9 3.042 C 64.983 3.042 68.287 3.521 70.81 4.48 C 73.38 5.438 75.674 6.579 77.693 7.902 L 73.907 15.5 C 71.98 14.451 70.007 13.584 67.988 12.899 C 66.016 12.215 64.157 11.872 62.415 11.872 C 60.259 11.872 58.561 12.306 57.322 13.173 C 56.084 14.04 55.464 15.341 55.464 17.075 C 55.464 18.261 55.923 19.334 56.841 20.292 C 57.803 21.205 59.018 22.026 60.487 22.756 C 62.001 23.486 63.561 24.148 65.167 24.741 C 67.14 25.471 69.045 26.407 70.881 27.548 C 72.716 28.643 74.23 30.172 75.423 32.134 C 76.616 34.05 77.212 36.606 77.212 39.8 C 77.212 42.356 76.547 44.729 75.216 46.919 C 73.886 49.11 71.936 50.889 69.366 52.258 C 66.797 53.582 63.631 54.243 59.869 54.243 C 56.978 54.243 54.017 53.81 50.989 52.943 C 48.007 52.076 45.185 50.701 42.524 48.831 L 41.294 47.915 L 9.941 21.296 L 10.117 52.365 L 0 52.365 L 0 0 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({Z3G1aXHLv:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 69.171 48.216\" overflow=\"visible\"><path d=\"M 0.368 0 L 31.679 27.529 L 31.679 1.765 L 40.625 1.765 L 40.297 13.957 C 40.512 12.142 41.048 10.521 41.904 9.093 C 43.089 7.186 44.743 5.686 46.867 4.59 C 48.992 3.455 51.443 2.826 54.22 2.704 C 57.856 2.704 60.797 3.13 63.044 3.982 C 65.332 4.834 67.374 5.848 69.171 7.024 L 65.801 13.778 C 64.086 12.845 62.329 12.074 60.532 11.466 C 58.775 10.857 57.121 10.553 55.57 10.553 C 53.65 10.553 52.138 10.939 51.035 11.709 C 49.932 12.48 49.381 13.636 49.381 15.177 C 49.381 16.232 49.789 17.185 50.606 18.037 C 51.463 18.848 52.545 19.579 53.853 20.228 C 55.201 20.877 56.59 21.465 58.019 21.992 C 59.776 22.641 61.473 23.473 63.107 24.487 C 64.741 25.46 66.089 26.819 67.151 28.563 C 68.213 30.267 68.744 32.539 68.744 35.378 C 68.744 37.65 68.152 39.759 66.967 41.706 C 65.782 43.653 64.046 45.235 61.759 46.452 C 59.471 47.628 56.652 48.216 53.303 48.216 C 50.729 48.216 48.093 47.831 45.397 47.06 C 42.741 46.29 40.229 45.067 37.86 43.406 L 36.765 42.592 L 8.851 18.93 L 9.007 46.546 L 0 46.546 L 0 0 Z\" fill=\"transparent\"></path></svg>'}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1ut0q3r\",layoutDependency:layoutDependency,layoutId:\"BpqhykoCA\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 21.701 26.518\" overflow=\"visible\"><path d=\"M 0 19.825 C 2.294 22.867 5.353 24.388 7.8 25.286 C 10.048 26.107 12.067 26.518 13.856 26.518 C 15.049 26.518 16.242 26.358 17.435 26.039 C 18.674 25.674 19.682 25.08 20.462 24.259 C 21.288 23.438 21.701 22.297 21.701 20.836 C 21.701 19.832 21.358 18.92 20.67 18.098 C 20.028 17.277 19.131 16.524 17.984 15.839 C 16.83 15.129 15.608 14.533 14.337 14.06 C 12.777 13.467 11.171 12.782 9.519 12.006 C 7.867 11.23 6.307 10.295 4.839 9.2 C 3.408 8.048 2.215 6.63 1.329 5.024 C 0.598 3.607 0.173 1.932 0.055 0 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true,...addPropertyOverrides({Z3G1aXHLv:{svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 19.321 23.571\" overflow=\"visible\"><path d=\"M 0 17.622 C 2.043 20.326 4.766 21.678 6.945 22.476 C 8.946 23.206 10.744 23.571 12.337 23.571 C 13.399 23.571 14.461 23.429 15.523 23.145 C 16.626 22.821 17.523 22.294 18.218 21.563 C 18.953 20.833 19.321 19.819 19.321 18.521 C 19.321 17.629 19.016 16.818 18.403 16.087 C 17.831 15.357 17.033 14.688 16.012 14.08 C 14.984 13.448 13.896 12.918 12.764 12.498 C 11.375 11.97 9.946 11.362 8.475 10.672 C 7.004 9.983 5.616 9.151 4.308 8.178 C 3.034 7.154 1.972 5.893 1.183 4.466 C 0.532 3.206 0.154 1.717 0.049 0 Z\" fill=\"transparent\"></path></svg>'}},baseVariant,gestureVariant)})]}),isDisplayed()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1e3pqpp\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"VRkj0Cc0H\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-t519vd\",\"data-framer-name\":\"Bottom\",layoutDependency:layoutDependency,layoutId:\"THNl4fia2\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,rotate:0},variants:{oDoYJlWkr:{backgroundColor:\"rgb(28, 2, 79)\",rotate:-45},Z3G1aXHLv:{backgroundColor:\"rgb(28, 2, 79)\"}}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1l91aqr\",\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"kWZf6uLgk\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,rotate:0},variants:{oDoYJlWkr:{backgroundColor:\"rgb(28, 2, 79)\",rotate:45},Z3G1aXHLv:{backgroundColor:\"rgb(28, 2, 79)\"}}})]})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-114iekd\",\"data-framer-name\":\"Links\",layoutDependency:layoutDependency,layoutId:\"K1PrKWeXP\",style:{opacity:1},variants:{oDoYJlWkr:{opacity:1},Z3G1aXHLv:{opacity:0}},children:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined},{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined},{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:50,width:\"136px\",y:(componentViewport?.y||0)+(0+((componentViewport?.height||64)-0-50)/2)+0,...addPropertyOverrides({oDoYJlWkr:{width:`calc(${componentViewport?.width||\"100vw\"} - 40px)`,y:(componentViewport?.y||0)+0+64+20+0},Z3G1aXHLv:{y:(componentViewport?.y||0)+0+64+20+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-dh3xv9-container\",layoutDependency:layoutDependency,layoutId:\"iP0RGebJD-container\",nodeId:\"iP0RGebJD\",rendersWithMotion:true,scopeId:\"K9fojyFL8\",children:/*#__PURE__*/_jsx(Button,{f2REtqT24:resolvedLinks[0],height:\"100%\",id:\"iP0RGebJD\",ieuxi4GDj:\"Home\",layoutId:\"iP0RGebJD\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({oDoYJlWkr:{f2REtqT24:resolvedLinks[2]},Z3G1aXHLv:{f2REtqT24:resolvedLinks[1]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"s52fmLTK_\"},implicitPathVariables:undefined},{href:{webPageId:\"s52fmLTK_\"},implicitPathVariables:undefined},{href:{webPageId:\"s52fmLTK_\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:50,width:\"136px\",y:(componentViewport?.y||0)+(0+((componentViewport?.height||64)-0-50)/2)+0,...addPropertyOverrides({oDoYJlWkr:{width:`calc(${componentViewport?.width||\"100vw\"} - 40px)`,y:(componentViewport?.y||0)+0+64+20+71},Z3G1aXHLv:{y:(componentViewport?.y||0)+0+64+20+50}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-rd7hul-container\",layoutDependency:layoutDependency,layoutId:\"s7wHR6xMQ-container\",nodeId:\"s7wHR6xMQ\",rendersWithMotion:true,scopeId:\"K9fojyFL8\",children:/*#__PURE__*/_jsx(Button,{f2REtqT24:resolvedLinks1[0],height:\"100%\",id:\"s7wHR6xMQ\",ieuxi4GDj:\"Contact\",layoutId:\"s7wHR6xMQ\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",...addPropertyOverrides({oDoYJlWkr:{f2REtqT24:resolvedLinks1[2]},Z3G1aXHLv:{f2REtqT24:resolvedLinks1[1]}},baseVariant,gestureVariant)})})})})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-njatbw\",\"data-framer-name\":\"Bottom Line\",layoutDependency:layoutDependency,layoutId:\"VojlpKSoc\",style:{backgroundColor:\"rgba(0, 0, 0, 0.08)\"}})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-KOshN.framer-1kqjo9n, .framer-KOshN .framer-1kqjo9n { display: block; }\",\".framer-KOshN.framer-fxxb1p { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: 64px; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 1200px; }\",\".framer-KOshN .framer-18q42n3 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 10px 0px 10px 10px; position: relative; text-decoration: none; width: min-content; }\",\".framer-KOshN .framer-1aite9a { height: 54px; position: relative; width: 78px; }\",\".framer-KOshN .framer-147a7si { height: 54px; left: 0px; position: absolute; top: 0px; width: 78px; }\",\".framer-KOshN .framer-1ut0q3r { height: 27px; left: 45px; position: absolute; top: 19px; width: 22px; }\",\".framer-KOshN .framer-1e3pqpp { flex: none; height: 40px; overflow: hidden; position: relative; width: 40px; }\",\".framer-KOshN .framer-t519vd { flex: none; height: 2px; left: calc(50.00000000000002% - 20px / 2); overflow: hidden; position: absolute; top: calc(62.50000000000002% - 2px / 2); width: 20px; will-change: var(--framer-will-change-override, transform); }\",\".framer-KOshN .framer-1l91aqr { flex: none; height: 2px; left: calc(50.00000000000002% - 20px / 2); overflow: hidden; position: absolute; top: calc(37.50000000000002% - 2px / 2); width: 20px; will-change: var(--framer-will-change-override, transform); }\",\".framer-KOshN .framer-114iekd { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-KOshN .framer-dh3xv9-container, .framer-KOshN .framer-rd7hul-container { flex: none; height: 50px; position: relative; width: 136px; }\",\".framer-KOshN .framer-njatbw { bottom: 0px; flex: none; height: 1px; left: 0px; overflow: visible; position: absolute; right: 0px; z-index: 1; }\",\".framer-KOshN.framer-v-1mkao56.framer-fxxb1p { flex-direction: column; gap: 0px; width: 390px; }\",\".framer-KOshN.framer-v-1mkao56 .framer-18q42n3, .framer-KOshN.framer-v-1uw3xcm .framer-18q42n3 { cursor: pointer; gap: unset; justify-content: space-between; padding: 10px; width: 100%; }\",\".framer-KOshN.framer-v-1mkao56 .framer-1aite9a { height: 48px; order: 0; width: 69px; }\",\".framer-KOshN.framer-v-1mkao56 .framer-147a7si { height: 48px; width: 69px; }\",\".framer-KOshN.framer-v-1mkao56 .framer-1ut0q3r { height: 24px; left: 40px; top: 17px; width: 20px; }\",\".framer-KOshN.framer-v-1mkao56 .framer-1e3pqpp { height: 44px; order: 1; width: 44px; }\",\".framer-KOshN.framer-v-1mkao56 .framer-114iekd { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 0px; justify-content: flex-start; padding: 20px; width: 100%; }\",\".framer-KOshN.framer-v-1uw3xcm.framer-fxxb1p { flex-direction: column; gap: 0px; height: min-content; max-height: calc(var(--framer-viewport-height, 100vh) * 1); overflow: auto; overscroll-behavior: contain; width: 390px; }\",\".framer-KOshN.framer-v-1uw3xcm .framer-1e3pqpp { height: 44px; width: 44px; }\",\".framer-KOshN.framer-v-1uw3xcm .framer-t519vd, .framer-KOshN.framer-v-1uw3xcm .framer-1l91aqr { top: calc(50.00000000000002% - 2px / 2); }\",\".framer-KOshN.framer-v-1uw3xcm .framer-114iekd { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 21px; justify-content: flex-start; padding: 20px; width: 100%; }\",\".framer-KOshN.framer-v-1uw3xcm .framer-dh3xv9-container, .framer-KOshN.framer-v-1uw3xcm .framer-rd7hul-container { width: 100%; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 64\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"Z3G1aXHLv\":{\"layout\":[\"fixed\",\"fixed\"]},\"oDoYJlWkr\":{\"layout\":[\"fixed\",\"auto\"],\"constraints\":[null,null,null,\"100vh\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerK9fojyFL8=withCSS(Component,css,\"framer-KOshN\");export default FramerK9fojyFL8;FramerK9fojyFL8.displayName=\"Navigation\";FramerK9fojyFL8.defaultProps={height:64,width:1200};addPropertyControls(FramerK9fojyFL8,{variant:{options:[\"Q2FS730b8\",\"Z3G1aXHLv\",\"oDoYJlWkr\"],optionTitles:[\"Desktop\",\"Phone\",\"Phone Open\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerK9fojyFL8,[{explicitInter:true,fonts:[]},...ButtonFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerK9fojyFL8\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Z3G1aXHLv\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"oDoYJlWkr\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,null,\\\"100vh\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerIntrinsicHeight\":\"64\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./K9fojyFL8.map","// Generated by Framer (8f9ffef)\nexport default function metadata(params,activeLocale){return{customHTMLHeadEnd:'<script type=\"text/javascript\">\\n    (function(c,l,a,r,i,t,y){\\n        c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};\\n        t=l.createElement(r);t.async=1;t.src=\"https://www.clarity.ms/tag/\"+i;\\n        y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);\\n    })(window, document, \"clarity\", \"script\", \"s1jngifg2x\");\\n</script>',description:\"Nolan Stewart is a UX and product designer with startup leadership experience in B2B SaaS. He specializes in designing intuitive, offline-first tools for field teams in forestry, mining, and industrial operations.\",favicon:\"https://framerusercontent.com/assets/9tAVBj0W0TfBSslZ5HdPvOjcow.png\",robots:\"max-image-preview:large\",title:\"UX Portfolio - Nolan Stewart\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}