{"version":3,"file":"script_main.BCfMEbBG.mjs","names":["NavbarFonts","Navbar","FooterFonts","Footer","breakpoints","isBrowser","serializationHash","variantClassNames","matchVariant","breakpointRules","breakpointKeys","selectors","rules","sharedStyle.css","sharedStyle1.css","mediaQueries","humanReadableVariantMap","HTMLStyle","getProps","Component","useRef","React.useId","sharedStyle.className","sharedStyle1.className","className","PropertyOverrides","React.Fragment","RichText","css","sharedStyle.fonts","sharedStyle1.fonts","Navbar","Footer","isBrowser","sharedStyle.css","sharedStyle1.css","useRef","React.useId","sharedStyle.className","sharedStyle1.className","className","PropertyOverrides","React.Fragment","RichText","sharedStyle.fonts","sharedStyle1.fonts","React.createElement","Template1","AboutPageTemplate","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","routeData","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder","React.Suspense","React.lazy"],"sources":["https:/framerusercontent.com/modules/GGcFZzaXFH89tVUId1VB/iu61MpcMuXUAPLmAmh3j/gd8LRJbpy.js","https:/framerusercontent.com/modules/O3uNysejWKCz4dk6S3UA/jvtbNq311V36NCWtsypO/DRkCcwcDI.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (6ca3d35)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,Container,ControlType,cx,forwardLoader,GeneratedComponentContext,getFonts,getFontsFromSharedStyle,PropertyOverrides,RenderTarget,RichText,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Footer from\"#framer/local/canvasComponent/jTztwdUUc/jTztwdUUc.js\";import Navbar from\"#framer/local/canvasComponent/zx3MEoIML/zx3MEoIML.js\";import*as sharedStyle from\"#framer/local/css/kBJvPIWER/kBJvPIWER.js\";import*as sharedStyle1 from\"#framer/local/css/STKq9WGm4/STKq9WGm4.js\";const NavbarFonts=getFonts(Navbar);const FooterFonts=getFonts(Footer);const breakpoints={CqAk0ub5W:\"(min-width: 1200px)\",Unr5sOlV7:\"(max-width: 809.98px)\",YrdjfilLq:\"(min-width: 810px) and (max-width: 1199.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-dYwJ5\";const variantClassNames={CqAk0ub5W:\"framer-v-1b46ad9\",Unr5sOlV7:\"framer-v-vyg9o0\",YrdjfilLq:\"framer-v-6ujf4h\"};const xMaHVRJ86=undefined;const uZX3e7wZB=undefined;const bgmVVjRir=undefined;const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const breakpointRules={Unr5sOlV7:[\".framer-dYwJ5 .framer-1lauka7 { flex-direction: column; gap: 40px; padding: 80px 20px 0px 20px; }\",\".framer-dYwJ5 .framer-1uyepmv { flex: none; flex-direction: column; gap: 40px; justify-content: flex-start; width: 100%; }\",\".framer-dYwJ5 .framer-1047acu { flex: none; width: 100%; }\",\".framer-dYwJ5 .framer-p5dn04 { padding: 0px 20px 0px 20px; }\"],YrdjfilLq:[\".framer-dYwJ5 .framer-1lauka7 { padding: 20px; }\",\".framer-dYwJ5 .framer-1047acu { flex: none; width: 495px; }\",\".framer-dYwJ5 .framer-p5dn04 { padding: 0px 20px 0px 20px; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={Unr5sOlV7:\".framer-vyg9o0-override\",YrdjfilLq:\".framer-6ujf4h-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-dYwJ5.framer-1gej3zm, .framer-dYwJ5 .framer-1gej3zm { display: block; }\",\".framer-dYwJ5.framer-1b46ad9 { align-content: center; align-items: center; background-color: var(--token-105b068a-fcd4-4f7f-b1e4-5a85cdf7a1e3, #ffffff); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-dYwJ5 .framer-1lywsr4-container { flex: none; height: auto; left: 50%; order: -1000; position: var(--framer-canvas-fixed-position, fixed); top: 0px; transform: translateX(-50%); width: 100%; z-index: 1; }\",\".framer-dYwJ5 .framer-1lauka7 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; max-width: 1400px; order: -999; overflow: visible; padding: 40px; position: relative; width: 100%; }\",\".framer-dYwJ5 .framer-dljbh6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-dYwJ5 .framer-1xuaekm-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-dYwJ5 .framer-1uyepmv { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-end; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-dYwJ5 .framer-1047acu { align-content: flex-end; align-items: flex-end; display: flex; flex: 0.7 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-dYwJ5 .framer-1xhyd20, .framer-dYwJ5 .framer-uxlf7u, .framer-dYwJ5 .framer-1iquc14 { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-dYwJ5 .framer-mla8ru { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-dYwJ5 .framer-z8fatp { --border-bottom-width: 0px; --border-color: var(--token-86dcc72b-2bb3-4c9f-b896-aa727a4005cd, #000000); --border-left-width: 1px; --border-right-width: 1px; --border-style: dashed; --border-top-width: 0px; bottom: 0px; flex: none; left: calc(50.00000000000002% - min(1400px, 100%) / 2); max-width: 1400px; order: 1003; overflow: visible; pointer-events: none; position: absolute; top: 0px; width: 100%; z-index: 3; }\",\".framer-dYwJ5 .framer-p5dn04 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; max-width: 1400px; order: 1004; overflow: visible; padding: 0px 40px 0px 40px; position: relative; width: 100%; }\",\".framer-dYwJ5 .framer-38v3c-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }',...sharedStyle.css,...sharedStyle1.css,'.framer-dYwJ5[data-border=\"true\"]::after, .framer-dYwJ5 [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];const mediaQueries={CqAk0ub5W:\"(min-width: 1200px)\",Unr5sOlV7:\"(max-width: 809.98px)\",YrdjfilLq:\"(min-width: 810px) and (max-width: 1199.98px)\"};const humanReadableVariantMap={Desktop:\"CqAk0ub5W\",Phone:\"Unr5sOlV7\",Tablet:\"YrdjfilLq\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,secondText,text,title,width,...props})=>{return{...props,bgmVVjRir:secondText??props.bgmVVjRir??\"For me, good design is never just about aesthetics — it's about connection. I take on every project with a deep curiosity for the brief and a commitment to getting it right, whether that's a logo mark, a full brand system, or a website built from the ground up with purpose.\",uZX3e7wZB:text??props.uZX3e7wZB??\"I'm Jack Williams, a designer passionate about building brands that mean something. Since 2018, I've worked with clients across industries — crafting logos, identities, and web experiences that are thoughtful, visually sharp, and built to stand the test of time.\",variant:humanReadableVariantMap[props.variant]??props.variant??\"CqAk0ub5W\",xMaHVRJ86:title??props.xMaHVRJ86??\"ABOUT\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,xMaHVRJ86,uZX3e7wZB,bgmVVjRir,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(!isBrowser())return true;if(baseVariant===\"Unr5sOlV7\")return true;return false;};const isDisplayed1=()=>{if(!isBrowser())return true;if(baseVariant===\"Unr5sOlV7\")return false;return true;};useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"CqAk0ub5W\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-105b068a-fcd4-4f7f-b1e4-5a85cdf7a1e3, rgb(255, 255, 255)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1b46ad9\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[isDisplayed()&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Unr5sOlV7:{height:134,width:\"100vw\",y:0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1lywsr4-container hidden-1b46ad9 hidden-6ujf4h\",\"data-framer-layout-hint-center-x\":true,\"data-framer-name\":\"Navbar - Mobile\",layoutScroll:true,name:\"Navbar - Mobile\",nodeId:\"POHp6lHa2\",scopeId:\"gd8LRJbpy\",children:/*#__PURE__*/_jsx(Navbar,{height:\"100%\",id:\"POHp6lHa2\",layoutId:\"POHp6lHa2\",name:\"Navbar - Mobile\",style:{width:\"100%\"},variant:matchVariant(\"Ih1zvXN7o\"),width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1lauka7\",\"data-framer-name\":\"Top wrapper\",children:[isDisplayed1()&&/*#__PURE__*/_jsx(\"div\",{className:\"framer-dljbh6 hidden-vyg9o0\",\"data-framer-name\":\"Navbar wrapper\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{YrdjfilLq:{y:20}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:134,y:40,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1xuaekm-container\",\"data-framer-name\":\"Navbar - Desktop/Tablet\",name:\"Navbar - Desktop/Tablet\",nodeId:\"j2E5AjCqM\",scopeId:\"gd8LRJbpy\",children:/*#__PURE__*/_jsx(Navbar,{height:\"100%\",id:\"j2E5AjCqM\",layoutId:\"j2E5AjCqM\",name:\"Navbar - Desktop/Tablet\",variant:matchVariant(\"sk71u4fI8\"),width:\"100%\"})})})})}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1uyepmv\",\"data-framer-name\":\"Text wrapper\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-1047acu\",\"data-framer-name\":\"Title + Text wrapper\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Unr5sOlV7:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1d5zhrz\",\"data-styles-preset\":\"kBJvPIWER\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\"},children:\"ABOUT\"})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1d5zhrz\",\"data-styles-preset\":\"kBJvPIWER\",dir:\"auto\",style:{\"--framer-text-alignment\":\"right\"},children:\"ABOUT\"})}),className:\"framer-1xhyd20\",\"data-framer-name\":\"Title\",fonts:[\"Inter\"],text:xMaHVRJ86,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Unr5sOlV7:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\"},children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"0px\"},children:\"I'm Jack Williams, a designer who believes great work lives at the intersection of precision and feeling. I've spent years building brands, crafting websites, and shaping visual systems that don't just look good — they mean something and work hard for the people behind them.\"})})})},YrdjfilLq:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"0px\"},children:\"I'm Jack Williams, a designer passionate about building brands that mean something. Since 2018, I've worked with clients across industries — crafting logos, identities, and web experiences that are thoughtful, visually sharp, and built to stand the test of time.\"})})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",children:\"I'm Jack Williams, a designer who believes great work lives at the intersection of precision and feeling. I've spent years building brands, crafting websites, and shaping visual systems that don't just look good — they mean something and work hard for the people behind them.\"})}),className:\"framer-uxlf7u\",\"data-framer-name\":\"Text\",fonts:[\"Inter\"],text:uZX3e7wZB,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Unr5sOlV7:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\"},children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"0px\"},children:\"For me, good design is never just about aesthetics — it's about connection. I take on every project with a deep curiosity for the brief and a commitment to getting it right, whether that's a logo mark, a full brand system, or a website built from the ground up with purpose.\"})})})},YrdjfilLq:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"60px\"},children:\"For me, good design is never just about aesthetics — it's about connection. I take on every project with a deep curiosity for the brief and a commitment to getting it right, whether that's a logo mark, a full brand system, or a website built from the ground up with purpose.\"})})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"140px\"},children:\"For me, good design is never just about aesthetics — it's about connection. I take on every project with a deep curiosity for the brief and a commitment to getting it right, whether that's a logo mark, a full brand system, or a website built from the ground up with purpose.\"})})}),className:\"framer-1iquc14\",\"data-framer-name\":\"Text\",fonts:[\"Inter\"],text:bgmVVjRir,verticalAlignment:\"top\",withExternalLayout:true})})]})})]}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-mla8ru\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-z8fatp\",\"data-border\":true,\"data-framer-name\":\"Border\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-p5dn04\",\"data-framer-name\":\"Footer wrapper\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Unr5sOlV7:{width:\"max(min(100vw, 1400px) - 40px, 1px)\"},YrdjfilLq:{width:\"max(min(100vw, 1400px) - 40px, 1px)\",y:1420}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:620,width:\"max(min(100vw, 1400px) - 80px, 1px)\",y:1460,children:/*#__PURE__*/_jsx(Container,{className:\"framer-38v3c-container\",nodeId:\"TNcWUoVi8\",scopeId:\"gd8LRJbpy\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Unr5sOlV7:{variant:matchVariant(\"TNGAnUZG5\")},YrdjfilLq:{variant:matchVariant(\"W5OZHcjIu\")}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"TNcWUoVi8\",layoutId:\"TNcWUoVi8\",style:{width:\"100%\"},variant:matchVariant(\"iVNnutFfQ\"),width:\"100%\"})})})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"YrdjfilLq\":{\"layout\":[\"fixed\",\"fixed\"]},\"Unr5sOlV7\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"xMaHVRJ86\":\"title\",\"uZX3e7wZB\":\"text\",\"bgmVVjRir\":\"secondText\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"Unr5sOlV7\":[\".framer-1lywsr4-container\",\".framer-1lauka7\",\".framer-p5dn04\"],\"CqAk0ub5W\":[\".framer-1lauka7\",\".framer-p5dn04\"],\"YrdjfilLq\":[\".framer-1lauka7\",\".framer-p5dn04\"]}\n * @framerBreakpoints {\"CqAk0ub5W\":{\"min\":1200,\"canvasClassName\":\"framer-1b46ad9-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"YrdjfilLq\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-6ujf4h-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"Unr5sOlV7\":{\"max\":809,\"canvasClassName\":\"framer-vyg9o0-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant CqAk0ub5W\n * @framerLayoutTemplate true\n */const Framergd8LRJbpy=withCSS(Component,css,\"framer-dYwJ5\");export default Framergd8LRJbpy;Framergd8LRJbpy.displayName=\"About Page Template\";Framergd8LRJbpy.defaultProps={height:1e3,width:1200};addPropertyControls(Framergd8LRJbpy,{xMaHVRJ86:{defaultValue:\"ABOUT\",displayTextArea:false,title:\"Title\",type:ControlType.String},uZX3e7wZB:{defaultValue:\"I'm Jack Williams, a designer passionate about building brands that mean something. Since 2018, I've worked with clients across industries — crafting logos, identities, and web experiences that are thoughtful, visually sharp, and built to stand the test of time.\",displayTextArea:false,title:\"Text\",type:ControlType.String},bgmVVjRir:{defaultValue:\"For me, good design is never just about aesthetics — it's about connection. I take on every project with a deep curiosity for the brief and a commitment to getting it right, whether that's a logo mark, a full brand system, or a website built from the ground up with purpose.\",title:\"Second Text\",type:ControlType.String}});addFonts(Framergd8LRJbpy,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...NavbarFonts,...FooterFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});Framergd8LRJbpy.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Navbar,{},context),forwardLoader(Footer,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framergd8LRJbpy\",\"slots\":[],\"annotations\":{\"framerBreakpoints\":\"{\\\"CqAk0ub5W\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-1b46ad9-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"YrdjfilLq\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-6ujf4h-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"Unr5sOlV7\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-vyg9o0-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"xMaHVRJ86\\\":\\\"title\\\",\\\"uZX3e7wZB\\\":\\\"text\\\",\\\"bgmVVjRir\\\":\\\"secondText\\\"}\",\"framerLayoutTemplate\":\"true\",\"framerImmutableVariables\":\"true\",\"framerDefaultVariant\":\"CqAk0ub5W\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"YrdjfilLq\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Unr5sOlV7\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"1000\",\"framerHitTargets\":\"{\\\"Unr5sOlV7\\\":[\\\".framer-1lywsr4-container\\\",\\\".framer-1lauka7\\\",\\\".framer-p5dn04\\\"],\\\"CqAk0ub5W\\\":[\\\".framer-1lauka7\\\",\\\".framer-p5dn04\\\"],\\\"YrdjfilLq\\\":[\\\".framer-1lauka7\\\",\\\".framer-p5dn04\\\"]}\",\"framerContractVersion\":\"1\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca3d35)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,Container,ControlType,cx,forwardLoader,GeneratedComponentContext,getFonts,getFontsFromSharedStyle,PropertyOverrides,RenderTarget,RichText,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Footer from\"#framer/local/canvasComponent/jTztwdUUc/jTztwdUUc.js\";import Navbar from\"#framer/local/canvasComponent/zx3MEoIML/zx3MEoIML.js\";import*as sharedStyle from\"#framer/local/css/kBJvPIWER/kBJvPIWER.js\";import*as sharedStyle1 from\"#framer/local/css/STKq9WGm4/STKq9WGm4.js\";const NavbarFonts=getFonts(Navbar);const FooterFonts=getFonts(Footer);const breakpoints={hIVQht2he:\"(min-width: 810px) and (max-width: 1199.98px)\",TeHHbMpfU:\"(max-width: 809.98px)\",zQeFZFloT:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-FaZeu\";const variantClassNames={hIVQht2he:\"framer-v-vfbqqj\",TeHHbMpfU:\"framer-v-1kigf98\",zQeFZFloT:\"framer-v-s4cqeq\"};const xMaHVRJ86=undefined;const uZX3e7wZB=undefined;const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const breakpointRules={hIVQht2he:[\".framer-FaZeu .framer-gbarjy { padding: 20px; }\",\".framer-FaZeu .framer-sayg2k { width: 495px; }\",\".framer-FaZeu .framer-6hc1il { white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-FaZeu .framer-lu8g02 { align-self: unset; width: 100%; }\",\".framer-FaZeu .framer-1u4jp7v { padding: 0px 20px 0px 20px; }\"],TeHHbMpfU:[\".framer-FaZeu .framer-gbarjy { flex-direction: column; gap: 40px; padding: 80px 20px 0px 20px; }\",\".framer-FaZeu .framer-1ve1wtw { flex: none; flex-direction: column; gap: 40px; justify-content: flex-start; width: 100%; }\",\".framer-FaZeu .framer-sayg2k { width: 100%; }\",\".framer-FaZeu .framer-6hc1il { white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-FaZeu .framer-lu8g02 { align-self: unset; width: 100%; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={hIVQht2he:\".framer-vfbqqj-override\",TeHHbMpfU:\".framer-1kigf98-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-FaZeu.framer-sqbyew, .framer-FaZeu .framer-sqbyew { display: block; }\",\".framer-FaZeu.framer-s4cqeq { align-content: center; align-items: center; background-color: var(--token-105b068a-fcd4-4f7f-b1e4-5a85cdf7a1e3, #ffffff); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-FaZeu .framer-1bmxocb-container { flex: none; height: auto; left: 50%; order: -1000; position: var(--framer-canvas-fixed-position, fixed); top: 0px; transform: translateX(-50%); width: 100%; z-index: 1; }\",\".framer-FaZeu .framer-gbarjy { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; max-width: 1400px; order: -999; overflow: visible; padding: 40px; position: relative; width: 100%; }\",\".framer-FaZeu .framer-1m4hny6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-FaZeu .framer-kifn34-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-FaZeu .framer-1ve1wtw { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-end; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-FaZeu .framer-sayg2k { align-content: flex-end; align-items: flex-end; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-FaZeu .framer-6hc1il { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-FaZeu .framer-lu8g02 { --framer-link-text-color: #0099ff; --framer-link-text-decoration: underline; align-self: stretch; flex: none; height: auto; position: relative; white-space: pre-wrap; width: auto; word-break: break-word; word-wrap: break-word; }\",\".framer-FaZeu .framer-650md2 { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-FaZeu .framer-nvif9c { --border-bottom-width: 0px; --border-color: var(--token-86dcc72b-2bb3-4c9f-b896-aa727a4005cd, #000000); --border-left-width: 1px; --border-right-width: 1px; --border-style: dashed; --border-top-width: 0px; bottom: 0px; flex: none; left: calc(50.00000000000002% - min(1400px, 100%) / 2); max-width: 1400px; order: 1003; overflow: visible; pointer-events: none; position: absolute; top: 0px; width: 100%; z-index: 3; }\",\".framer-FaZeu .framer-1u4jp7v { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; max-width: 1400px; order: 1004; overflow: visible; padding: 0px 40px 0px 40px; position: relative; width: 100%; }\",\".framer-FaZeu .framer-hq48k2-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }',...sharedStyle.css,...sharedStyle1.css,'.framer-FaZeu[data-border=\"true\"]::after, .framer-FaZeu [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];const mediaQueries={hIVQht2he:\"(min-width: 810px) and (max-width: 1199.98px)\",TeHHbMpfU:\"(max-width: 809.98px)\",zQeFZFloT:\"(min-width: 1200px)\"};const humanReadableVariantMap={Desktop:\"zQeFZFloT\",Phone:\"TeHHbMpfU\",Tablet:\"hIVQht2he\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,text,title,width,...props})=>{return{...props,uZX3e7wZB:text??props.uZX3e7wZB??\"I'm Jack Williams, a designer passionate about crafting visual experiences that speak for themselves. From brand identities to logos and web design, I bring ideas to life with intention and precision — creating work that feels bold, timeless, and built to leave a lasting impression on every screen and audience.\",variant:humanReadableVariantMap[props.variant]??props.variant??\"zQeFZFloT\",xMaHVRJ86:title??props.xMaHVRJ86??\"JACK WILLIAMS\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,xMaHVRJ86,uZX3e7wZB,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(!isBrowser())return true;if(baseVariant===\"TeHHbMpfU\")return true;return false;};const isDisplayed1=()=>{if(!isBrowser())return true;if(baseVariant===\"TeHHbMpfU\")return false;return true;};useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"zQeFZFloT\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-105b068a-fcd4-4f7f-b1e4-5a85cdf7a1e3, rgb(255, 255, 255)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-s4cqeq\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[isDisplayed()&&/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{TeHHbMpfU:{height:134,width:\"100vw\",y:0}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1bmxocb-container hidden-s4cqeq hidden-vfbqqj\",\"data-framer-layout-hint-center-x\":true,\"data-framer-name\":\"Navbar - Mobile\",layoutScroll:true,name:\"Navbar - Mobile\",nodeId:\"gpI8X1aXW\",scopeId:\"DRkCcwcDI\",children:/*#__PURE__*/_jsx(Navbar,{height:\"100%\",id:\"gpI8X1aXW\",layoutId:\"gpI8X1aXW\",name:\"Navbar - Mobile\",style:{width:\"100%\"},variant:matchVariant(\"Ih1zvXN7o\"),width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-gbarjy\",\"data-framer-name\":\"Top wrapper\",children:[isDisplayed1()&&/*#__PURE__*/_jsx(\"div\",{className:\"framer-1m4hny6 hidden-1kigf98\",\"data-framer-name\":\"Navbar wrapper\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{hIVQht2he:{y:20}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:134,y:40,children:/*#__PURE__*/_jsx(Container,{className:\"framer-kifn34-container\",\"data-framer-name\":\"Navbar - Desktop/Tablet\",name:\"Navbar - Desktop/Tablet\",nodeId:\"tUsmTk2ie\",scopeId:\"DRkCcwcDI\",children:/*#__PURE__*/_jsx(Navbar,{height:\"100%\",id:\"tUsmTk2ie\",layoutId:\"tUsmTk2ie\",name:\"Navbar - Desktop/Tablet\",variant:matchVariant(\"sk71u4fI8\"),width:\"100%\"})})})})}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1ve1wtw\",\"data-framer-name\":\"Text wrapper\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-sayg2k\",\"data-framer-name\":\"Title + Text wrapper\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{hIVQht2he:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1d5zhrz\",\"data-styles-preset\":\"kBJvPIWER\",dir:\"auto\",style:{\"--framer-text-alignment\":\"right\"},children:\"JACK WILLIAMS\"})})},TeHHbMpfU:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1d5zhrz\",\"data-styles-preset\":\"kBJvPIWER\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\"},children:\"JACK WILLIAMS\"})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"h1\",{className:\"framer-styles-preset-1d5zhrz\",\"data-styles-preset\":\"kBJvPIWER\",dir:\"auto\",children:\"JACK WILLIAMS\"})}),className:\"framer-6hc1il\",\"data-framer-name\":\"Title\",fonts:[\"Inter\"],text:xMaHVRJ86,verticalAlignment:\"top\",withExternalLayout:true})}),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{hIVQht2he:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"60px\"},children:\"I'm Jack Williams, a designer passionate about crafting visual experiences that speak for themselves. From brand identities to logos and web design, I bring ideas to life with intention and precision — creating work that feels bold, timeless, and built to leave a lasting impression on every screen and audience.\"})})})},TeHHbMpfU:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\"},children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"0px\"},children:\"I'm Jack Williams, a designer passionate about crafting visual experiences that speak for themselves. From brand identities to logos and web design, I bring ideas to life with intention and precision — creating work that feels bold, timeless, and built to leave a lasting impression on every screen and audience.\"})})})}},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{className:\"framer-styles-preset-1yx5m5m\",\"data-styles-preset\":\"STKq9WGm4\",dir:\"auto\",children:/*#__PURE__*/_jsx(\"mark\",{style:{\"--framer-text-background-padding\":\"160px\"},children:\"I'm Jack Williams, a designer passionate about crafting visual experiences that speak for themselves. From brand identities to logos and web design, I bring ideas to life with intention and precision — creating work that feels bold, timeless, and built to leave a lasting impression on every screen and audience.\"})})}),className:\"framer-lu8g02\",\"data-framer-name\":\"Text\",fonts:[\"Inter\"],text:uZX3e7wZB,verticalAlignment:\"top\",withExternalLayout:true})})]})})]}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-650md2\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-nvif9c\",\"data-border\":true,\"data-framer-name\":\"Border\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1u4jp7v\",\"data-framer-name\":\"Footer wrapper\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{hIVQht2he:{width:\"max(min(100vw, 1400px) - 40px, 1px)\",y:1280}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:620,width:\"max(min(100vw, 1400px) - 80px, 1px)\",y:1320,children:/*#__PURE__*/_jsx(Container,{className:\"framer-hq48k2-container\",nodeId:\"bmMrzMUAb\",scopeId:\"DRkCcwcDI\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{hIVQht2he:{variant:matchVariant(\"W5OZHcjIu\")},TeHHbMpfU:{variant:matchVariant(\"TNGAnUZG5\")}},children:/*#__PURE__*/_jsx(Footer,{A24TV8LjA:\"mailto:jackwilliams@gmail.com\",EqeHR4J9s:\"https://www.linkedin.com/\",eTVjfryQn:\"https://dribbble.com/\",height:\"100%\",id:\"bmMrzMUAb\",ir6lBuJqe:\"https://www.instagram.com/\",layoutId:\"bmMrzMUAb\",style:{width:\"100%\"},UtNabQRzO:\"https://x.com/\",variant:matchVariant(\"iVNnutFfQ\"),width:\"100%\"})})})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"hIVQht2he\":{\"layout\":[\"fixed\",\"fixed\"]},\"TeHHbMpfU\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"xMaHVRJ86\":\"title\",\"uZX3e7wZB\":\"text\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"TeHHbMpfU\":[\".framer-1bmxocb-container\",\".framer-gbarjy\",\".framer-1u4jp7v\"],\"zQeFZFloT\":[\".framer-gbarjy\",\".framer-1u4jp7v\"],\"hIVQht2he\":[\".framer-gbarjy\",\".framer-1u4jp7v\"]}\n * @framerBreakpoints {\"zQeFZFloT\":{\"min\":1200,\"canvasClassName\":\"framer-s4cqeq-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"hIVQht2he\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-vfbqqj-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"TeHHbMpfU\":{\"max\":809,\"canvasClassName\":\"framer-1kigf98-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant zQeFZFloT\n * @framerLayoutTemplate true\n */const FramerDRkCcwcDI=withCSS(Component,css,\"framer-FaZeu\");export default FramerDRkCcwcDI;FramerDRkCcwcDI.displayName=\"Template\";FramerDRkCcwcDI.defaultProps={height:1e3,width:1200};addPropertyControls(FramerDRkCcwcDI,{xMaHVRJ86:{defaultValue:\"JACK WILLIAMS\",displayTextArea:false,title:\"Title\",type:ControlType.String},uZX3e7wZB:{defaultValue:\"I'm Jack Williams, a designer passionate about crafting visual experiences that speak for themselves. From brand identities to logos and web design, I bring ideas to life with intention and precision — creating work that feels bold, timeless, and built to leave a lasting impression on every screen and audience.\",displayTextArea:false,title:\"Text\",type:ControlType.String}});addFonts(FramerDRkCcwcDI,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...NavbarFonts,...FooterFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});FramerDRkCcwcDI.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Navbar,{},context),forwardLoader(Footer,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerDRkCcwcDI\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"hIVQht2he\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"TeHHbMpfU\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"1000\",\"framerBreakpoints\":\"{\\\"zQeFZFloT\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-s4cqeq-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"hIVQht2he\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-vfbqqj-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"TeHHbMpfU\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-1kigf98-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerDefaultVariant\":\"zQeFZFloT\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerHitTargets\":\"{\\\"TeHHbMpfU\\\":[\\\".framer-1bmxocb-container\\\",\\\".framer-gbarjy\\\",\\\".framer-1u4jp7v\\\"],\\\"zQeFZFloT\\\":[\\\".framer-gbarjy\\\",\\\".framer-1u4jp7v\\\"],\\\"hIVQht2he\\\":[\\\".framer-gbarjy\\\",\\\".framer-1u4jp7v\\\"]}\",\"framerVariables\":\"{\\\"xMaHVRJ86\\\":\\\"title\\\",\\\"uZX3e7wZB\\\":\\\"text\\\"}\",\"framerIntrinsicWidth\":\"1200\",\"framerAutoSizeImages\":\"true\",\"framerLayoutTemplate\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport AboutPageTemplate from \"https://framerusercontent.com/modules/GGcFZzaXFH89tVUId1VB/iu61MpcMuXUAPLmAmh3j/gd8LRJbpy.js\";\r\nimport Template1 from \"https://framerusercontent.com/modules/O3uNysejWKCz4dk6S3UA/jvtbNq311V36NCWtsypO/DRkCcwcDI.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {vQFamMtKk: \"services\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/nhusMhGJztpGDVKEmaqA/VgJkOgXqGdJKt6OUTrQS/augiA20Il.js\")), path: \"/\"}, pEWOWNzYL: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/YMmhVzi0o06QTc6uiXIp/2rakv93qrM2iq96xLWS7/pEWOWNzYL.js\")), path: \"/projects\"}, H9P2rdCC2: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/yorDhiMVaVu5vFt5BrsQ/Ru4z9Cs0fuA3znccN0RB/H9P2rdCC2.js\")), path: \"/about\"}, qr0ArK2k0: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/UXp4gC3VdjeMYqlKk8nU/zQZ08aqUEa9TcMXmSZR8/qr0ArK2k0.js\")), path: \"/contact\"}, r38LCAfiF: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/JZJQLzGiBWm8rNNThuaJ/l3FHkXNAcarmKen1j9rd/r38LCAfiF.js\")), path: \"/404\"}, jBSFCJXjS: {collectionId: \"X3I3y9abM\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/NwkMYfd4IPobVUso5LQE/4RNK26nWqgST39u9A3iq/jBSFCJXjS.js\")), path: \"/projects/:lEzmF6De5\"}}\r\n\r\n\t\tconst locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {X3I3y9abM: async () => (await import(\"https://framerusercontent.com/modules/85sTsgHa6zKxPnJ7qbW1/QhYCcVzUDmh9wiVgmYt8/X3I3y9abM.js\"))?.[\"utils\"]}\r\n\t\tconst framerSiteId = \"0401ab68b4c4265f71f30952b2742f6f39d71bdb84cf54d8ac7d749926623bc5\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const props1 = {uZX3e7wZB: \"I'm Jack Williams, a designer passionate about crafting visual experiences that speak for themselves. From brand identities to logos and web design, I bring ideas to life with intention and precision — creating work that feels bold, timeless, and built to leave a lasting impression on every screen and audience.\", xMaHVRJ86: \"JACK WILLIAMS\"}\r\nconst props2 = {...props1, uZX3e7wZB: \"Every project here started with a problem and ended with a story. From brand identities to full web experiences, this is a collection of work built with intention, shaped by collaboration, and designed to make a lasting mark on every industry.\", xMaHVRJ86: \"PROJECTS\"}\r\nconst props3 = {bgmVVjRir: \"For me, good design is never just about aesthetics — it's about connection. I take on every project with a deep curiosity for the brief and a commitment to getting it right, whether that's a logo mark, a full brand system, or a website built from the ground up with purpose.\", uZX3e7wZB: \"I'm Jack Williams, a designer passionate about building brands that mean something. Since 2018, I've worked with clients across industries — crafting logos, identities, and web experiences that are thoughtful, visually sharp, and built to stand the test of time.\", xMaHVRJ86: \"ABOUT\"}\r\nconst props4 = {...props1, uZX3e7wZB: \"Whether you have a fully formed brief or just the beginning of an idea, I'd love to hear about it. Great work starts with a good conversation — so let's have one!\", xMaHVRJ86: \"CONTACT\"}\r\nconst props5 = {...props1, uZX3e7wZB: \"\", xMaHVRJ86: \"\"}\r\nconst templateProps = {augiA20Il: props1, H9P2rdCC2: props3, pEWOWNzYL: props2, qr0ArK2k0: props4, r38LCAfiF: props5}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"pEWOWNzYL\":\r\ncase \"qr0ArK2k0\":\r\ncase \"r38LCAfiF\":\r\nreturn React.createElement(Template1, {...props, key: \"Template1\", style}, children(true));\r\ncase \"H9P2rdCC2\":\r\nreturn React.createElement(AboutPageTemplate, {...props, key: \"AboutPageTemplate\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"pEWOWNzYL\":\r\ncase \"qr0ArK2k0\":\r\ncase \"r38LCAfiF\":\r\nreturn [{hash: \"1kigf98\", mediaQuery: \"(max-width: 809.98px)\"}, {hash: \"vfbqqj\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"s4cqeq\", mediaQuery: \"(min-width: 1200px)\"}]\r\ncase \"H9P2rdCC2\":\r\nreturn [{hash: \"vyg9o0\", mediaQuery: \"(max-width: 809.98px)\"}, {hash: \"6ujf4h\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"1b46ad9\", mediaQuery: \"(min-width: 1200px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/JZJQLzGiBWm8rNNThuaJ/l3FHkXNAcarmKen1j9rd/r38LCAfiF.js\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://portova.framer.website\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: true,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/xC2Cs7L1BhRio3KX8aTZ/W7TIF0DfA4cA2FZPhMs3/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithFeaturesContext = React.createElement(\r\n\t\t\t\tFramer.LibraryFeaturesProvider,\r\n\t\t\t\t{\r\n\t\t\t\t\tchildren: content,\r\n\t\t\t\t\tvalue: {autobahnNavigation: true, disableCustomCode: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: contentWithFeaturesContext\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {global: {enter: {mask: {angle: 180, type: \"wipe\", width: \"0%\"}, opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.8, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}}, routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\t// Fallback support for stack gaps\r\n\t\t\tFramer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, pathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\t}\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId: framerSiteId ?? null,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tif (true) Framer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t\t;(function () {\r\n\t\t\tif (!isBrowser) return\r\n\r\n\t\t\tReact.startTransition(() => {\r\n\t\t\t\tReactDOM.hydrateRoot(\r\n\t\t\t\t\tdocument.getElementById(\"__framer-badge-container\"),\r\n\t\t\t\t\tReact.createElement(React.Suspense, {}, React.createElement(React.lazy(() => import(\"__framer-badge\"))))\r\n\t\t\t\t)\r\n\t\t\t})\r\n\t\t})()\r\n\t"],"mappings":"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"}