{"version":3,"file":"script_main.Ch4YlfMZ.mjs","names":["breakpoints","serializationHash","variantClassNames","breakpointRules","breakpointKeys","rules","mediaQueries","humanReadableVariantMap","HTMLStyle","getProps","Component","useRef","React.useId","PropertyOverrides","shaderConfig","css","useRef","React.useId","PropertyOverrides","shaderConfig","React.createElement","Background","BackgroundBlack","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"],"sources":["https:/framerusercontent.com/modules/QEytd7xyjUsL7yuVUzSs/O7s2vxltmhiskELYwyrY/LiquidGradient.js","https:/framerusercontent.com/modules/erdO61s66NnEDJutvWK6/7ilX613BCeD0VW11fiPv/IFm0qfXre.js","https:/framerusercontent.com/modules/RJfElKSFBuTy61gwApZz/g4XtIvs2ujCaJf2MUcCc/f1HEOcmyE.js","framer:toplevel/main"],"sourcesContent":["// Liquid Gradient\nimport{defineShader,ControlType}from\"framer\";export default defineShader({title:\"Liquid Gradient\",resolutionScale:\"consistent\",fragment:`\n// === CONSTANTS ===\nconst float GOLDEN_ANGLE = 2.3999632;\nconst float TAU = 6.28318530;\n\n// === PCG hash - https://www.jcgt.org/published/0009/03/02/\nuvec3 hash3(uvec3 v) {\n    v = v * 1664525u + 1013904223u;\n    v.x += v.y * v.z;\n    v.y += v.z * v.x;\n    v.z += v.x * v.y;\n    v ^= v >> 16u;\n    v.x += v.y * v.z;\n    v.y += v.z * v.x;\n    v.z += v.x * v.y;\n    return v;\n}\n\n// Seed\nvec3 seedRandom(float seedVal) {\n    uvec3 s = uvec3(\n        floatBitsToUint(seedVal),\n        floatBitsToUint(seedVal * 1.5 + 7.31),\n        floatBitsToUint(seedVal * 2.7 + 13.37)\n    );\n    s = hash3(s);\n    return vec3(s) / float(0xFFFFFFFFu);\n}\n\n// === COLOR SPACE UTILITIES ===\nvec3 toLinear(vec3 c) {\n    return pow(c, vec3(2.2));\n}\n\nvec3 toSrgb(vec3 c) {\n    return pow(clamp(c, 0.0, 1.0), vec3(0.4545));\n}\n\nvec3 linearToOklab(vec3 c) {\n    float l = 0.4122214708 * c.r + 0.5363325363 * c.g + 0.0514459929 * c.b;\n    float m = 0.2119034982 * c.r + 0.6806995451 * c.g + 0.1073969566 * c.b;\n    float s = 0.0883024619 * c.r + 0.2817188376 * c.g + 0.6299787005 * c.b;\n    \n    l = pow(max(l, 0.0), 1.0/3.0);\n    m = pow(max(m, 0.0), 1.0/3.0);\n    s = pow(max(s, 0.0), 1.0/3.0);\n    \n    return vec3(\n        0.2104542553 * l + 0.7936177850 * m - 0.0040720468 * s,\n        1.9779984951 * l - 2.4285922050 * m + 0.4505937099 * s,\n        0.0259040371 * l + 0.7827717662 * m - 0.8086757660 * s\n    );\n}\n\nvec3 oklabToLinear(vec3 c) {\n    float l = c.x + 0.3963377774 * c.y + 0.2158037573 * c.z;\n    float m = c.x - 0.1055613458 * c.y - 0.0638541728 * c.z;\n    float s = c.x - 0.0894841775 * c.y - 1.2914855480 * c.z;\n    \n    l = l * l * l;\n    m = m * m * m;\n    s = s * s * s;\n    \n    return vec3(\n        +4.0767416621 * l - 3.3077115913 * m + 0.2309699292 * s,\n        -1.2684380046 * l + 2.6097574011 * m - 0.3413193965 * s,\n        -0.0041960863 * l - 0.7034186147 * m + 1.7076147010 * s\n    );\n}\n\nvec3 oklabToLch(vec3 lab) {\n    return vec3(lab.x, length(lab.yz), atan(lab.z, lab.y));\n}\n\nvec3 lchToOklab(vec3 lch) {\n    return vec3(lch.x, lch.y * cos(lch.z), lch.y * sin(lch.z));\n}\n\nvec3 mixLch(vec3 lab0, vec3 lab1, float t) {\n    vec3 lch0 = oklabToLch(lab0);\n    vec3 lch1 = oklabToLch(lab1);\n    \n    if (lch0.y < 0.05) lch0.z = lch1.z;\n    if (lch1.y < 0.05) lch1.z = lch0.z;\n    \n    float dh = lch1.z - lch0.z;\n    if (dh > 3.14159265) dh -= 6.28318530;\n    if (dh < -3.14159265) dh += 6.28318530;\n    \n    return lchToOklab(vec3(\n        mix(lch0.x, lch1.x, t),\n        mix(lch0.y, lch1.y, t),\n        lch0.z + dh * t\n    ));\n}\n\n// === PALETTE SAMPLING ===\nvec3 getColor(int idx) {\n    if (u_colors_length < 1) return vec3(0.0);\n    int safeIdx = clamp(idx, 0, u_colors_length - 1);\n    return u_colors[safeIdx].rgb;\n}\n\nvec3 paletteN(float t, int count) {\n    if (count < 1) return vec3(0.0);\n    if (count < 2) return toLinear(getColor(0));\n    \n    float segmentSize = 1.0 / float(count - 1);\n    t = clamp(t, 0.0, 1.0);\n    int idx = min(int(floor(t / segmentSize)), count - 2);\n    float localT = clamp((t - float(idx) * segmentSize) / segmentSize, 0.0, 1.0);\n    \n    vec3 lab0 = linearToOklab(toLinear(getColor(idx)));\n    vec3 lab1 = linearToOklab(toLinear(getColor(idx + 1)));\n    \n    return oklabToLinear(mixLch(lab0, lab1, localT));\n}\n\n// === DITHER ===\nfloat IGN(vec2 uv) {\n    return fract(52.9829189 * fract(dot(uv, vec2(0.06711056, 0.00583715))));\n}\n\nfloat quickNoise(vec2 I) {\n    return fract(sin(dot(I, vec2(12.9898, 78.233))) * 43758.5453);\n}\n\n// Dither Mode: 0=Off, 1=IGN, 2=quickNoise\nfloat getDither(vec2 I, float mode) {\n    if (mode < 0.5) return 0.5;          // 0: Off\n    if (mode < 1.5) return IGN(I);       // 1: Smooth\n    return quickNoise(I);                // 2: Grain\n}\n\n// === POST-PROCESS ===\nvec3 softGamutMap(vec3 linearRgb) {\n    float maxC = max(linearRgb.r, max(linearRgb.g, linearRgb.b));\n    float minC = min(linearRgb.r, min(linearRgb.g, linearRgb.b));\n    \n    if (minC >= 0.0 && maxC <= 1.0) return linearRgb;\n    \n    vec3 lab = linearToOklab(max(linearRgb, 0.0));\n    float L = clamp(lab.x, 0.0, 1.0);\n    float C = length(lab.yz);\n    float h = atan(lab.z, lab.y);\n    \n    float maxChroma = 0.4 * (1.0 - pow(abs(2.0 * L - 1.0), 2.0));\n    \n    if (C > maxChroma * 0.7) {\n        float knee = maxChroma * 0.7;\n        C = knee + (maxChroma - knee) * tanh((C - knee) / (maxChroma - knee + 0.001));\n    }\n    \n    return clamp(oklabToLinear(vec3(L, C * cos(h), C * sin(h))), 0.0, 1.0);\n}\n\nvec3 applyContrastSaturation(vec3 linearRgb, float contrast, float saturation) {\n    vec3 lab = linearToOklab(linearRgb);\n    float C = length(lab.yz);\n    float h = atan(lab.z, lab.y);\n    \n    lab.x = clamp((lab.x - 0.5) * contrast + 0.5, 0.0, 1.0);\n    C *= saturation;\n    lab.y = C * cos(h);\n    lab.z = C * sin(h);\n    \n    return oklabToLinear(lab);\n}\n\n// === MAIN ===\nvoid main() {\n    vec2 fragCoord = v_uv * u_resolution;\n    vec2 r = u_resolution;\n    vec2 p = (fragCoord * 2.0 - r) / r.y;\n    \n    int colorCount = u_colors_length;\n    \n    // Early out: no colors -> black\n    if (colorCount < 1) {\n        fragColor = vec4(0.0, 0.0, 0.0, 1.0);\n        return;\n    }\n\n    float t = u_time * 0.3;\n    \n    // Map time onto a circle so animation seamlessly wraps.\n    float looping = step(0.5, u_loop);\n    float phase = TAU * u_time / max(u_loop, 0.01);\n    float radius = u_loop * u_speed * 0.3 / TAU;\n    float tA = sin(phase) * radius;\n    float tB = (1.0 - cos(phase)) * radius;\n    \n    // Seed-based offsets\n    vec3 seedOffset = seedRandom(u_seed);\n    vec3 seedOffset2 = seedRandom(u_seed + 100.0);\n    \n    // Golden angle rotation\n    float seedAngle = u_seed * GOLDEN_ANGLE;\n    vec2 seedPhase = (seedOffset2.xy - 0.5) * TAU;\n    \n    // Seed-based rotation\n    float cs = cos(seedAngle);\n    float sn = sin(seedAngle);\n    p = mat2(cs, -sn, sn, cs) * p;\n    \n    // Get dither value\n    float dither = getDither(floor(fragCoord / u_pixelRatio), u_ditherMode);\n    \n    // === TURBULENCE ===\n    float totalVal = 0.0;\n    float totalWeight = 0.0;\n    int turbIter = int(u_turbIter);\n    \n    float freq = 1.0 / max(u_turbFreq, 0.01);\n    \n    for (float i = 0.0; i < 4.0; i++) {\n        float eph = i / 4.0;\n       \n        vec2 q = p * u_scale;\n        float sq = eph * eph;\n        \n        if (u_jellify > 0.5) {\n            q.yx *= mix(1.0, 0.5, 1.0 - exp(-sq));\n        }\n        \n        float a = seedPhase.x;\n        float d = seedPhase.y;\n        \n        for (int j = 2; j < 13; j++) {\n            if (j >= turbIter) break;\n            float fj = float(j);\n            // When looping, use circular time. Otherwise original t.\n            float t1 = mix(t * u_speed, tA, looping);\n            float t2 = mix(t * u_speed, tB, looping);\n            q += u_turbAmp * sin(q.yx / freq * fj + t1 + vec2(a, d) + seedOffset.xy * fj) / fj;\n            a += cos(fj + d * 1.2 + q.x * 2.0 - t1 + seedOffset2.z + t2 * 0.3 * looping);\n            d += sin(fj * q.y + a + seedOffset.z + t1 + seedOffset2.y + t2 * 0.3 * looping);\n        }\n        \n        float v = 0.5 + 0.5 * sin(length(q.yx + vec2(a, d) * 0.2) * u_waveFreq + i * i + seedOffset.x);\n        float weight = smoothstep(0.0, 0.5, eph) * smoothstep(1.0, 0.5, eph);\n        totalVal += v * weight;\n        totalWeight += weight;\n    }\n    \n    float val = totalVal / totalWeight;\n    val = clamp((val - 0.3) / 0.4, 0.0, 1.0);\n    val = pow(val, exp(-u_distBias));\n    val = clamp(val + (dither - 0.5) * u_dither, 0.0, 1.0);\n    \n    vec3 col = paletteN(val, colorCount);\n    col *= u_exposure;\n    col = applyContrastSaturation(col, u_contrast, u_saturation);\n    col = softGamutMap(col);\n    col = toSrgb(col);\n    \n    fragColor = vec4(col, 1.0);\n}\n`,propertyControls:{colors:{type:ControlType.Array,title:\"Colors\",control:{type:ControlType.Color},maxCount:8,defaultValue:[\"#00001A\",\"#2962FF\",\"#40BCFF\",\"#FFB8B5\",\"#FFC14F\"]},seed:{type:ControlType.Number,title:\"Seed\",defaultValue:648,min:0,max:1e3,step:1},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:.3,min:0,max:2,step:.01},loop:{type:ControlType.Number,title:\"Loop\",defaultValue:0,min:0,max:60,step:.5,hiddenWhenUnset:true,displayStepper:true},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:.42,min:.1,max:2,step:.01},turbAmp:{type:ControlType.Number,title:\"Amplitude\",defaultValue:.6,min:0,max:1,step:.01},turbFreq:{type:ControlType.Number,title:\"Frequency\",defaultValue:.1,min:.1,max:2,step:.01},turbIter:{type:ControlType.Number,title:\"Definition\",defaultValue:7,min:3,max:10,step:1,displayStepper:true},waveFreq:{type:ControlType.Number,title:\"Bands\",defaultValue:3.8,min:.1,max:5,step:.1},distBias:{type:ControlType.Number,title:\"Bias\",defaultValue:0,min:-1,max:1,step:.1,hiddenWhenUnset:true},jellify:{type:ControlType.Boolean,title:\"Jellify\",defaultValue:false,hiddenWhenUnset:true},ditherMode:{type:ControlType.Enum,title:\"Noise\",options:[0,1,2],optionTitles:[\"Off\",\"Smooth\",\"Grain\"],defaultValue:0},dither:{type:ControlType.Number,title:\"Amount\",defaultValue:.05,min:0,max:.2,step:.01,hidden:props=>props.ditherMode===0},exposure:{type:ControlType.Number,title:\"Exposure\",defaultValue:1.1,min:.5,max:2,step:.1,section:\"Filters\",displayStepper:true,hiddenWhenUnset:true},contrast:{type:ControlType.Number,title:\"Contrast\",defaultValue:1.1,min:.5,max:2,step:.1,section:\"Filters\",displayStepper:true,hiddenWhenUnset:true},saturation:{type:ControlType.Number,title:\"Saturation\",defaultValue:1,min:0,max:2,step:.1,section:\"Filters\",displayStepper:true,hiddenWhenUnset:true}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"shader\",\"name\":null,\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LiquidGradient.map","// Generated by Framer (bf89308)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,Container,cx,GeneratedComponentContext,PropertyOverrides,RenderTarget,Shader,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import shaderConfig from\"https://framerusercontent.com/modules/QEytd7xyjUsL7yuVUzSs/O7s2vxltmhiskELYwyrY/LiquidGradient.js\";const breakpoints={VguseJWol:\"(min-width: 971px)\",Y19phrYUb:\"(max-width: 970.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-FBUKW\";const variantClassNames={VguseJWol:\"framer-v-1agxnk0\",Y19phrYUb:\"framer-v-189rab7\"};const breakpointRules={Y19phrYUb:[\".framer-FBUKW .framer-1ucbvtw-container { right: unset; width: 100%; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={Y19phrYUb:\".framer-189rab7-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-FBUKW.framer-18y006a, .framer-FBUKW .framer-18y006a { display: block; }\",\".framer-FBUKW.framer-1agxnk0 { align-content: center; align-items: center; background-color: #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-FBUKW .framer-1ucbvtw-container { bottom: -1px; flex: none; left: -1px; position: absolute; right: -1px; top: -1px; z-index: 0; }\",\".framer-FBUKW .framer-1uvn1ri { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={VguseJWol:\"(min-width: 971px)\",Y19phrYUb:\"(max-width: 970.98px)\"};const humanReadableVariantMap={Desktop:\"VguseJWol\",Phone:\"Y19phrYUb\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"VguseJWol\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"VguseJWol\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(255, 255, 255); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1agxnk0\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Y19phrYUb:{style:{}}},children:/*#__PURE__*/_jsx(Container,{className:\"framer-1ucbvtw-container\",style:{rotate:-180},children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{Y19phrYUb:{fallbackImage:\"https://framerusercontent.com/images/S5hjLWiXeihfhw3M02C8B5lHhc.png?scale-down-to=782&width=1000&height=1564\",uniforms:{u_colors:{type:\"array\",value:[\"rgb(255, 255, 255)\",\"rgb(255, 255, 255)\",\"var(--token-9e79a7c5-3578-4d5e-a05f-8fffc996f312, rgb(242, 184, 128))\",\"var(--token-0d963cb5-9b78-4cea-ae29-96e6f0da1357, rgb(218, 89, 0))\",\"var(--token-9e79a7c5-3578-4d5e-a05f-8fffc996f312, rgb(242, 184, 128))\",\"rgb(255, 255, 255)\"]},u_contrast:{type:\"number\",value:1.1},u_distBias:{type:\"number\",value:-1},u_dither:{type:\"number\",value:.2},u_ditherMode:{type:\"enum\",value:2},u_exposure:{type:\"number\",value:1.1},u_jellify:{type:\"boolean\",value:false},u_loop:{type:\"number\",value:0},u_saturation:{type:\"number\",value:1},u_scale:{type:\"number\",value:1.82},u_seed:{type:\"number\",value:154},u_speed:{type:\"number\",value:.3},u_turbAmp:{type:\"number\",value:0},u_turbFreq:{type:\"number\",value:1.67},u_turbIter:{type:\"number\",value:6},u_waveFreq:{type:\"number\",value:1.8}}}},children:/*#__PURE__*/_jsx(Shader,{__fromCanvasComponent:true,fallbackImage:\"https://framerusercontent.com/images/fKslnNWJfoyUDeSqtHZCda3WEVM.png?scale-down-to=1269&width=1946&height=2538\",fragmentShader:shaderConfig.fragment,height:\"100%\",mode:\"progressive\",resolutionScale:shaderConfig.resolutionScale,skipInitialFallback:true,uniforms:{u_colors:{type:\"array\",value:[\"rgb(255, 255, 255)\",\"var(--token-9e79a7c5-3578-4d5e-a05f-8fffc996f312, rgb(242, 184, 128))\",\"var(--token-0d963cb5-9b78-4cea-ae29-96e6f0da1357, rgb(218, 89, 0))\",\"var(--token-9e79a7c5-3578-4d5e-a05f-8fffc996f312, rgb(242, 184, 128))\",\"rgb(255, 255, 255)\"]},u_contrast:{type:\"number\",value:1.1},u_distBias:{type:\"number\",value:-1},u_dither:{type:\"number\",value:.2},u_ditherMode:{type:\"enum\",value:2},u_exposure:{type:\"number\",value:1.1},u_jellify:{type:\"boolean\",value:false},u_loop:{type:\"number\",value:0},u_saturation:{type:\"number\",value:1},u_scale:{type:\"number\",value:1.32},u_seed:{type:\"number\",value:154},u_speed:{type:\"number\",value:.3},u_turbAmp:{type:\"number\",value:0},u_turbFreq:{type:\"number\",value:1.67},u_turbIter:{type:\"number\",value:6},u_waveFreq:{type:\"number\",value:2}},vertexShader:shaderConfig.vertex,width:\"100%\"})})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1uvn1ri\"})]}),/*#__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 780\n * @framerIntrinsicWidth 971\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"Y19phrYUb\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"VguseJWol\":[\".framer-1ucbvtw-container\"],\"Y19phrYUb\":[\".framer-1ucbvtw-container\"]}\n * @framerBreakpoints {\"VguseJWol\":{\"min\":971,\"canvasClassName\":\"framer-1agxnk0-override\",\"minHeight\":780,\"viewportHeight\":552,\"name\":\"Desktop\",\"width\":971,\"rootFontSize\":16},\"Y19phrYUb\":{\"max\":970,\"canvasClassName\":\"framer-189rab7-override\",\"minHeight\":780,\"viewportHeight\":871,\"name\":\"Phone\",\"width\":500,\"rootFontSize\":16}}\n * @framerDefaultVariant VguseJWol\n * @framerLayoutTemplate true\n */const FramerIFm0qfXre=withCSS(Component,css,\"framer-FBUKW\");export default FramerIFm0qfXre;FramerIFm0qfXre.displayName=\"Background\";FramerIFm0qfXre.defaultProps={height:780,width:971};addFonts(FramerIFm0qfXre,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerIFm0qfXre\",\"slots\":[],\"annotations\":{\"framerDefaultVariant\":\"VguseJWol\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerBreakpoints\":\"{\\\"VguseJWol\\\":{\\\"min\\\":971,\\\"canvasClassName\\\":\\\"framer-1agxnk0-override\\\",\\\"minHeight\\\":780,\\\"viewportHeight\\\":552,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":971,\\\"rootFontSize\\\":16},\\\"Y19phrYUb\\\":{\\\"max\\\":970,\\\"canvasClassName\\\":\\\"framer-189rab7-override\\\",\\\"minHeight\\\":780,\\\"viewportHeight\\\":871,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":500,\\\"rootFontSize\\\":16}}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Y19phrYUb\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerLayoutTemplate\":\"true\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"971\",\"framerContractVersion\":\"1\",\"framerHitTargets\":\"{\\\"VguseJWol\\\":[\\\".framer-1ucbvtw-container\\\"],\\\"Y19phrYUb\\\":[\\\".framer-1ucbvtw-container\\\"]}\",\"framerIntrinsicHeight\":\"780\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (bf89308)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,Container,cx,GeneratedComponentContext,PropertyOverrides,RenderTarget,Shader,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import shaderConfig from\"https://framerusercontent.com/modules/QEytd7xyjUsL7yuVUzSs/O7s2vxltmhiskELYwyrY/LiquidGradient.js\";const breakpoints={AjmIYnoti:\"(max-width: 499.98px)\",CR4zfrRpS:\"(min-width: 500px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-QS8pa\";const variantClassNames={AjmIYnoti:\"framer-v-szjs31\",CR4zfrRpS:\"framer-v-1tphz0y\"};const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-QS8pa.framer-1gbdxbt, .framer-QS8pa .framer-1gbdxbt { display: block; }\",\".framer-QS8pa.framer-1tphz0y { align-content: center; align-items: center; background-color: #000000; 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-QS8pa .framer-1kypguw-container { flex: none; height: 100%; left: calc(50.00000000000002% - 100% / 2); position: absolute; top: -1px; width: 100%; z-index: 0; }\",\".framer-QS8pa .framer-1ucqnp9 { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={AjmIYnoti:\"(max-width: 499.98px)\",CR4zfrRpS:\"(min-width: 500px)\"};const humanReadableVariantMap={Desktop:\"CR4zfrRpS\",Phone:\"AjmIYnoti\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"CR4zfrRpS\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"CR4zfrRpS\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(0, 0, 0); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1tphz0y\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(Container,{className:\"framer-1kypguw-container\",style:{rotate:-180},children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{AjmIYnoti:{fallbackImage:\"https://framerusercontent.com/images/1ehF17c34v3V7gAimsS5wKA2wY.png?scale-down-to=999&width=1000&height=1998\"}},children:/*#__PURE__*/_jsx(Shader,{__fromCanvasComponent:true,fallbackImage:\"https://framerusercontent.com/images/EpFfSrLfBPCPeAZLF6b3QT3tKcY.png?scale-down-to=667&width=1000&height=1334\",fragmentShader:shaderConfig.fragment,height:\"100%\",mode:\"progressive\",resolutionScale:shaderConfig.resolutionScale,skipInitialFallback:true,uniforms:{u_colors:{type:\"array\",value:[\"rgb(0, 0, 0)\",\"var(--token-0d963cb5-9b78-4cea-ae29-96e6f0da1357, rgb(218, 89, 0))\",\"rgb(0, 0, 0)\",\"rgb(0, 0, 0)\"]},u_contrast:{type:\"number\",value:1.1},u_distBias:{type:\"number\",value:.1},u_dither:{type:\"number\",value:.2},u_ditherMode:{type:\"enum\",value:2},u_exposure:{type:\"number\",value:1.1},u_jellify:{type:\"boolean\",value:false},u_loop:{type:\"number\",value:0},u_saturation:{type:\"number\",value:1},u_scale:{type:\"number\",value:1.35},u_seed:{type:\"number\",value:387},u_speed:{type:\"number\",value:.3},u_turbAmp:{type:\"number\",value:0},u_turbFreq:{type:\"number\",value:1.67},u_turbIter:{type:\"number\",value:5},u_waveFreq:{type:\"number\",value:2.1}},vertexShader:shaderConfig.vertex,width:\"100%\"})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1ucqnp9\"})]}),/*#__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=breakpointRules[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 668\n * @framerIntrinsicWidth 500\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"AjmIYnoti\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"CR4zfrRpS\":[\".framer-1kypguw-container\"],\"AjmIYnoti\":[\".framer-1kypguw-container\"]}\n * @framerBreakpoints {\"CR4zfrRpS\":{\"min\":500,\"canvasClassName\":\"framer-1tphz0y-override\",\"minHeight\":668,\"viewportHeight\":552,\"name\":\"Desktop\",\"width\":500,\"rootFontSize\":16},\"AjmIYnoti\":{\"max\":499,\"canvasClassName\":\"framer-szjs31-override\",\"minHeight\":668,\"viewportHeight\":871,\"name\":\"Phone\",\"width\":500,\"rootFontSize\":16}}\n * @framerDefaultVariant CR4zfrRpS\n * @framerLayoutTemplate true\n */const Framerf1HEOcmyE=withCSS(Component,css,\"framer-QS8pa\");export default Framerf1HEOcmyE;Framerf1HEOcmyE.displayName=\"Background Black\";Framerf1HEOcmyE.defaultProps={height:668,width:500};addFonts(Framerf1HEOcmyE,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerf1HEOcmyE\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"668\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerDefaultVariant\":\"CR4zfrRpS\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"AjmIYnoti\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerBreakpoints\":\"{\\\"CR4zfrRpS\\\":{\\\"min\\\":500,\\\"canvasClassName\\\":\\\"framer-1tphz0y-override\\\",\\\"minHeight\\\":668,\\\"viewportHeight\\\":552,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":500,\\\"rootFontSize\\\":16},\\\"AjmIYnoti\\\":{\\\"max\\\":499,\\\"canvasClassName\\\":\\\"framer-szjs31-override\\\",\\\"minHeight\\\":668,\\\"viewportHeight\\\":871,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":500,\\\"rootFontSize\\\":16}}\",\"framerAutoSizeImages\":\"true\",\"framerColorSyntax\":\"true\",\"framerLayoutTemplate\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"500\",\"framerImmutableVariables\":\"true\",\"framerHitTargets\":\"{\\\"CR4zfrRpS\\\":[\\\".framer-1kypguw-container\\\"],\\\"AjmIYnoti\\\":[\\\".framer-1kypguw-container\\\"]}\"}},\"__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 Background from \"https://framerusercontent.com/modules/erdO61s66NnEDJutvWK6/7ilX613BCeD0VW11fiPv/IFm0qfXre.js\";\r\nimport BackgroundBlack from \"https://framerusercontent.com/modules/RJfElKSFBuTy61gwApZz/g4XtIvs2ujCaJf2MUcCc/f1HEOcmyE.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/bxzffKXjHIIUCgd0piZE/ofpRPqp6C0Xx7L1owg0U/augiA20Il.js\")), path: \"/\"}, BnCnltg69: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ALwwtnXqk9lRRet2HEc6/jufFslJr3oQNExt5FtAT/BnCnltg69.js\")), path: \"/team\"}, u5TnJMe5j: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/wx8sQhm92joXBKjr9Mpw/4dNPLATLpLLFFjKMKcEf/u5TnJMe5j.js\")), path: \"/tjenester\"}, V1I61r5Di: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/OxbSNhJ9hWqchHW28EbQ/zhZWIijc8iqYvepOagSN/V1I61r5Di.js\")), path: \"/kontakt\"}}\r\n\r\n\t\tconst locales = [{code: \"nb-NO\", id: \"default\", name: \"Norwegian Bokmål\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {}\r\n\t\tconst framerSiteId = \"20f7ae3c6fb57069228a2852dc6569549f314173d12de56d2a30d4d3cbd04f07\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"TtTVFm_km\":\r\ncase \"BnCnltg69\":\r\ncase \"u5TnJMe5j\":\r\ncase \"QvB_RPfbg\":\r\nreturn React.createElement(Background, {...props, key: \"Background\", style}, children(true));\r\ncase \"V1I61r5Di\":\r\nreturn React.createElement(BackgroundBlack, {...props, key: \"BackgroundBlack\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"TtTVFm_km\":\r\ncase \"BnCnltg69\":\r\ncase \"u5TnJMe5j\":\r\ncase \"QvB_RPfbg\":\r\nreturn [{hash: \"189rab7\", mediaQuery: \"(max-width: 970.98px)\"}, {hash: \"1agxnk0\", mediaQuery: \"(min-width: 971px)\"}]\r\ncase \"V1I61r5Di\":\r\nreturn [{hash: \"szjs31\", mediaQuery: \"(max-width: 499.98px)\"}, {hash: \"1tphz0y\", mediaQuery: \"(min-width: 500px)\"}]\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(\"__framer-not-found-page\")),\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://www.multeconsulting.no\",\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/Q74MFx2K23ViC3DeZN0e/xAAkGd02j0ebN0yhJdxb/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: {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"],"mappings":"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"}