PageSourceSearch

https://extra.email/framer-assets/scripts/shared-lib.DZoO7YJD.mjs

js extra.email collected 2026-10-02 14:36:11 UTC 148,033 bytes, 5,055 lines download raw bytes

1import {
2	V as A,
3	M as D,
4	E,
5	mt as F,
6	n as I,
7	q as L,
8	b as M,
9	it as N,
10	O,
11	j as P,
12	r as R,
13	D as T,
14	ft as ae,
15	t as ce,
16	x as de,
17	xt as fe,
18	f as ie,
19	a as j,
20	St as k,
21	u as le,
22	U as ne,
23	h as oe,
24	z as pe,
25	at as re,
26	o as se,
27	ut as ue,
28	w as z,
29} from "./framer.CQopxS91.mjs"
30import {
31	a as C,
32	S,
33	r as ee,
34	t as te,
35	b as w,
36	N as x,
37} from "./motion.DT060rEt.mjs"
38import {
39	o as _,
40	L as a,
41	v as b,
42	P as c,
43	f as d,
44	g as f,
45	l as g,
46	k as h,
47	I as i,
48	R as l,
49	j as m,
50	C as n,
51	M as o,
52	h as p,
53	D as r,
54	N as s,
55	A as t,
56	c as u,
57	s as v,
58	u as y,
59} from "./react.jtNr-zv7.mjs"
60import { t as e } from "./rolldown-runtime.JmBsHQ-a.mjs"
61function me({
62	radius: e = 30,
63	distortion: n = 50,
64	frost: r = 0.05,
65	chromatic: i = !0,
66}) {
67	const a = `lg-${b().replace(/:/g, ``)}`,
68		o = -(n * 3),
69		s = 0.7,
70		c = 1.5,
71		l = 1.1,
72		d = t(() => {
73			const t = 0.07 * 0.5 * 80,
74				n = `<svg viewBox="0 0 200 80" xmlns="http://www.w3.org/2000/svg">
75      <defs>
76        <linearGradient id="r" x1="100%" y1="0%" x2="0%" y2="0%">
77          <stop offset="0%" stop-color="#000"/>
78          <stop offset="100%" stop-color="red"/>
79        </linearGradient>
80        <linearGradient id="b" x1="0%" y1="0%" x2="0%" y2="100%">
81          <stop offset="0%" stop-color="#000"/>
82          <stop offset="100%" stop-color="blue"/>
83        </linearGradient>
84      </defs>
85      <rect x="0" y="0" width="200" height="80" fill="black"/>
86      <rect x="0" y="0" width="200" height="80" rx="${e}" fill="url(#r)"/>
87      <rect x="0" y="0" width="200" height="80" rx="${e}" fill="url(#b)" style="mix-blend-mode:difference"/>
88      <rect x="${t}" y="${t}" width="${200 - t * 2}" height="${80 - t * 2}" rx="${e}" fill="hsl(0 0% 50% / 0.93)" style="filter:blur(11px)"/>
89    </svg>`
90			return `data:image/svg+xml,${encodeURIComponent(n)}`
91		}, [e])
92	return g(v, {
93		children: [
94			u(`svg`, {
95				xmlns: `http://www.w3.org/2000/svg`,
96				width: `0`,
97				height: `0`,
98				style: { position: `absolute`, pointerEvents: `none` },
99				children: u(`defs`, {
100					children: t(
101						() =>
102							i
103								? g(`filter`, {
104										id: a,
105										colorInterpolationFilters: `sRGB`,
106										x: `0`,
107										y: `0`,
108										width: `100%`,
109										height: `100%`,
110										children: [
111											u(`feImage`, {
112												x: `0`,
113												y: `0`,
114												width: `100%`,
115												height: `100%`,
116												href: d,
117												result: `map`,
118											}),
119											u(`feDisplacementMap`, {
120												in: `SourceGraphic`,
121												in2: `map`,
122												xChannelSelector: `R`,
123												yChannelSelector: `G`,
124												scale: o,
125												result: `dispRed`,
126											}),
127											u(`feColorMatrix`, {
128												in: `dispRed`,
129												type: `matrix`,
130												values: `1 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 1 0`,
131												result: `red`,
132											}),
133											u(`feDisplacementMap`, {
134												in: `SourceGraphic`,
135												in2: `map`,
136												xChannelSelector: `R`,
137												yChannelSelector: `G`,
138												scale: o + 10,
139												result: `dispGreen`,
140											}),
141											u(`feColorMatrix`, {
142												in: `dispGreen`,
143												type: `matrix`,
144												values: `0 0 0 0 0  0 1 0 0 0  0 0 0 0 0  0 0 0 1 0`,
145												result: `green`,
146											}),
147											u(`feDisplacementMap`, {
148												in: `SourceGraphic`,
149												in2: `map`,
150												xChannelSelector: `R`,
151												yChannelSelector: `G`,
152												scale: o + 20,
153												result: `dispBlue`,
154											}),
155											u(`feColorMatrix`, {
156												in: `dispBlue`,
157												type: `matrix`,
158												values: `0 0 0 0 0  0 0 0 0 0  0 0 1 0 0  0 0 0 1 0`,
159												result: `blue`,
160											}),
161											u(`feBlend`, {
162												in: `red`,
163												in2: `green`,
164												mode: `screen`,
165												result: `rg`,
166											}),
167											u(`feBlend`, {
168												in: `rg`,
169												in2: `blue`,
170												mode: `screen`,
171												result: `output`,
172											}),
173											u(`feGaussianBlur`, { in: `output`, stdDeviation: s }),
174										],
175									})
176								: g(`filter`, {
177										id: a,
178										colorInterpolationFilters: `sRGB`,
179										x: `0`,
180										y: `0`,
181										width: `100%`,
182										height: `100%`,
183										children: [
184											u(`feImage`, {
185												x: `0`,
186												y: `0`,
187												width: `100%`,
188												height: `100%`,
189												href: d,
190												result: `map`,
191											}),
192											u(`feDisplacementMap`, {
193												in: `SourceGraphic`,
194												in2: `map`,
195												xChannelSelector: `R`,
196												yChannelSelector: `G`,
197												scale: o,
198											}),
199											u(`feGaussianBlur`, { stdDeviation: s }),
200										],
201									}),
202						[a, d, o, i],
203					),
204				}),
205			}),
206			u(`div`, {
207				style: {
208					width: `100%`,
209					height: `100%`,
210					borderRadius: e,
211					overflow: `hidden`,
212					display: `flex`,
213					alignItems: `center`,
214					justifyContent: `center`,
215					backdropFilter: `url(#${a}) brightness(${l}) saturate(${c})`,
216					WebkitBackdropFilter: `blur(12px) brightness(${l}) saturate(${c})`,
217					background: `hsl(0 0% 100% / ${r})`,
218					boxShadow: `
219                        0 0 2px 1px hsl(0 0% 50% / 0.15) inset,
220                        0 0 10px 4px hsl(0 0% 50% / 0.1) inset,
221                        0 4px 16px hsl(0 0% 10% / 0.05),
222                        0 8px 24px hsl(0 0% 10% / 0.05)
223                    `,
224				},
225			}),
226		],
227	})
228}
229var he = e(() => {
230		_(),
231			L(),
232			n(),
233			O(me, {
234				radius: {
235					type: j.Number,
236					title: `Radius`,
237					defaultValue: 30,
238					min: 0,
239					max: 100,
240					step: 1,
241				},
242				distortion: {
243					type: j.Number,
244					title: `Distortion`,
245					defaultValue: 50,
246					min: 0,
247					max: 100,
248					step: 1,
249				},
250				frost: {
251					type: j.Number,
252					title: `Frost`,
253					defaultValue: 0.05,
254					min: 0,
255					max: 0.3,
256					step: 0.01,
257				},
258				chromatic: {
259					type: j.Boolean,
260					title: `Chromatic Aberration`,
261					defaultValue: !0,
262				},
263			})
264	}),
265	ge,
266	_e,
267	ve,
268	ye,
269	be,
270	xe = e(() => {
271		_(),
272			L(),
273			n(),
274			(ge = `url('data:image/svg+xml,<svg display="block" role="presentation" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M 9.166 9.166 L 9.166 11 L 11 11 M 12.833 9.166 L 14.666 9.166 M 14.666 12.833 L 12.833 12.833 L 12.833 14.666 M 9.166 14.657 L 9.166 14.667 M 11 5.5 L 12.833 5.5 C 13.846 5.499 14.666 4.678 14.666 3.666 L 14.666 1.833 C 14.666 0.821 13.846 0 12.833 0 L 11 0 C 9.987 0 9.166 0.82 9.166 1.833 L 9.166 3.666 C 9.166 4.679 9.987 5.5 11 5.5 Z M 1.833 14.666 L 3.666 14.666 C 4.679 14.666 5.5 13.846 5.5 12.833 L 5.5 11 C 5.5 9.987 4.679 9.166 3.666 9.166 L 1.833 9.166 C 1.347 9.166 0.88 9.359 0.537 9.703 C 0.193 10.047 0 10.514 0 11 L 0 12.833 C 0 13.846 0.82 14.666 1.833 14.666 Z M 1.833 5.5 L 3.666 5.5 C 4.679 5.5 5.5 4.679 5.5 3.666 L 5.5 1.833 C 5.499 0.821 4.679 0 3.666 0 L 1.833 0 C 0.82 0 0 0.82 0 1.833 L 0 3.666 C 0 4.679 0.82 5.5 1.833 5.5 Z" fill="transparent" height="14.666999588012695px" id="hvsS7Y2fU" stroke-dasharray="" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.833" stroke="var(--1btux94, rgb(0, 0, 0))" transform="translate(5 5)" width="14.666000366210959px"/></svg>') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)`),
275			(_e = f((e, t) => {
276				const { animated: n, layoutId: r, children: i, ...a } = e
277				return n
278					? u(S.div, { ...a, layoutId: r, ref: t })
279					: u(`div`, { ...a, ref: t })
280			})),
281			(ve = ({ fill: e, height: t, id: n, width: r, ...i }) => ({
282				...i,
283				qviYQoCyK: e ?? i.qviYQoCyK ?? `rgb(0, 0, 0)`,
284			})),
285			(ye = k(
286				f((e, t) => {
287					const {
288						style: n,
289						className: r,
290						layoutId: i,
291						variant: a,
292						qviYQoCyK: o,
293						...s
294					} = ve(e)
295					return u(_e, {
296						...s,
297						className: P(`framer-sj6pw`, r),
298						layoutId: i,
299						ref: t,
300						style: { "--1btux94": o, ...n },
301					})
302				}),
303				[
304					`.framer-sj6pw { -webkit-mask: ${ge}; aspect-ratio: 1; background-color: var(--1btux94); mask: ${ge}; width: 24px; }`,
305				],
306				`framer-sj6pw`,
307			)),
308			(ye.displayName = `QR`),
309			(be = ye),
310			O(ye, {
311				qviYQoCyK: {
312					defaultValue: `rgb(0, 0, 0)`,
313					hidden: !1,
314					title: `Fill`,
315					type: j.Color,
316				},
317			})
318	})
319function Se(e, ...t) {
320	const n = {}
321	return t?.forEach((t) => t && Object.assign(n, e[t])), n
322}
323var Ce,
324	we,
325	Te,
326	Ee,
327	De,
328	Oe,
329	ke,
330	Ae,
331	je,
332	Me,
333	Ne,
334	Pe,
335	B,
336	Fe,
337	Ie = e(() => {
338		_(),
339			L(),
340			te(),
341			n(),
342			he(),
343			xe(),
344			(Ce = pe(me)),
345			(we = {
346				aGYDLY2H7: { hover: !0 },
347				CDmiJb3pz: { hover: !0 },
348				DMbHKcgQS: { hover: !0 },
349				Nffp42wKw: { hover: !0 },
350				th7a5cpM5: { hover: !0 },
351				xuyliUwyU: { hover: !0 },
352			}),
353			(Te = [
354				`DMbHKcgQS`,
355				`Nffp42wKw`,
356				`aGYDLY2H7`,
357				`th7a5cpM5`,
358				`CDmiJb3pz`,
359				`xuyliUwyU`,
360			]),
361			(Ee = `framer-k61hT`),
362			(De = {
363				aGYDLY2H7: `framer-v-1k2reya`,
364				CDmiJb3pz: `framer-v-1p959ci`,
365				DMbHKcgQS: `framer-v-g0vhc9`,
366				Nffp42wKw: `framer-v-1ooo8px`,
367				th7a5cpM5: `framer-v-1ai8ylj`,
368				xuyliUwyU: `framer-v-1rq1i0z`,
369			}),
370			(Oe = (e) => {
371				if (typeof e != `number`) return e
372				if (Number.isFinite(e)) return Math.max(0, e) + `px`
373			}),
374			(ke = {
375				delay: 0,
376				duration: 0.2,
377				ease: [0.12, 0.23, 0.5, 1],
378				type: `tween`,
379			}),
380			(Ae = ({ value: e, children: n }) => {
381				const r = h(C),
382					i = e ?? r.transition,
383					a = t(() => ({ ...r, transition: i }), [JSON.stringify(i)])
384				return u(C.Provider, { value: a, children: n })
385			}),
386			(je = {
387				"Dark w/o Icon": `CDmiJb3pz`,
388				"Transparent 50 w/Icon": `xuyliUwyU`,
389				"Transparent w/Icon": `Nffp42wKw`,
390				"Transparent w/o Icon": `aGYDLY2H7`,
391				"White w/ Icon": `DMbHKcgQS`,
392				"White w/o Icon": `th7a5cpM5`,
393			}),
394			(Me = S.create(s)),
395			(Ne = ({
396				click: e,
397				height: t,
398				icon: n,
399				id: r,
400				link: i,
401				padding: a,
402				title: o,
403				width: s,
404				...c
405			}) => ({
406				...c,
407				Dsu2AqL4z: a ?? c.Dsu2AqL4z ?? `12px 20px 12px 20px`,
408				LfCAZ8mam: n ?? c.LfCAZ8mam ?? be,
409				tLuskqcgA: i ?? c.tLuskqcgA,
410				UMF3qeFCK: o ?? c.UMF3qeFCK ?? `Get the app`,
411				variant: je[c.variant] ?? c.variant ?? `DMbHKcgQS`,
412				yKKheYUY3: e ?? c.yKKheYUY3,
413			})),
414			(Pe = (e, t) =>
415				e.layoutDependency ? t.join(`-`) + e.layoutDependency : t.join(`-`)),
416			(B = k(
417				f((e, t) => {
418					const n = r(null),
419						i = t ?? n,
420						a = b(),
421						{ activeLocale: o, setLocale: c } = ae()
422					re()
423					const {
424							style: l,
425							className: d,
426							layoutId: f,
427							variant: p,
428							tLuskqcgA: m,
429							UMF3qeFCK: h,
430							Dsu2AqL4z: _,
431							LfCAZ8mam: v,
432							yKKheYUY3: y,
433							...x
434						} = Ne(e),
435						{
436							baseVariant: C,
437							classNames: w,
438							clearLoadingGesture: te,
439							gestureHandlers: T,
440							gestureVariant: D,
441							isLoading: O,
442							setGestureState: k,
443							setVariant: ne,
444							variants: A,
445						} = fe({
446							cycleOrder: Te,
447							defaultVariant: `DMbHKcgQS`,
448							enabledGestures: we,
449							ref: i,
450							variant: p,
451							variantClassNames: De,
452						}),
453						j = Pe(e, A),
454						{ activeVariantCallback: M, delay: F } = N(C),
455						I = M(async (...e) => {
456							if ((k({ isPressed: !1 }), y && (await y(...e)) === !1)) return !1
457						}),
458						se = P(Ee),
459						L = () =>
460							!(
461								[
462									`aGYDLY2H7-hover`,
463									`th7a5cpM5-hover`,
464									`CDmiJb3pz-hover`,
465								].includes(D) ||
466								[`aGYDLY2H7`, `th7a5cpM5`, `CDmiJb3pz`].includes(C)
467							),
468						ce = () =>
469							!!(
470								[
471									`Nffp42wKw-hover`,
472									`aGYDLY2H7-hover`,
473									`xuyliUwyU-hover`,
474								].includes(D) ||
475								[`Nffp42wKw`, `aGYDLY2H7`, `xuyliUwyU`].includes(C)
476							)
477					return u(ee, {
478						id: f ?? a,
479						children: u(Me, {
480							animate: A,
481							initial: !1,
482							children: u(Ae, {
483								value: ke,
484								children: u(oe, {
485									href: m,
486									motionChild: !0,
487									nodeId: `DMbHKcgQS`,
488									openInNewTab: !1,
489									scopeId: `chuLZPrm5`,
490									children: g(S.a, {
491										...x,
492										...T,
493										className: `${P(se, `framer-g0vhc9`, d, w)} framer-p7s1vq`,
494										"data-framer-name": `White w/ Icon`,
495										"data-highlight": !0,
496										layoutDependency: j,
497										layoutId: `DMbHKcgQS`,
498										onTap: I,
499										ref: i,
500										style: {
501											"--1pbymw4": Oe(_),
502											backdropFilter: `blur(20px)`,
503											backgroundColor: `rgba(255, 255, 255, 0.95)`,
504											borderBottomLeftRadius: 50,
505											borderBottomRightRadius: 50,
506											borderTopLeftRadius: 50,
507											borderTopRightRadius: 50,
508											boxShadow: `none`,
509											filter: `brightness(1)`,
510											rotate: 360,
511											WebkitBackdropFilter: `blur(20px)`,
512											WebkitFilter: `brightness(1)`,
513											...l,
514										},
515										variants: {
516											"aGYDLY2H7-hover": {
517												backgroundColor: `rgba(255, 255, 255, 0.03)`,
518											},
519											"CDmiJb3pz-hover": {
520												boxShadow: `inset 0px 0px 16px 0px rgba(255, 255, 255, 0.25)`,
521											},
522											"DMbHKcgQS-hover": {
523												backgroundColor: `rgb(255, 255, 255)`,
524												boxShadow: `none`,
525												filter: `brightness(1.2)`,
526												WebkitFilter: `brightness(1.2)`,
527											},
528											"Nffp42wKw-hover": {
529												backgroundColor: `rgba(255, 255, 255, 0.03)`,
530												boxShadow: `inset 0px 1px 12px 0px rgba(255, 255, 255, 0.3)`,
531											},
532											"th7a5cpM5-hover": {
533												backgroundColor: `rgb(255, 255, 255)`,
534											},
535											"xuyliUwyU-hover": {
536												backgroundColor: `rgba(255, 255, 255, 0.1)`,
537											},
538											aGYDLY2H7: {
539												backgroundColor: `rgba(255, 255, 255, 0)`,
540												boxShadow: `inset 0px 1px 10px 0px rgba(255, 255, 255, 0.2)`,
541											},
542											CDmiJb3pz: {
543												backgroundColor: `rgba(22, 15, 41, 0.95)`,
544												boxShadow: `inset 0px 0px 10px 0px rgba(255, 255, 255, 0.25)`,
545											},
546											Nffp42wKw: {
547												backgroundColor: `rgba(255, 255, 255, 0)`,
548												boxShadow: `inset 0px 1px 10px 0px rgba(255, 255, 255, 0.2)`,
549											},
550											th7a5cpM5: { boxShadow: `none` },
551											xuyliUwyU: {
552												backgroundColor: `rgba(255, 255, 255, 0.08)`,
553												boxShadow: `inset 0px 1px 10px 0px rgba(255, 255, 255, 0.2)`,
554											},
555										},
556										...Se(
557											{
558												"aGYDLY2H7-hover": { "data-framer-name": void 0 },
559												"CDmiJb3pz-hover": { "data-framer-name": void 0 },
560												"DMbHKcgQS-hover": { "data-framer-name": void 0 },
561												"Nffp42wKw-hover": { "data-framer-name": void 0 },
562												"th7a5cpM5-hover": { "data-framer-name": void 0 },
563												"xuyliUwyU-hover": { "data-framer-name": void 0 },
564												aGYDLY2H7: {
565													"data-framer-name": `Transparent w/o Icon`,
566												},
567												CDmiJb3pz: { "data-framer-name": `Dark w/o Icon` },
568												Nffp42wKw: { "data-framer-name": `Transparent w/Icon` },
569												th7a5cpM5: { "data-framer-name": `White w/o Icon` },
570												xuyliUwyU: {
571													"data-framer-name": `Transparent 50 w/Icon`,
572												},
573											},
574											C,
575											D,
576										),
577										children: [
578											L() &&
579												u(ie, {
580													animated: !0,
581													className: `framer-1kxzoov`,
582													Component: v,
583													layoutDependency: j,
584													layoutId: `IEG9ZQBX5`,
585													style: { "--1btux94": `rgb(0, 0, 0)` },
586													variants: {
587														Nffp42wKw: { "--1btux94": `rgb(255, 255, 255)` },
588														xuyliUwyU: { "--1btux94": `rgb(255, 255, 255)` },
589													},
590												}),
591											ce() &&
592												u(R, {
593													children: u(E, {
594														className: `framer-1wxi83k-container`,
595														isAuthoredByUser: !0,
596														layoutDependency: j,
597														layoutId: `dLJ_L9jhP-container`,
598														nodeId: `dLJ_L9jhP`,
599														rendersWithMotion: !0,
600														scopeId: `chuLZPrm5`,
601														children: u(me, {
602															chromatic: !1,
603															distortion: 0,
604															frost: 0.1,
605															height: `100%`,
606															id: `dLJ_L9jhP`,
607															layoutId: `dLJ_L9jhP`,
608															radius: 100,
609															style: { height: `100%`, width: `100%` },
610															width: `100%`,
611															...Se({ aGYDLY2H7: { radius: 63 } }, C, D),
612														}),
613													}),
614												}),
615											u(z, {
616												__fromCanvasComponent: !0,
617												children: u(s, {
618													children: u(S.p, {
619														dir: `auto`,
620														style: {
621															"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
622															"--framer-font-size": `17px`,
623															"--framer-font-weight": `600`,
624															"--framer-letter-spacing": `-0.01em`,
625														},
626														children: `Get the app`,
627													}),
628												}),
629												className: `framer-s98q8e`,
630												fonts: [`Inter-SemiBold`],
631												layoutDependency: j,
632												layoutId: `BowWKUiVN`,
633												style: {
634													"--framer-link-text-color": `rgb(0, 153, 255)`,
635													"--framer-link-text-decoration": `underline`,
636												},
637												text: h,
638												variants: {
639													"CDmiJb3pz-hover": {
640														"--extracted-r6o4lv": `rgb(255, 255, 255)`,
641													},
642													aGYDLY2H7: {
643														"--extracted-r6o4lv": `rgb(255, 255, 255)`,
644													},
645													CDmiJb3pz: {
646														"--extracted-r6o4lv": `rgba(255, 255, 255, 0.9)`,
647													},
648													Nffp42wKw: {
649														"--extracted-r6o4lv": `rgb(255, 255, 255)`,
650													},
651													xuyliUwyU: {
652														"--extracted-r6o4lv": `rgb(255, 255, 255)`,
653													},
654												},
655												verticalAlignment: `top`,
656												withExternalLayout: !0,
657												...Se(
658													{
659														"CDmiJb3pz-hover": {
660															children: u(s, {
661																children: u(S.p, {
662																	dir: `auto`,
663																	style: {
664																		"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
665																		"--framer-font-size": `17px`,
666																		"--framer-font-weight": `600`,
667																		"--framer-letter-spacing": `-0.01em`,
668																		"--framer-text-color": `var(--extracted-r6o4lv, rgb(255, 255, 255))`,
669																	},
670																	children: `Get the app`,
671																}),
672															}),
673														},
674														aGYDLY2H7: {
675															children: u(s, {
676																children: u(S.p, {
677																	dir: `auto`,
678																	style: {
679																		"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
680																		"--framer-font-size": `17px`,
681																		"--framer-font-weight": `600`,
682																		"--framer-letter-spacing": `-0.01em`,
683																		"--framer-text-color": `var(--extracted-r6o4lv, rgb(255, 255, 255))`,
684																	},
685																	children: `Get the app`,
686																}),
687															}),
688														},
689														CDmiJb3pz: {
690															children: u(s, {
691																children: u(S.p, {
692																	dir: `auto`,
693																	style: {
694																		"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
695																		"--framer-font-size": `17px`,
696																		"--framer-font-weight": `600`,
697																		"--framer-letter-spacing": `-0.01em`,
698																		"--framer-text-color": `var(--extracted-r6o4lv, rgba(255, 255, 255, 0.9))`,
699																	},
700																	children: `Get the app`,
701																}),
702															}),
703														},
704														Nffp42wKw: {
705															children: u(s, {
706																children: u(S.p, {
707																	dir: `auto`,
708																	style: {
709																		"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
710																		"--framer-font-size": `17px`,
711																		"--framer-font-weight": `600`,
712																		"--framer-letter-spacing": `-0.01em`,
713																		"--framer-text-color": `var(--extracted-r6o4lv, rgb(255, 255, 255))`,
714																	},
715																	children: `Get the app`,
716																}),
717															}),
718														},
719														xuyliUwyU: {
720															children: u(s, {
721																children: u(S.p, {
722																	dir: `auto`,
723																	style: {
724																		"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
725																		"--framer-font-size": `17px`,
726																		"--framer-font-weight": `600`,
727																		"--framer-letter-spacing": `-0.01em`,
728																		"--framer-text-color": `var(--extracted-r6o4lv, rgb(255, 255, 255))`,
729																	},
730																	children: `Get the app`,
731																}),
732															}),
733														},
734													},
735													C,
736													D,
737												),
738											}),
739										],
740									}),
741								}),
742							}),
743						}),
744					})
745				}),
746				[
747					`@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }`,
748					`.framer-k61hT.framer-p7s1vq, .framer-k61hT .framer-p7s1vq { display: block; }`,
749					`.framer-k61hT.framer-g0vhc9 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 54px; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: var(--1pbymw4); position: relative; text-decoration: none; width: min-content; will-change: var(--framer-will-change-override, transform); }`,
750					`.framer-k61hT .framer-1kxzoov { flex: none; height: var(--framer-aspect-ratio-supported, 24px); position: relative; width: 24px; }`,
751					`.framer-k61hT .framer-1wxi83k-container { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; z-index: 0; }`,
752					`.framer-k61hT .framer-s98q8e { flex: none; height: auto; position: relative; white-space: pre; width: auto; }`,
753					`.framer-k61hT.framer-v-1ooo8px .framer-1kxzoov, .framer-k61hT.framer-v-1rq1i0z .framer-1kxzoov { order: 1; }`,
754					`.framer-k61hT.framer-v-1ooo8px .framer-1wxi83k-container, .framer-k61hT.framer-v-1k2reya .framer-1wxi83k-container, .framer-k61hT.framer-v-1rq1i0z .framer-1wxi83k-container { order: 0; }`,
755					`.framer-k61hT.framer-v-1ooo8px .framer-s98q8e, .framer-k61hT.framer-v-1k2reya .framer-s98q8e, .framer-k61hT.framer-v-1rq1i0z .framer-s98q8e { order: 2; }`,
756					`.framer-k61hT.framer-v-1k2reya.framer-g0vhc9, .framer-k61hT.framer-v-1ai8ylj.framer-g0vhc9, .framer-k61hT.framer-v-1p959ci.framer-g0vhc9 { height: 46px; }`,
757				],
758				`framer-k61hT`,
759			)),
760			(Fe = B),
761			(B.displayName = `Button`),
762			(B.defaultProps = { height: 54, width: 165 }),
763			O(B, {
764				variant: {
765					options: [
766						`DMbHKcgQS`,
767						`Nffp42wKw`,
768						`aGYDLY2H7`,
769						`th7a5cpM5`,
770						`CDmiJb3pz`,
771						`xuyliUwyU`,
772					],
773					optionTitles: [
774						`White w/ Icon`,
775						`Transparent w/Icon`,
776						`Transparent w/o Icon`,
777						`White w/o Icon`,
778						`Dark w/o Icon`,
779						`Transparent 50 w/Icon`,
780					],
781					title: `Variant`,
782					type: j.Enum,
783				},
784				tLuskqcgA: { title: `Link`, type: j.Link },
785				UMF3qeFCK: {
786					defaultValue: `Get the app`,
787					displayTextArea: !1,
788					title: `Title`,
789					type: j.String,
790				},
791				onUMF3qeFCKChange: { changes: `UMF3qeFCK`, type: j.ChangeHandler },
792				Dsu2AqL4z: {
793					defaultValue: `12px 20px 12px 20px`,
794					title: `Padding`,
795					type: j.Padding,
796				},
797				LfCAZ8mam: {
798					defaultValue: {
799						identifier: `local-module:vector/VxyWH7BQN:default`,
800						moduleId: `Y9aLqt46mMYfWlzkg6ry`,
801					},
802					setModuleId: `7rJbIzkfSZYktnuWoFwV`,
803					title: `Icon`,
804					type: j.VectorSetItem,
805				},
806				yKKheYUY3: { title: `Click`, type: j.EventHandler },
807			}),
808			T(
809				B,
810				[
811					{
812						explicitInter: !0,
813						fonts: [
814							{
815								cssFamilyName: `Inter`,
816								source: `framer`,
817								style: `normal`,
818								uiFamilyName: `Inter`,
819								unicodeRange: `U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F`,
820								url: `/framer-assets/fonts/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2`,
821								weight: `600`,
822							},
823							{
824								cssFamilyName: `Inter`,
825								source: `framer`,
826								style: `normal`,
827								uiFamilyName: `Inter`,
828								unicodeRange: `U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116`,
829								url: `/framer-assets/fonts/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2`,
830								weight: `600`,
831							},
832							{
833								cssFamilyName: `Inter`,
834								source: `framer`,
835								style: `normal`,
836								uiFamilyName: `Inter`,
837								unicodeRange: `U+1F00-1FFF`,
838								url: `/framer-assets/fonts/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2`,
839								weight: `600`,
840							},
841							{
842								cssFamilyName: `Inter`,
843								source: `framer`,
844								style: `normal`,
845								uiFamilyName: `Inter`,
846								unicodeRange: `U+0370-03FF`,
847								url: `/framer-assets/fonts/lEJLP4R0yuCaMCjSXYHtJw72M.woff2`,
848								weight: `600`,
849							},
850							{
851								cssFamilyName: `Inter`,
852								source: `framer`,
853								style: `normal`,
854								uiFamilyName: `Inter`,
855								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`,
856								url: `/framer-assets/fonts/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2`,
857								weight: `600`,
858							},
859							{
860								cssFamilyName: `Inter`,
861								source: `framer`,
862								style: `normal`,
863								uiFamilyName: `Inter`,
864								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`,
865								url: `/framer-assets/fonts/yDtI2UI8XcEg1W2je9XPN3Noo.woff2`,
866								weight: `600`,
867							},
868							{
869								cssFamilyName: `Inter`,
870								source: `framer`,
871								style: `normal`,
872								uiFamilyName: `Inter`,
873								unicodeRange: `U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB`,
874								url: `/framer-assets/fonts/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2`,
875								weight: `600`,
876							},
877						],
878					},
879					...Ce,
880				],
881				{ supportsExplicitInterCodegen: !0 },
882			)
883	}),
884	Le,
885	Re,
886	ze,
887	Be = e(() => {
888		L(),
889			(Le = {
890				position: `relative`,
891				width: `100%`,
892				height: `100%`,
893				display: `flex`,
894				justifyContent: `center`,
895				alignItems: `center`,
896			}),
897			(Re = {
898				...Le,
899				borderRadius: 6,
900				background: `rgba(136, 85, 255, 0.3)`,
901				color: `#85F`,
902				border: `1px dashed #85F`,
903				flexDirection: `column`,
904			}),
905			(ze = {
906				onClick: { type: j.EventHandler },
907				onMouseEnter: { type: j.EventHandler },
908				onMouseLeave: { type: j.EventHandler },
909			}),
910			j.Number,
911			j.Boolean,
912			j.String,
913			j.Enum
914	})
915function Ve(e, t) {
916	return Ue(!0, e, t)
917}
918function He(e, t) {
919	return Ue(!1, e, t)
920}
921function Ue(e, t, n = !0) {
922	const r = ue()
923	o(() => {
924		n && r === e && t()
925	}, [r])
926}
927var We = e(() => {
928		L(), n()
929	}),
930	Ge = e(() => {
931		n()
932	}),
933	Ke = e(() => {
934		L()
935	}),
936	qe = e(() => {
937		L()
938	}),
939	Je = e(() => {
940		n()
941	}),
942	Ye = e(() => {
943		L()
944	}),
945	Xe,
946	Ze,
947	Qe = e(() => {
948		i(),
949			n(),
950			(Xe = () => {
951				if (a !== void 0) {
952					const e = a.userAgent.toLowerCase()
953					return (
954						(e.indexOf(`safari`) > -1 ||
955							e.indexOf(`framermobile`) > -1 ||
956							e.indexOf(`framerx`) > -1) &&
957						e.indexOf(`chrome`) < 0
958					)
959				} else return !1
960			}),
961			(Ze = () => t(() => Xe(), []))
962	}),
963	$e = e(() => {
964		n(), qe()
965	}),
966	et = e(() => {
967		n(), L(), qe(), Ge()
968	}),
969	tt = e(() => {
970		L(), n(), Be()
971	})
972function nt() {
973	return t(() => de.current(), [])
974}
975function rt() {
976	return t(() => de.current() === de.canvas, [])
977}
978var it = e(() => {
979		n(), L()
980	}),
981	at = e(() => {
982		n()
983	})
984function ot(e) {
985	const {
986		borderRadius: n,
987		isMixedBorderRadius: r,
988		topLeftRadius: i,
989		topRightRadius: a,
990		bottomRightRadius: o,
991		bottomLeftRadius: s,
992	} = e
993	return t(
994		() => (r ? `${i}px ${a}px ${o}px ${s}px` : `${n}px`),
995		[n, r, i, a, o, s],
996	)
997}
998var st,
999	ct = e(() => {
1000		n(),
1001			L(),
1002			(st = {
1003				borderRadius: {
1004					title: `Radius`,
1005					type: j.FusedNumber,
1006					toggleKey: `isMixedBorderRadius`,
1007					toggleTitles: [`Radius`, `Radius per corner`],
1008					valueKeys: [
1009						`topLeftRadius`,
1010						`topRightRadius`,
1011						`bottomRightRadius`,
1012						`bottomLeftRadius`,
1013					],
1014					valueLabels: [`TL`, `TR`, `BR`, `BL`],
1015					min: 0,
1016				},
1017			}),
1018			j.FusedNumber
1019	}),
1020	lt = e(() => {
1021		Be(),
1022			We(),
1023			Ge(),
1024			Ke(),
1025			qe(),
1026			Je(),
1027			Ye(),
1028			Qe(),
1029			$e(),
1030			et(),
1031			tt(),
1032			it(),
1033			at(),
1034			ct()
1035	})
1036function ut(e) {
1037	const {
1038		width: t,
1039		height: n,
1040		topLeft: r,
1041		topRight: i,
1042		bottomRight: a,
1043		bottomLeft: o,
1044		id: s,
1045		children: c,
1046		...l
1047	} = e
1048	return l
1049}
1050function dt(e) {
1051	return u(yt, { ...ut(e) })
1052}
1053function ft(e) {
1054	const t = ue(),
1055		n = r(!1),
1056		i = r(!1),
1057		a = m((t) => {
1058			if (!e.current) return
1059			const n = (t === 1 ? 0.999 : t) * e.current.duration,
1060				r = Math.abs(e.current.currentTime - n) < 0.1
1061			e.current.duration > 0 && !r && (e.current.currentTime = n)
1062		}, [])
1063	return {
1064		play: m(() => {
1065			const r = e.current
1066			r &&
1067				((r.preload = `auto`),
1068				!(
1069					r.currentTime > 0 &&
1070					r.onplaying &&
1071					!r.paused &&
1072					!r.ended &&
1073					r.readyState >= r.HAVE_CURRENT_DATA
1074				) &&
1075					r &&
1076					!n.current &&
1077					t &&
1078					((n.current = !0),
1079					(i.current = !0),
1080					r
1081						.play()
1082						.catch((e) => {})
1083						.finally(() => (n.current = !1))))
1084		}, []),
1085		pause: m(() => {
1086			!e.current || n.current || (e.current.pause(), (i.current = !1))
1087		}, []),
1088		setProgress: a,
1089		isPlaying: i,
1090	}
1091}
1092function pt({
1093	playingProp: e,
1094	muted: t,
1095	loop: n,
1096	playsinline: r,
1097	controls: i,
1098}) {
1099	const [a] = c(e),
1100		[o, s] = c(!1)
1101	e !== a && !o && s(!0)
1102	let l = a && t && n && r && !i && !o,
1103		u
1104	return (u = l ? `on-viewport` : a ? `on-mount` : `no-autoplay`), u
1105}
1106function mt(e) {
1107	return e.charAt(0).toUpperCase() + e.slice(1)
1108}
1109function ht(e) {
1110	return (e.match(/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\d+/gu) || [])
1111		.map(mt)
1112		.join(` `)
1113}
1114var gt,
1115	_t,
1116	vt,
1117	yt,
1118	bt,
1119	xt = e(() => {
1120		_(),
1121			L(),
1122			te(),
1123			lt(),
1124			n(),
1125			((e) => {
1126				;(e.Fill = `fill`),
1127					(e.Contain = `contain`),
1128					(e.Cover = `cover`),
1129					(e.None = `none`),
1130					(e.ScaleDown = `scale-down`)
1131			})((gt ||= {})),
1132			((e) => {
1133				;(e.Video = `Upload`), (e.Url = `URL`)
1134			})((_t ||= {})),
1135			(vt = `/framer-assets/videos/MLWPbW1dUQawJLhhun3dBwpgJak.mp4`),
1136			(yt = p((e) => {
1137				const {
1138						srcType: n = `URL`,
1139						srcUrl: i,
1140						srcFile: a = ``,
1141						posterEnabled: s = !1,
1142						controls: c = !1,
1143						playing: l = !0,
1144						loop: d = !0,
1145						muted: f = !0,
1146						playsinline: p = !0,
1147						restartOnEnter: m = !1,
1148						objectFit: h = `cover`,
1149						backgroundColor: g = `rgba(0,0,0,0)`,
1150						radius: _ = 0,
1151						volume: v = 25,
1152						startTime: y = 0,
1153						poster: b,
1154						playing: S,
1155						progress: C,
1156						onSeeked: ee,
1157						onPause: te,
1158						onPlay: T,
1159						onEnd: E,
1160						onClick: D,
1161						onMouseEnter: O,
1162						onMouseLeave: k,
1163						onMouseDown: ne,
1164						onMouseUp: A,
1165					} = e,
1166					j = r(),
1167					re = Ze(),
1168					M = r(null),
1169					ie = r(null),
1170					ae = rt(),
1171					oe = nt(),
1172					N = ae || oe === de.export,
1173					P = ot(e),
1174					F = N
1175						? `no-autoplay`
1176						: pt({
1177								playingProp: S,
1178								muted: f,
1179								loop: d,
1180								playsinline: p,
1181								controls: c,
1182							}),
1183					I = N ? !0 : x(j),
1184					se = N ? !1 : x(j, { margin: `10%`, once: !0 }),
1185					L = y === 100 ? 99.9 : y,
1186					{ play: R, pause: ce, setProgress: le, isPlaying: ue } = ft(j)
1187				o(() => {
1188					N || (F !== `on-viewport` && (S ? R() : ce()))
1189				}, [F, S]),
1190					o(() => {
1191						N ||
1192							(I && S && F !== `no-autoplay` && R(),
1193							F === `on-viewport` && ce())
1194					}, [F, I, S]),
1195					o(() => {
1196						!ae || b || s || L || !j.current || (j.current.currentTime = 0.01)
1197					}, [s, b, L])
1198				const z = r(!1)
1199				o(() => {
1200					if (!z.current) {
1201						z.current = !0
1202						return
1203					}
1204					le(((w(C) ? C.get() : (C ?? 0) * 0.01) ?? 0) || (L ?? 0) / 100)
1205				}, [L, a, i, C]),
1206					o(() => {
1207						if (w(C)) return C.on(`change`, (e) => le(e))
1208					}, [C]),
1209					Ve(() => {
1210						M.current !== null && j.current && ((!ie && d) || !M.current) && R()
1211					}),
1212					He(() => {
1213						j.current &&
1214							((ie.current = j.current.ended),
1215							(M.current = j.current.paused),
1216							ce())
1217					})
1218				const fe = t(() => {
1219					if (n === `URL`) return i + ``
1220					if (n === `Upload`) return a + ``
1221				}, [n, a, i, L])
1222				return (
1223					o(() => {
1224						re && j.current && F === `on-mount` && setTimeout(() => R(), 50)
1225					}, []),
1226					o(() => {
1227						j.current && !f && (j.current.volume = (v ?? 0) / 100)
1228					}, [v]),
1229					u(`video`, {
1230						onClick: D,
1231						onMouseEnter: O,
1232						onMouseLeave: k,
1233						onMouseDown: ne,
1234						onMouseUp: A,
1235						src: fe,
1236						loop: d,
1237						ref: j,
1238						onSeeked: (e) => ee?.(e),
1239						onPause: (e) => te?.(e),
1240						onPlay: (e) => T?.(e),
1241						onEnded: (e) => E?.(e),
1242						autoPlay:
1243							ue.current || F === `on-mount` || (S && F === `on-viewport` && I),
1244						preload: ue.current
1245							? `auto`
1246							: N && !b
1247								? `metadata`
1248								: F !== `on-mount` && !se
1249									? `none`
1250									: `metadata`,
1251						poster:
1252							s && !a && i === vt
1253								? `/framer-assets/images/5ILRvlYXf72kHSVHqpa3snGzjU.jpg`
1254								: s && b
1255									? b
1256									: void 0,
1257						onLoadedData: () => {
1258							const e = j.current
1259							e &&
1260								(e.currentTime < 0.3 && L > 0 && le((L ?? 0) * 0.01),
1261								(ue.current ||
1262									F === `on-mount` ||
1263									(S && F === `on-viewport` && I)) &&
1264									R())
1265						},
1266						controls: c,
1267						muted: N ? !0 : f,
1268						playsInline: p,
1269						style: {
1270							cursor: D ? `pointer` : `auto`,
1271							width: `100%`,
1272							height: `100%`,
1273							borderRadius: P,
1274							display: `block`,
1275							objectFit: h,
1276							backgroundColor: g,
1277							objectPosition: `50% 50%`,
1278						},
1279					})
1280				)
1281			})),
1282			(dt.displayName = `Video`),
1283			(bt = [`cover`, `fill`, `contain`, `scale-down`, `none`]),
1284			O(dt, {
1285				srcType: {
1286					type: j.Enum,
1287					displaySegmentedControl: !0,
1288					title: `Source`,
1289					options: [`URL`, `Upload`],
1290				},
1291				srcUrl: {
1292					type: j.String,
1293					title: `URL`,
1294					defaultValue: `/framer-assets/videos/MLWPbW1dUQawJLhhun3dBwpgJak.mp4`,
1295					hidden(e) {
1296						return e.srcType === `Upload`
1297					},
1298				},
1299				srcFile: {
1300					type: j.File,
1301					title: `File`,
1302					allowedFileTypes: [`mp4`, `webm`],
1303					description: `Only MP4 and WebM`,
1304					hidden(e) {
1305						return e.srcType === `URL`
1306					},
1307				},
1308				playing: {
1309					type: j.Boolean,
1310					title: `Playing`,
1311					enabledTitle: `Yes`,
1312					disabledTitle: `No`,
1313				},
1314				...st,
1315				posterEnabled: {
1316					type: j.Boolean,
1317					title: `Poster`,
1318					enabledTitle: `Yes`,
1319					disabledTitle: `No`,
1320				},
1321				poster: {
1322					type: j.Image,
1323					title: `Image`,
1324					hidden: ({ posterEnabled: e }) => !e,
1325					description: `We recommend adding a poster. [Learn more](https://www.framer.com/help/articles/how-are-videos-optimized-in-framer/).`,
1326				},
1327				backgroundColor: {
1328					type: j.Color,
1329					title: `Background`,
1330					defaultValue: `rgba(0,0,0,0)`,
1331				},
1332				startTime: {
1333					title: `Start Time`,
1334					type: j.Number,
1335					min: 0,
1336					max: 100,
1337					step: 0.1,
1338					unit: `%`,
1339				},
1340				loop: {
1341					type: j.Boolean,
1342					title: `Loop`,
1343					enabledTitle: `Yes`,
1344					disabledTitle: `No`,
1345				},
1346				objectFit: {
1347					type: j.Enum,
1348					title: `Fit`,
1349					options: bt,
1350					optionTitles: bt.map(ht),
1351				},
1352				controls: {
1353					type: j.Boolean,
1354					title: `Controls`,
1355					enabledTitle: `Show`,
1356					disabledTitle: `Hide`,
1357					defaultValue: !1,
1358				},
1359				muted: {
1360					type: j.Boolean,
1361					title: `Muted`,
1362					enabledTitle: `Yes`,
1363					disabledTitle: `No`,
1364				},
1365				volume: {
1366					type: j.Number,
1367					max: 100,
1368					min: 0,
1369					unit: `%`,
1370					hidden: ({ muted: e }) => e,
1371					defaultValue: 25,
1372				},
1373				onEnd: { type: j.EventHandler },
1374				onSeeked: { type: j.EventHandler },
1375				onPause: { type: j.EventHandler },
1376				onPlay: { type: j.EventHandler },
1377				...ze,
1378			})
1379	})
1380function St(e) {
1381	let t = se({ state: Object.freeze({ ...e }) }),
1382		n = (e) => {
1383			typeof e == `function` && (e = e(t.state)),
1384				(t.state = Object.freeze({ ...t.state, ...e }))
1385		},
1386		r = typeof e == `object` ? Object.freeze({ ...e }) : e,
1387		i = new Set(),
1388		a = (e) => {
1389			typeof e == `function` && (e = e(r)),
1390				(r = typeof e == `object` ? Object.freeze({ ...r, ...e }) : e),
1391				i.forEach((e) => e(r))
1392		}
1393	function s() {
1394		const [e, s] = c(r)
1395		return (
1396			o(() => (i.add(s), () => i.delete(s)), []),
1397			F() === !0 ? (F(), [t.state, n]) : [e, a]
1398		)
1399	}
1400	return s
1401}
1402var Ct = e(() => {
1403		n(), L()
1404	}),
1405	wt = e(() => {
1406		Ct()
1407	})
1408async function Tt(e, t) {
1409	const n = await fetch(`${At}${e}`, {
1410		...t,
1411		headers: { "Content-Type": `application/json`, ...(t?.headers || {}) },
1412	})
1413	if (!n.ok) throw Error(`Request failed: ${n.status}`)
1414	return n.json()
1415}
1416async function Et(e) {
1417	const t = await Tt(`/waitlist/validate-code/${encodeURIComponent(e)}`)
1418	return { valid: !!t?.data?.valid, inviterName: t?.data?.inviter_name || `` }
1419}
1420function Dt(e) {
1421	const {
1422			inviteParam: t,
1423			validTitle: n,
1424			validSubtitle: r,
1425			invalidSubtitle: i,
1426			fallbackName: a,
1427			titleFont: s,
1428			subtitleFont: d,
1429			codeFont: f,
1430			style: p,
1431		} = e,
1432		[m, h] = c(`loading`),
1433		[_, y] = c(``),
1434		[b, x] = kt()
1435	o(() => {
1436		if (l === void 0) return
1437		const e = new URLSearchParams(l.location.search).get(t || `invite`)
1438		if (!e) {
1439			h(`invalid`)
1440			return
1441		}
1442		x(e)
1443		let n = !1
1444		return (
1445			Et(e)
1446				.then((e) => {
1447					n ||
1448						(e.inviterName && y(e.inviterName),
1449						h(e.valid ? `valid` : `invalid`))
1450				})
1451				.catch(() => {
1452					n || h(`invalid`)
1453				}),
1454			() => {
1455				n = !0
1456			}
1457		)
1458	}, [])
1459	const S = m === `valid`,
1460		C = m === `loading`,
1461		w = _ || a,
1462		ee = (b || `------`).toUpperCase()
1463	return (
1464		Number(d?.fontSize ?? 16),
1465		Number(f?.fontSize ?? 18),
1466		g(`div`, {
1467			style: {
1468				position: `relative`,
1469				width: `100%`,
1470				height: `100%`,
1471				display: `flex`,
1472				alignItems: `center`,
1473				justifyContent: `space-between`,
1474				padding: `0px 40px 0px 40px`,
1475			},
1476			children: [
1477				u(`style`, { children: jt }),
1478				S && u(Ot, {}),
1479				u(`div`, {
1480					style: {
1481						position: `relative`,
1482						zIndex: 1,
1483						display: `flex`,
1484						flexDirection: `column`,
1485						gap: 8,
1486						flex: 1,
1487						minWidth: 0,
1488					},
1489					children: C
1490						? u(`div`, {})
1491						: S
1492							? g(v, {
1493									children: [
1494										u(`div`, {
1495											style: { color: `#FFFFFF`, ...s },
1496											children: n,
1497										}),
1498										g(`div`, {
1499											style: { color: `rgba(255,255,255,0.8)`, ...d },
1500											children: [w, ` `, r],
1501										}),
1502									],
1503								})
1504							: g(`div`, {
1505									style: { color: `rgba(255,255,255,0.8)`, ...d },
1506									children: [w, ` `, i],
1507								}),
1508				}),
1509				u(`div`, {
1510					style: {
1511						position: `relative`,
1512						zIndex: 1,
1513						padding: `10px 16px`,
1514						borderRadius: 999,
1515						border: `1px solid rgba(255,255,255,0.25)`,
1516						flexShrink: 0,
1517						...(C ? Mt : { background: `rgba(0,0,0,0.06)` }),
1518					},
1519					children: u(`span`, {
1520						style: {
1521							color: S ? `#FFFFFF` : `rgba(255,255,255,0.45)`,
1522							textDecoration: S || C ? `none` : `line-through`,
1523							...f,
1524						},
1525						children: ee,
1526					}),
1527				}),
1528			],
1529		})
1530	)
1531}
1532function Ot() {
1533	const e = r(null),
1534		t = r(null)
1535	return (
1536		o(() => {
1537			const n = e.current
1538			if (!n) return
1539			const r = n.getContext(`2d`)
1540			if (!r) return
1541			let i = l.devicePixelRatio || 1,
1542				a = 0,
1543				o = 0,
1544				s = () => {
1545					const e = n.getBoundingClientRect()
1546					;(a = e.width),
1547						(o = e.height),
1548						(n.width = Math.floor(a * i)),
1549						(n.height = Math.floor(o * i)),
1550						r.setTransform(i, 0, 0, i, 0, 0)
1551				}
1552			s()
1553			const c = new ResizeObserver(s)
1554			c.observe(n)
1555			const u = [
1556					`#FFD84D`,
1557					`#FF8A3D`,
1558					`#FF4D6D`,
1559					`#7B5BFF`,
1560					`#3DDC97`,
1561					`#FFFFFF`,
1562					`#B86BFF`,
1563				],
1564				d = [],
1565				f = (e) => ({
1566					x: Math.random() * (a || 600),
1567					y: e ? Math.random() * (o || 100) : -10 - Math.random() * 40,
1568					vx: (Math.random() - 0.5) * 0.4,
1569					vy: 0.3 + Math.random() * 0.7,
1570					size: 5 + Math.random() * 6,
1571					rot: Math.random() * Math.PI * 2,
1572					vr: (Math.random() - 0.5) * 0.08,
1573					color: u[Math.floor(Math.random() * u.length)],
1574					shape: Math.random() > 0.5 ? `rect` : `tri`,
1575				})
1576			for (let e = 0; e < 36; e++) d.push(f(!0))
1577			const p = () => {
1578				r.clearRect(0, 0, a, o)
1579				for (const e of d)
1580					(e.x += e.vx),
1581						(e.y += e.vy),
1582						(e.rot += e.vr),
1583						e.y > o + 20 && Object.assign(e, f(!1)),
1584						r.save(),
1585						r.translate(e.x, e.y),
1586						r.rotate(e.rot),
1587						(r.fillStyle = e.color),
1588						e.shape === `rect`
1589							? r.fillRect(-e.size / 2, -e.size / 3, e.size, e.size / 1.5)
1590							: (r.beginPath(),
1591								r.moveTo(0, -e.size / 2),
1592								r.lineTo(e.size / 2, e.size / 2),
1593								r.lineTo(-e.size / 2, e.size / 2),
1594								r.closePath(),
1595								r.fill()),
1596						r.restore()
1597				t.current = requestAnimationFrame(p)
1598			}
1599			return (
1600				(t.current = requestAnimationFrame(p)),
1601				() => {
1602					t.current != null && cancelAnimationFrame(t.current), c.disconnect()
1603				}
1604			)
1605		}, []),
1606		u(`canvas`, {
1607			ref: e,
1608			style: {
1609				position: `absolute`,
1610				inset: 0,
1611				width: `100%`,
1612				height: `100%`,
1613				pointerEvents: `none`,
1614				zIndex: 0,
1615			},
1616		})
1617	)
1618}
1619var kt,
1620	At,
1621	jt,
1622	Mt,
1623	Nt = e(() => {
1624		i(),
1625			_(),
1626			L(),
1627			n(),
1628			wt(),
1629			(kt = St(``)),
1630			(At = `https://cors-proxy-ten-virid.vercel.app/?proxy=https://api.extra.email`),
1631			(jt = `
1632@keyframes inviteBannerShimmer {
1633    0% { background-position: 200% 0; }
1634    100% { background-position: -200% 0; }
1635}
1636`),
1637			(Mt = {
1638				background: `linear-gradient(90deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.22) 50%, rgba(255,255,255,0.08) 100%)`,
1639				backgroundSize: `200% 100%`,
1640				animation: `inviteBannerShimmer 1.4s ease-in-out infinite`,
1641			}),
1642			(Dt.defaultProps = {
1643				inviteParam: `invite`,
1644				validTitle: `You're in!`,
1645				validSubtitle: `has invited you to Extra`,
1646				invalidSubtitle: `has invited you to Extra but this code is no longer valid`,
1647				fallbackName: `Someone`,
1648			}),
1649			O(Dt, {
1650				inviteParam: {
1651					type: j.String,
1652					title: `URL Param`,
1653					defaultValue: `invite`,
1654				},
1655				validTitle: {
1656					type: j.String,
1657					title: `Valid Title`,
1658					defaultValue: `You're in!`,
1659				},
1660				validSubtitle: {
1661					type: j.String,
1662					title: `Valid Subtitle`,
1663					defaultValue: `has invited you to Extra`,
1664				},
1665				invalidSubtitle: {
1666					type: j.String,
1667					title: `Invalid Subtitle`,
1668					defaultValue: `has invited you to Extra but this code is no longer valid`,
1669					displayTextArea: !0,
1670				},
1671				fallbackName: {
1672					type: j.String,
1673					title: `Fallback Name`,
1674					defaultValue: `Someone`,
1675				},
1676				titleFont: {
1677					type: j.Font,
1678					title: `Title Font`,
1679					controls: `extended`,
1680					defaultFontType: `sans-serif`,
1681					defaultValue: { fontSize: 28, variant: `Bold`, lineHeight: `1.1em` },
1682				},
1683				subtitleFont: {
1684					type: j.Font,
1685					title: `Subtitle Font`,
1686					controls: `extended`,
1687					defaultFontType: `sans-serif`,
1688					defaultValue: {
1689						fontSize: 16,
1690						variant: `Regular`,
1691						lineHeight: `1.3em`,
1692					},
1693				},
1694				codeFont: {
1695					type: j.Font,
1696					title: `Code Font`,
1697					controls: `extended`,
1698					defaultFontType: `sans-serif`,
1699					defaultValue: {
1700						fontSize: 18,
1701						variant: `Semibold`,
1702						lineHeight: `1em`,
1703					},
1704				},
1705			})
1706	})
1707function Pt(e) {
1708	return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.trim())
1709}
1710function Ft(e) {
1711	const t = JSON.stringify({ flow: `invite`, inviteCode: e, attribution: {} })
1712	return `https://accounts.google.com/o/oauth2/v2/auth?${new URLSearchParams({ client_id: Vt, redirect_uri: Ht, response_type: `code`, scope: Ut, access_type: `offline`, include_granted_scopes: `true`, state: t })}`
1713}
1714async function It(e, t) {
1715	const n = await fetch(`${Bt}${e}`, {
1716		...t,
1717		headers: { "Content-Type": `application/json`, ...(t?.headers || {}) },
1718	})
1719	if (!n.ok) throw Error(`Request failed: ${n.status}`)
1720	return n.json()
1721}
1722async function Lt(e) {
1723	if ((await It(`/waitlist/validate-code/${e}`)).data?.valid)
1724		return { success: !0 }
1725	throw Error(`Invalid code`)
1726}
1727async function Rt(e) {
1728	if (!Pt(e)) throw Error(`Invalid email`)
1729	if (
1730		(await It(`/waitlist/status`, {
1731			method: `POST`,
1732			body: JSON.stringify({ email: e }),
1733		}))?.data?.on_waitlist ||
1734		(
1735			await It(`/waitlist/signup`, {
1736				method: `POST`,
1737				body: JSON.stringify({ email: e, name: ``, source: `web` }),
1738			})
1739		)?.data?.success
1740	)
1741		return { success: !0 }
1742	throw Error(`Request failed`)
1743}
1744function zt({
1745	placeholder: e = `Introduce your email...`,
1746	borderRadius: t = 20,
1747	fontSize: n = 32,
1748	borderColor: i = `rgba(0,0,0,0.08)`,
1749	activeBorderColor: a = `#FF9E6A`,
1750	errorBorderColor: s = `#FF6B6B`,
1751	backgroundColor: d = `#FFFFFF`,
1752	textColor: f = `#000000`,
1753	placeholderColor: p = `rgba(0,0,0,0.4)`,
1754	endpoint: m = `waitlist`,
1755	onSucess: h,
1756}) {
1757	const [_, v] = c(``),
1758		[y, b] = c(!1),
1759		[x, S] = c(`idle`),
1760		C = r(null),
1761		[w, ee] = kt()
1762	o(() => {
1763		w && m === `validate-code` && v(w)
1764	}, [w])
1765	const te = async (e) => {
1766			e.preventDefault()
1767			try {
1768				if (x === `loading`) return
1769				S(`loading`),
1770					m === `waitlist` && (await Rt(_)).success && h(),
1771					m === `validate-code` &&
1772						(await Lt(_)).success &&
1773						(l.location.href = Ft(_)),
1774					S(`idle`)
1775			} catch {
1776				S(`error`), setTimeout(() => S(`idle`), 1e3)
1777			}
1778		},
1779		T = x === `idle`,
1780		E = x === `error`
1781	return g(`form`, {
1782		onSubmit: te,
1783		style: {
1784			width: `100%`,
1785			height: `100%`,
1786			position: `relative`,
1787			borderRadius: t,
1788			border: E
1789				? `2px solid ${s}`
1790				: y && T
1791					? `2px solid ${a}`
1792					: `1px solid ${i}`,
1793			backgroundColor: d,
1794			overflow: `hidden`,
1795			display: `flex`,
1796			alignItems: `center`,
1797			justifyContent: `center`,
1798			transition: `border-color 0.2s ease, box-shadow 0.2s ease`,
1799			boxShadow: E ? `0 0 0 4px ${s}22` : y && T ? `0 0 0 4px ${a}22` : `none`,
1800			cursor: T ? `text` : `default`,
1801		},
1802		children: [
1803			u(`input`, {
1804				ref: C,
1805				type: m === `waitlist` ? `email` : `text`,
1806				value: _,
1807				placeholder: e,
1808				onChange: (e) => v(e.target.value),
1809				onFocus: () => b(!0),
1810				onBlur: () => b(!1),
1811				disabled: !T,
1812				style: {
1813					width: `100%`,
1814					height: `100%`,
1815					border: `none`,
1816					outline: `none`,
1817					background: `transparent`,
1818					fontFamily: `'Inter', -apple-system, BlinkMacSystemFont, sans-serif`,
1819					fontSize: n,
1820					lineHeight: 1.25,
1821					color: f,
1822					textAlign: `center`,
1823					padding: `0 32px`,
1824					caretColor: a,
1825				},
1826				"aria-label": `Email input`,
1827			}),
1828			u(`style`, {
1829				children: `
1830                input::placeholder {
1831                    color: ${p};
1832                    opacity: 1;
1833                }
1834            `,
1835			}),
1836		],
1837	})
1838}
1839var Bt,
1840	Vt,
1841	Ht,
1842	Ut,
1843	Wt = e(() => {
1844		i(),
1845			_(),
1846			L(),
1847			n(),
1848			Nt(),
1849			(Bt = `https://cors-proxy-ten-virid.vercel.app/?proxy=https://api.extra.email`),
1850			(Vt = `1020069543124-0r5dnjfbqeffub5to3l5dqu7sptk31v1.apps.googleusercontent.com`),
1851			(Ht = `https://extra.email/oauth2callback`),
1852			(Ut = `https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email`),
1853			O(zt, {
1854				placeholder: {
1855					type: j.String,
1856					title: `Placeholder`,
1857					defaultValue: `Introduce your email...`,
1858				},
1859				borderRadius: {
1860					type: j.Number,
1861					title: `Radius`,
1862					defaultValue: 20,
1863					min: 0,
1864					max: 60,
1865					step: 1,
1866				},
1867				fontSize: {
1868					type: j.Number,
1869					title: `Font Size`,
1870					defaultValue: 16,
1871					min: 14,
1872					max: 64,
1873					step: 1,
1874				},
1875				activeBorderColor: {
1876					type: j.Color,
1877					title: `Active Border`,
1878					defaultValue: `#FF9E6A`,
1879				},
1880				errorBorderColor: {
1881					type: j.Color,
1882					title: `Error Border`,
1883					defaultValue: `#FF6B6B`,
1884				},
1885				borderColor: {
1886					type: j.Color,
1887					title: `Border`,
1888					defaultValue: `rgba(0,0,0,0.08)`,
1889				},
1890				backgroundColor: {
1891					type: j.Color,
1892					title: `Background`,
1893					defaultValue: `#FFFFFF`,
1894				},
1895				textColor: {
1896					type: j.Color,
1897					title: `Text Color`,
1898					defaultValue: `#000000`,
1899				},
1900				placeholderColor: {
1901					type: j.Color,
1902					title: `Placeholder`,
1903					defaultValue: `rgba(0,0,0,0.4)`,
1904				},
1905				onSucess: { type: j.EventHandler },
1906				endpoint: {
1907					type: j.Enum,
1908					defaultValue: `waitlist`,
1909					options: [`waitlist`, `validate-code`],
1910					optionTitles: [`Waitlist`, `Validate Code`],
1911				},
1912			})
1913	})
1914function Gt(e, ...t) {
1915	const n = {}
1916	return t?.forEach((t) => t && Object.assign(n, e[t])), n
1917}
1918var Kt,
1919	qt,
1920	Jt,
1921	Yt,
1922	Xt,
1923	Zt,
1924	Qt,
1925	$t,
1926	en,
1927	tn,
1928	nn,
1929	rn,
1930	V,
1931	an,
1932	on = e(() => {
1933		_(),
1934			L(),
1935			te(),
1936			n(),
1937			Nt(),
1938			Wt(),
1939			(Kt = pe(Dt)),
1940			(qt = pe(zt)),
1941			(Jt = [`gRBXNOz9P`, `uY23qyflB`, `NlNPWaOFT`, `rp1OwFuDu`]),
1942			(Yt = `framer-NjXFf`),
1943			(Xt = {
1944				gRBXNOz9P: `framer-v-1sa6egx`,
1945				NlNPWaOFT: `framer-v-1o7x8i5`,
1946				rp1OwFuDu: `framer-v-7129h5`,
1947				uY23qyflB: `framer-v-1li9hut`,
1948			}),
1949			(Zt = { duration: 0, type: `tween` }),
1950			(Qt = (e, t) => `translateX(-50%) ${t}`),
1951			($t = ({ value: e, children: n }) => {
1952				const r = h(C),
1953					i = e ?? r.transition,
1954					a = t(() => ({ ...r, transition: i }), [JSON.stringify(i)])
1955				return u(C.Provider, { value: a, children: n })
1956			}),
1957			(en = {
1958				"App Store": `gRBXNOz9P`,
1959				"Invite Code": `NlNPWaOFT`,
1960				"Validate Code": `rp1OwFuDu`,
1961				"Waitlist Success": `uY23qyflB`,
1962			}),
1963			(tn = S.create(s)),
1964			(nn = ({ height: e, id: t, width: n, ...r }) => ({
1965				...r,
1966				variant: en[r.variant] ?? r.variant ?? `gRBXNOz9P`,
1967			})),
1968			(rn = (e, t) =>
1969				e.layoutDependency ? t.join(`-`) + e.layoutDependency : t.join(`-`)),
1970			(V = k(
1971				f((e, t) => {
1972					const n = r(null),
1973						i = t ?? n,
1974						a = b(),
1975						{ activeLocale: o, setLocale: c } = ae(),
1976						l = re(),
1977						{ style: d, className: f, layoutId: p, variant: m, ...h } = nn(e),
1978						{
1979							baseVariant: _,
1980							classNames: v,
1981							clearLoadingGesture: y,
1982							gestureHandlers: x,
1983							gestureVariant: C,
1984							isLoading: w,
1985							setGestureState: te,
1986							setVariant: T,
1987							variants: D,
1988						} = fe({
1989							cycleOrder: Jt,
1990							defaultVariant: `gRBXNOz9P`,
1991							ref: i,
1992							variant: m,
1993							variantClassNames: Xt,
1994						}),
1995						O = rn(e, D),
1996						{ activeVariantCallback: k, delay: ne } = N(_),
1997						j = k(async (...e) => {
1998							T(`uY23qyflB`)
1999						}),
2000						M = k(async (...e) => {
2001							T(`NlNPWaOFT`)
2002						}),
2003						ie = k(async (...e) => {
2004							T(`gRBXNOz9P`)
2005						}),
2006						oe = P(Yt),
2007						F = () => _ === `rp1OwFuDu`,
2008						I = () => ![`uY23qyflB`, `NlNPWaOFT`, `rp1OwFuDu`].includes(_),
2009						se = () => _ === `uY23qyflB`,
2010						L = () => _ === `NlNPWaOFT`
2011					return u(ee, {
2012						id: p ?? a,
2013						children: u(tn, {
2014							animate: D,
2015							initial: !1,
2016							children: u($t, {
2017								value: Zt,
2018								children: g(S.div, {
2019									...h,
2020									...x,
2021									className: P(oe, `framer-1sa6egx`, f, v),
2022									"data-framer-name": `App Store`,
2023									layoutDependency: O,
2024									layoutId: `gRBXNOz9P`,
2025									ref: i,
2026									style: {
2027										backgroundColor: `rgb(253, 253, 253)`,
2028										borderBottomLeftRadius: 40,
2029										borderBottomRightRadius: 40,
2030										borderTopLeftRadius: 40,
2031										borderTopRightRadius: 40,
2032										boxShadow: `0px 359px 143px 0px rgba(0, 0, 0, 0.04), 0px 202px 121px 0px rgba(0, 0, 0, 0.13), 0px 90px 90px 0px rgba(0, 0, 0, 0.22), 0px 22px 49px 0px rgba(0, 0, 0, 0.25)`,
2033										...d,
2034									},
2035									...Gt(
2036										{
2037											NlNPWaOFT: { "data-framer-name": `Invite Code` },
2038											rp1OwFuDu: { "data-framer-name": `Validate Code` },
2039											uY23qyflB: { "data-framer-name": `Waitlist Success` },
2040										},
2041										_,
2042										C,
2043									),
2044									children: [
2045										F() &&
2046											u(S.div, {
2047												className: `framer-1ikbmmn`,
2048												"data-framer-name": `You Are In`,
2049												layoutDependency: O,
2050												layoutId: `Zg3ZXjlAF`,
2051												style: {
2052													background: `linear-gradient(180deg, rgb(94, 0, 255) 0%, rgb(133, 62, 255) 93.24852195945947%)`,
2053													borderBottomLeftRadius: 28,
2054													borderBottomRightRadius: 28,
2055													borderTopLeftRadius: 28,
2056													borderTopRightRadius: 28,
2057												},
2058												children: u(R, {
2059													children: u(E, {
2060														className: `framer-ttb9fs-container`,
2061														isAuthoredByUser: !0,
2062														layoutDependency: O,
2063														layoutId: `WMQE5tJh1-container`,
2064														nodeId: `WMQE5tJh1`,
2065														rendersWithMotion: !0,
2066														scopeId: `RvFNWSAU7`,
2067														children: u(Dt, {
2068															codeFont: {
2069																fontFamily: `"Inter", "Inter Placeholder", sans-serif`,
2070																fontSize: `24px`,
2071																fontStyle: `normal`,
2072																fontWeight: 500,
2073																letterSpacing: `0em`,
2074																lineHeight: `1em`,
2075															},
2076															fallbackName: `Someone`,
2077															height: `100%`,
2078															id: `WMQE5tJh1`,
2079															invalidSubtitle: `has invited you to Extra but this code is no longer valid`,
2080															inviteParam: `invite`,
2081															layoutId: `WMQE5tJh1`,
2082															style: { height: `100%`, width: `100%` },
2083															subtitleFont: {
2084																fontFamily: `"Inter", "Inter Placeholder", sans-serif`,
2085																fontSize: `16px`,
2086																fontStyle: `normal`,
2087																fontWeight: 500,
2088																letterSpacing: `0em`,
2089																lineHeight: `1.2em`,
2090															},
2091															titleFont: {
2092																fontFamily: `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2093																fontSize: `28px`,
2094																fontStyle: `normal`,
2095																fontWeight: 600,
2096																letterSpacing: `0em`,
2097																lineHeight: `1em`,
2098															},
2099															validSubtitle: `has invited you to Extra`,
2100															validTitle: `You're in!`,
2101															width: `100%`,
2102														}),
2103													}),
2104												}),
2105											}),
2106										g(S.div, {
2107											className: `framer-1vxhfto`,
2108											layoutDependency: O,
2109											layoutId: `MJj9KElZB`,
2110											children: [
2111												g(S.div, {
2112													className: `framer-17ubovm`,
2113													"data-framer-name": `Header`,
2114													layoutDependency: O,
2115													layoutId: `bzEjntwLU`,
2116													style: {
2117														borderBottomLeftRadius: 28,
2118														borderBottomRightRadius: 28,
2119														borderTopLeftRadius: 28,
2120														borderTopRightRadius: 28,
2121														boxShadow: `0px 4px 34px 0px rgba(0, 0, 0, 0.1)`,
2122													},
2123													children: [
2124														u(le, {
2125															background: {
2126																alt: ``,
2127																fit: `fill`,
2128																intrinsicHeight: 806,
2129																intrinsicWidth: 1096,
2130																loading: A((l?.y || 0) + 16 + 0 + 0 + 0 + 0),
2131																pixelHeight: 806,
2132																pixelWidth: 1096,
2133																sizes: `548px`,
2134																src: `/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.3d51c7d4.webp`,
2135																srcSet: `/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.093128e1.webp 512w,/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.14f4d0fd.webp 1024w,/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.3d51c7d4.webp 1096w`,
2136															},
2137															className: `framer-1lce3sz`,
2138															"data-framer-name": `Qr-code-scene`,
2139															layoutDependency: O,
2140															layoutId: `FPvyXMRie`,
2141															transformTemplate: Qt,
2142															...Gt(
2143																{
2144																	rp1OwFuDu: {
2145																		background: {
2146																			alt: ``,
2147																			fit: `fill`,
2148																			intrinsicHeight: 806,
2149																			intrinsicWidth: 1096,
2150																			loading: A(
2151																				(l?.y || 0) + 16 + 128 + 0 + 0 + 0,
2152																			),
2153																			pixelHeight: 806,
2154																			pixelWidth: 1096,
2155																			sizes: `548px`,
2156																			src: `/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.3d51c7d4.webp`,
2157																			srcSet: `/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.093128e1.webp 512w,/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.14f4d0fd.webp 1024w,/framer-assets/images/LjDFwKB7KlJPgEKkFoNw2iRFA.3d51c7d4.webp 1096w`,
2158																		},
2159																	},
2160																},
2161																_,
2162																C,
2163															),
2164														}),
2165														g(S.div, {
2166															className: `framer-zwomoq`,
2167															layoutDependency: O,
2168															layoutId: `bhhyETvWb`,
2169															children: [
2170																u(z, {
2171																	__fromCanvasComponent: !0,
2172																	children: u(s, {
2173																		children: u(S.p, {
2174																			dir: `auto`,
2175																			style: {
2176																				"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2177																				"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2178																				"--framer-font-size": `32px`,
2179																				"--framer-font-weight": `600`,
2180																				"--framer-letter-spacing": `-0.01em`,
2181																				"--framer-line-height": `1em`,
2182																			},
2183																			children: `Download`,
2184																		}),
2185																	}),
2186																	className: `framer-1p9y3eo`,
2187																	fonts: [
2188																		`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2189																	],
2190																	layoutDependency: O,
2191																	layoutId: `Y9P3B_tPT`,
2192																	style: {
2193																		"--framer-link-text-color": `rgb(0, 153, 255)`,
2194																		"--framer-link-text-decoration": `underline`,
2195																	},
2196																	verticalAlignment: `top`,
2197																	withExternalLayout: !0,
2198																}),
2199																g(S.div, {
2200																	className: `framer-1ccckmb`,
2201																	layoutDependency: O,
2202																	layoutId: `uJmoBpfn0`,
2203																	children: [
2204																		u(z, {
2205																			__fromCanvasComponent: !0,
2206																			children: u(s, {
2207																				children: u(S.p, {
2208																					dir: `auto`,
2209																					style: {
2210																						"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2211																						"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2212																						"--framer-font-size": `32px`,
2213																						"--framer-font-weight": `600`,
2214																						"--framer-letter-spacing": `-0.01em`,
2215																						"--framer-line-height": `1em`,
2216																					},
2217																					children: `The`,
2218																				}),
2219																			}),
2220																			className: `framer-wi41ls`,
2221																			fonts: [
2222																				`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2223																			],
2224																			layoutDependency: O,
2225																			layoutId: `NOLNjDME7`,
2226																			style: {
2227																				"--framer-link-text-color": `rgb(0, 153, 255)`,
2228																				"--framer-link-text-decoration": `underline`,
2229																			},
2230																			verticalAlignment: `top`,
2231																			withExternalLayout: !0,
2232																		}),
2233																		u(le, {
2234																			background: {
2235																				alt: ``,
2236																				fit: `fill`,
2237																				intrinsicHeight: 32,
2238																				intrinsicWidth: 32,
2239																				loading: A(
2240																					(l?.y || 0) +
2241																						16 +
2242																						0 +
2243																						0 +
2244																						0 +
2245																						0 +
2246																						32 +
2247																						32 +
2248																						0,
2249																				),
2250																				pixelHeight: 64,
2251																				pixelWidth: 64,
2252																				sizes: `32px`,
2253																				src: `/framer-assets/images/EAjmZyID9oceWpyiN1PF4HQaP4.1611d77b.png`,
2254																			},
2255																			className: `framer-ffrxbc`,
2256																			"data-framer-name": `App-store-logo`,
2257																			layoutDependency: O,
2258																			layoutId: `TN87g3iKz`,
2259																			...Gt(
2260																				{
2261																					rp1OwFuDu: {
2262																						background: {
2263																							alt: ``,
2264																							fit: `fill`,
2265																							intrinsicHeight: 32,
2266																							intrinsicWidth: 32,
2267																							loading: A(
2268																								(l?.y || 0) +
2269																									16 +
2270																									128 +
2271																									0 +
2272																									0 +
2273																									0 +
2274																									32 +
2275																									32 +
2276																									0,
2277																							),
2278																							pixelHeight: 64,
2279																							pixelWidth: 64,
2280																							sizes: `32px`,
2281																							src: `/framer-assets/images/EAjmZyID9oceWpyiN1PF4HQaP4.1611d77b.png`,
2282																						},
2283																					},
2284																				},
2285																				_,
2286																				C,
2287																			),
2288																		}),
2289																		u(z, {
2290																			__fromCanvasComponent: !0,
2291																			children: u(s, {
2292																				children: u(S.p, {
2293																					dir: `auto`,
2294																					style: {
2295																						"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2296																						"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2297																						"--framer-font-size": `32px`,
2298																						"--framer-font-weight": `600`,
2299																						"--framer-letter-spacing": `-0.01em`,
2300																						"--framer-line-height": `1em`,
2301																					},
2302																					children: `App`,
2303																				}),
2304																			}),
2305																			className: `framer-18u724a`,
2306																			fonts: [
2307																				`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2308																			],
2309																			layoutDependency: O,
2310																			layoutId: `wrnNOWNCh`,
2311																			style: {
2312																				"--framer-link-text-color": `rgb(0, 153, 255)`,
2313																				"--framer-link-text-decoration": `underline`,
2314																			},
2315																			verticalAlignment: `top`,
2316																			withExternalLayout: !0,
2317																		}),
2318																	],
2319																}),
2320															],
2321														}),
2322													],
2323												}),
2324												g(S.div, {
2325													className: `framer-130e2ys`,
2326													"data-framer-name": `Body`,
2327													layoutDependency: O,
2328													layoutId: `CCrLyNvFB`,
2329													children: [
2330														I() &&
2331															g(S.div, {
2332																className: `framer-xvrf6v`,
2333																"data-framer-name": `Initial`,
2334																layoutDependency: O,
2335																layoutId: `vIn0w9SLo`,
2336																children: [
2337																	g(S.div, {
2338																		className: `framer-18btr2i`,
2339																		layoutDependency: O,
2340																		layoutId: `szpEqE0kO`,
2341																		children: [
2342																			u(z, {
2343																				__fromCanvasComponent: !0,
2344																				children: u(s, {
2345																					children: u(S.p, {
2346																						dir: `auto`,
2347																						style: {
2348																							"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
2349																							"--framer-font-size": `13px`,
2350																							"--framer-font-weight": `600`,
2351																							"--framer-text-alignment": `center`,
2352																							"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.9))`,
2353																						},
2354																						children: `Extra is invite only`,
2355																					}),
2356																				}),
2357																				className: `framer-fv7d37`,
2358																				fonts: [`Inter-SemiBold`],
2359																				layoutDependency: O,
2360																				layoutId: `aRNIaQo6T`,
2361																				style: {
2362																					"--extracted-r6o4lv": `rgba(22, 22, 23, 0.9)`,
2363																					"--framer-link-text-color": `rgb(0, 153, 255)`,
2364																					"--framer-link-text-decoration": `underline`,
2365																				},
2366																				verticalAlignment: `top`,
2367																				withExternalLayout: !0,
2368																			}),
2369																			g(S.div, {
2370																				className: `framer-qp9rh8`,
2371																				layoutDependency: O,
2372																				layoutId: `LcF8kSO9B`,
2373																				children: [
2374																					u(z, {
2375																						__fromCanvasComponent: !0,
2376																						children: u(s, {
2377																							children: u(S.p, {
2378																								dir: `auto`,
2379																								style: {
2380																									"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2381																									"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2382																									"--framer-font-size": `32px`,
2383																									"--framer-font-weight": `600`,
2384																									"--framer-letter-spacing": `-0.01em`,
2385																									"--framer-line-height": `1em`,
2386																									"--framer-text-alignment": `center`,
2387																								},
2388																								children: `Don't have an invite?`,
2389																							}),
2390																						}),
2391																						className: `framer-1jeclye`,
2392																						fonts: [
2393																							`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2394																						],
2395																						layoutDependency: O,
2396																						layoutId: `lO9713Bo6`,
2397																						style: {
2398																							"--framer-link-text-color": `rgb(0, 153, 255)`,
2399																							"--framer-link-text-decoration": `underline`,
2400																						},
2401																						verticalAlignment: `top`,
2402																						withExternalLayout: !0,
2403																					}),
2404																					u(z, {
2405																						__fromCanvasComponent: !0,
2406																						children: u(s, {
2407																							children: u(S.p, {
2408																								dir: `auto`,
2409																								style: {
2410																									"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2411																									"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2412																									"--framer-font-size": `32px`,
2413																									"--framer-font-weight": `600`,
2414																									"--framer-letter-spacing": `-0.01em`,
2415																									"--framer-line-height": `1em`,
2416																									"--framer-text-alignment": `center`,
2417																								},
2418																								children: u(S.span, {
2419																									"data-text-fill": `true`,
2420																									style: {
2421																										backgroundImage: `linear-gradient(0deg, rgb(255, 91, 54) 0%, rgb(255, 146, 88) 100%)`,
2422																									},
2423																									children: `Join our waitlist`,
2424																								}),
2425																							}),
2426																						}),
2427																						className: `framer-udajvh`,
2428																						fonts: [
2429																							`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2430																						],
2431																						layoutDependency: O,
2432																						layoutId: `IYJVKvM3X`,
2433																						style: {
2434																							"--framer-link-text-color": `rgb(0, 153, 255)`,
2435																							"--framer-link-text-decoration": `underline`,
2436																						},
2437																						verticalAlignment: `top`,
2438																						withExternalLayout: !0,
2439																					}),
2440																				],
2441																			}),
2442																		],
2443																	}),
2444																	u(R, {
2445																		children: u(E, {
2446																			className: `framer-1bzhri9-container`,
2447																			isAuthoredByUser: !0,
2448																			layoutDependency: O,
2449																			layoutId: `jvH1SIn7l-container`,
2450																			nodeId: `jvH1SIn7l`,
2451																			rendersWithMotion: !0,
2452																			scopeId: `RvFNWSAU7`,
2453																			children: u(zt, {
2454																				activeBorderColor: `rgb(255, 158, 106)`,
2455																				backgroundColor: `rgba(0, 0, 0, 0.05)`,
2456																				borderColor: `rgba(0, 0, 0, 0)`,
2457																				borderRadius: 50,
2458																				endpoint: `waitlist`,
2459																				errorBorderColor: `rgb(255, 107, 107)`,
2460																				fontSize: 16,
2461																				height: `100%`,
2462																				id: `jvH1SIn7l`,
2463																				layoutId: `jvH1SIn7l`,
2464																				onSucess: j,
2465																				placeholder: `Introduce your email`,
2466																				placeholderColor: `rgba(0, 0, 0, 0.5)`,
2467																				style: {
2468																					height: `100%`,
2469																					width: `100%`,
2470																				},
2471																				textColor: `rgb(0, 0, 0)`,
2472																				width: `100%`,
2473																			}),
2474																		}),
2475																	}),
2476																	g(S.div, {
2477																		className: `framer-j0yacn`,
2478																		layoutDependency: O,
2479																		layoutId: `f5cu4TzZe`,
2480																		children: [
2481																			u(z, {
2482																				__fromCanvasComponent: !0,
2483																				children: u(s, {
2484																					children: u(S.p, {
2485																						dir: `auto`,
2486																						style: {
2487																							"--font-selector": `SW50ZXItTWVkaXVt`,
2488																							"--framer-font-size": `13px`,
2489																							"--framer-font-weight": `500`,
2490																							"--framer-letter-spacing": `0.01em`,
2491																							"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2492																						},
2493																						children: `Alredy have a code?`,
2494																					}),
2495																				}),
2496																				className: `framer-17qa0a1`,
2497																				fonts: [`Inter-Medium`],
2498																				layoutDependency: O,
2499																				layoutId: `RrxapFGnx`,
2500																				style: {
2501																					"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2502																					"--framer-link-text-color": `rgb(0, 153, 255)`,
2503																					"--framer-link-text-decoration": `underline`,
2504																				},
2505																				verticalAlignment: `top`,
2506																				withExternalLayout: !0,
2507																			}),
2508																			u(z, {
2509																				__fromCanvasComponent: !0,
2510																				children: u(s, {
2511																					children: u(S.p, {
2512																						dir: `auto`,
2513																						style: {
2514																							"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
2515																							"--framer-font-size": `13px`,
2516																							"--framer-font-weight": `600`,
2517																							"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2518																						},
2519																						children: ` Enter to get access`,
2520																					}),
2521																				}),
2522																				className: `framer-17aqy4m`,
2523																				"data-highlight": !0,
2524																				fonts: [`Inter-SemiBold`],
2525																				layoutDependency: O,
2526																				layoutId: `HulKVEX2C`,
2527																				onTap: M,
2528																				style: {
2529																					"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2530																					"--framer-link-text-color": `rgb(0, 153, 255)`,
2531																					"--framer-link-text-decoration": `underline`,
2532																				},
2533																				verticalAlignment: `top`,
2534																				withExternalLayout: !0,
2535																			}),
2536																		],
2537																	}),
2538																],
2539															}),
2540														se() &&
2541															g(S.div, {
2542																className: `framer-l5fv4n`,
2543																"data-framer-name": `Waitlist Success`,
2544																layoutDependency: O,
2545																layoutId: `UZ59ZbQE4`,
2546																children: [
2547																	u(z, {
2548																		__fromCanvasComponent: !0,
2549																		children: u(s, {
2550																			children: u(S.p, {
2551																				dir: `auto`,
2552																				style: {
2553																					"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2554																					"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2555																					"--framer-font-size": `32px`,
2556																					"--framer-font-weight": `600`,
2557																					"--framer-letter-spacing": `-0.01em`,
2558																					"--framer-line-height": `1em`,
2559																					"--framer-text-alignment": `center`,
2560																				},
2561																				children: `You’re on the waitlist!`,
2562																			}),
2563																		}),
2564																		className: `framer-1p4af7w`,
2565																		fonts: [
2566																			`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2567																		],
2568																		layoutDependency: O,
2569																		layoutId: `mGpWfjmmk`,
2570																		style: {
2571																			"--framer-link-text-color": `rgb(0, 153, 255)`,
2572																			"--framer-link-text-decoration": `underline`,
2573																		},
2574																		verticalAlignment: `top`,
2575																		withExternalLayout: !0,
2576																	}),
2577																	u(z, {
2578																		__fromCanvasComponent: !0,
2579																		children: u(s, {
2580																			children: u(S.p, {
2581																				dir: `auto`,
2582																				style: {
2583																					"--font-selector": `SW50ZXItTWVkaXVt`,
2584																					"--framer-font-weight": `500`,
2585																					"--framer-line-height": `1.4em`,
2586																					"--framer-text-alignment": `center`,
2587																					"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2588																				},
2589																				children: `Download the app now so you don’t miss your invite—we’ll notify you as soon as it’s ready.`,
2590																			}),
2591																		}),
2592																		className: `framer-138g88t`,
2593																		fonts: [`Inter-Medium`],
2594																		layoutDependency: O,
2595																		layoutId: `ULdm8sqNh`,
2596																		style: {
2597																			"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2598																			"--framer-link-text-color": `rgb(0, 153, 255)`,
2599																			"--framer-link-text-decoration": `underline`,
2600																		},
2601																		verticalAlignment: `top`,
2602																		withExternalLayout: !0,
2603																	}),
2604																],
2605															}),
2606														L() &&
2607															g(S.div, {
2608																className: `framer-1rtfwmb`,
2609																"data-framer-name": `Invite code`,
2610																layoutDependency: O,
2611																layoutId: `D_LWPCw6P`,
2612																style: {
2613																	backgroundColor: `rgb(255, 255, 255)`,
2614																},
2615																children: [
2616																	g(S.div, {
2617																		className: `framer-15q5s5x`,
2618																		layoutDependency: O,
2619																		layoutId: `c4uY0_xPJ`,
2620																		children: [
2621																			u(z, {
2622																				__fromCanvasComponent: !0,
2623																				children: u(s, {
2624																					children: u(S.p, {
2625																						dir: `auto`,
2626																						style: {
2627																							"--font-selector": `Q1VTVE9NVjI7RVMgUmVib25kIEdyb3Rlc3F1ZSBUUklBTCBTZW1pYm9sZA==`,
2628																							"--framer-font-family": `"ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif`,
2629																							"--framer-font-size": `32px`,
2630																							"--framer-font-weight": `600`,
2631																							"--framer-letter-spacing": `-0.01em`,
2632																							"--framer-line-height": `1em`,
2633																							"--framer-text-alignment": `center`,
2634																						},
2635																						children: `Enter invite code`,
2636																					}),
2637																				}),
2638																				className: `framer-1yfgbva`,
2639																				fonts: [
2640																					`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`,
2641																				],
2642																				layoutDependency: O,
2643																				layoutId: `ha54sEI3A`,
2644																				style: {
2645																					"--framer-link-text-color": `rgb(0, 153, 255)`,
2646																					"--framer-link-text-decoration": `underline`,
2647																				},
2648																				verticalAlignment: `top`,
2649																				withExternalLayout: !0,
2650																			}),
2651																			u(R, {
2652																				children: u(E, {
2653																					className: `framer-1r23z4c-container`,
2654																					isAuthoredByUser: !0,
2655																					layoutDependency: O,
2656																					layoutId: `Axb_bj0fk-container`,
2657																					nodeId: `Axb_bj0fk`,
2658																					rendersWithMotion: !0,
2659																					scopeId: `RvFNWSAU7`,
2660																					children: u(zt, {
2661																						activeBorderColor: `rgb(255, 158, 106)`,
2662																						backgroundColor: `rgba(0, 0, 0, 0.05)`,
2663																						borderColor: `rgba(0, 0, 0, 0)`,
2664																						borderRadius: 50,
2665																						endpoint: `validate-code`,
2666																						errorBorderColor: `rgb(255, 107, 107)`,
2667																						fontSize: 16,
2668																						height: `100%`,
2669																						id: `Axb_bj0fk`,
2670																						layoutId: `Axb_bj0fk`,
2671																						placeholder: `Enter invite code`,
2672																						placeholderColor: `rgba(0, 0, 0, 0.5)`,
2673																						style: {
2674																							height: `100%`,
2675																							width: `100%`,
2676																						},
2677																						textColor: `rgb(0, 0, 0)`,
2678																						width: `100%`,
2679																					}),
2680																				}),
2681																			}),
2682																		],
2683																	}),
2684																	g(S.div, {
2685																		className: `framer-1iz294u`,
2686																		layoutDependency: O,
2687																		layoutId: `UgTPXWmPK`,
2688																		children: [
2689																			u(z, {
2690																				__fromCanvasComponent: !0,
2691																				children: u(s, {
2692																					children: u(S.p, {
2693																						dir: `auto`,
2694																						style: {
2695																							"--font-selector": `SW50ZXItTWVkaXVt`,
2696																							"--framer-font-size": `13px`,
2697																							"--framer-font-weight": `500`,
2698																							"--framer-letter-spacing": `0.01em`,
2699																							"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2700																						},
2701																						children: `Don’t have a code?`,
2702																					}),
2703																				}),
2704																				className: `framer-1j2wzz3`,
2705																				fonts: [`Inter-Medium`],
2706																				layoutDependency: O,
2707																				layoutId: `dFlgJzNz3`,
2708																				style: {
2709																					"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2710																					"--framer-link-text-color": `rgb(0, 153, 255)`,
2711																					"--framer-link-text-decoration": `underline`,
2712																				},
2713																				verticalAlignment: `top`,
2714																				withExternalLayout: !0,
2715																			}),
2716																			u(z, {
2717																				__fromCanvasComponent: !0,
2718																				children: u(s, {
2719																					children: u(S.p, {
2720																						dir: `auto`,
2721																						style: {
2722																							"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
2723																							"--framer-font-size": `13px`,
2724																							"--framer-font-weight": `600`,
2725																							"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2726																						},
2727																						children: ` Join the waitlist`,
2728																					}),
2729																				}),
2730																				className: `framer-3dj7vt`,
2731																				"data-highlight": !0,
2732																				fonts: [`Inter-SemiBold`],
2733																				layoutDependency: O,
2734																				layoutId: `ZGoOFC8i5`,
2735																				onTap: ie,
2736																				style: {
2737																					"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2738																					"--framer-link-text-color": `rgb(0, 153, 255)`,
2739																					"--framer-link-text-decoration": `underline`,
2740																				},
2741																				verticalAlignment: `top`,
2742																				withExternalLayout: !0,
2743																			}),
2744																		],
2745																	}),
2746																],
2747															}),
2748														F() &&
2749															g(S.div, {
2750																className: `framer-1hh336h`,
2751																"data-framer-name": `Validate Code`,
2752																layoutDependency: O,
2753																layoutId: `TzZ6c9KHq`,
2754																children: [
2755																	u(z, {
2756																		__fromCanvasComponent: !0,
2757																		children: u(s, {
2758																			children: u(S.p, {
2759																				dir: `auto`,
2760																				style: {
2761																					"--font-selector": `SW50ZXItTWVkaXVt`,
2762																					"--framer-font-size": `13px`,
2763																					"--framer-font-weight": `500`,
2764																					"--framer-letter-spacing": `0.01em`,
2765																					"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2766																				},
2767																				children: `Not on IOS?`,
2768																			}),
2769																		}),
2770																		className: `framer-a0aok4`,
2771																		fonts: [`Inter-Medium`],
2772																		layoutDependency: O,
2773																		layoutId: `rotFrYp5v`,
2774																		style: {
2775																			"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2776																			"--framer-link-text-color": `rgb(0, 153, 255)`,
2777																			"--framer-link-text-decoration": `underline`,
2778																		},
2779																		verticalAlignment: `top`,
2780																		withExternalLayout: !0,
2781																	}),
2782																	u(z, {
2783																		__fromCanvasComponent: !0,
2784																		children: u(s, {
2785																			children: u(S.p, {
2786																				dir: `auto`,
2787																				style: {
2788																					"--font-selector": `SW50ZXItU2VtaUJvbGQ=`,
2789																					"--framer-font-size": `13px`,
2790																					"--framer-font-weight": `600`,
2791																					"--framer-text-color": `var(--extracted-r6o4lv, rgba(22, 22, 23, 0.6))`,
2792																				},
2793																				children: ` Signup on Web`,
2794																			}),
2795																		}),
2796																		className: `framer-wwd4ii`,
2797																		"data-highlight": !0,
2798																		fonts: [`Inter-SemiBold`],
2799																		layoutDependency: O,
2800																		layoutId: `yYD76DL5q`,
2801																		onTap: M,
2802																		style: {
2803																			"--extracted-r6o4lv": `rgba(22, 22, 23, 0.6)`,
2804																			"--framer-link-text-color": `rgb(0, 153, 255)`,
2805																			"--framer-link-text-decoration": `underline`,
2806																		},
2807																		verticalAlignment: `top`,
2808																		withExternalLayout: !0,
2809																	}),
2810																],
2811															}),
2812													],
2813												}),
2814											],
2815										}),
2816									],
2817								}),
2818							}),
2819						}),
2820					})
2821				}),
2822				[
2823					`@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }`,
2824					`.framer-NjXFf.framer-1h2hswr, .framer-NjXFf .framer-1h2hswr { display: block; }`,
2825					`.framer-NjXFf.framer-1sa6egx { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; min-height: 670px; overflow: var(--overflow-clip-fallback, clip); padding: 16px; position: relative; width: 580px; will-change: var(--framer-will-change-override, transform); }`,
2826					`.framer-NjXFf .framer-1ikbmmn { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 30px; height: 112px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2827					`.framer-NjXFf .framer-ttb9fs-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }`,
2828					`.framer-NjXFf .framer-1vxhfto { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2829					`.framer-NjXFf .framer-17ubovm { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: 403px; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }`,
2830					`.framer-NjXFf .framer-1lce3sz { aspect-ratio: 1.3598014888337469 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 403px); left: 50%; overflow: visible; position: absolute; top: 0px; width: 548px; z-index: 0; }`,
2831					`.framer-NjXFf .framer-zwomoq { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 32px 12px 0px 0px; position: relative; width: 1px; }`,
2832					`.framer-NjXFf .framer-1p9y3eo, .framer-NjXFf .framer-wi41ls, .framer-NjXFf .framer-18u724a, .framer-NjXFf .framer-17qa0a1, .framer-NjXFf .framer-1j2wzz3, .framer-NjXFf .framer-a0aok4 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }`,
2833					`.framer-NjXFf .framer-1ccckmb { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2834					`.framer-NjXFf .framer-ffrxbc { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 32px); overflow: visible; position: relative; width: 32px; }`,
2835					`.framer-NjXFf .framer-130e2ys { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2836					`.framer-NjXFf .framer-xvrf6v { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; max-width: 340px; overflow: visible; padding: 0px; position: relative; width: 1px; }`,
2837					`.framer-NjXFf .framer-18btr2i { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 2px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2838					`.framer-NjXFf .framer-fv7d37, .framer-NjXFf .framer-1jeclye, .framer-NjXFf .framer-udajvh, .framer-NjXFf .framer-1p4af7w, .framer-NjXFf .framer-1yfgbva { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }`,
2839					`.framer-NjXFf .framer-qp9rh8 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2840					`.framer-NjXFf .framer-1bzhri9-container, .framer-NjXFf .framer-1r23z4c-container { flex: none; height: 56px; position: relative; width: 100%; }`,
2841					`.framer-NjXFf .framer-j0yacn, .framer-NjXFf .framer-1iz294u { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2842					`.framer-NjXFf .framer-17aqy4m, .framer-NjXFf .framer-3dj7vt, .framer-NjXFf .framer-wwd4ii { cursor: pointer; flex: none; height: auto; position: relative; white-space: pre; width: auto; }`,
2843					`.framer-NjXFf .framer-l5fv4n { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 18px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }`,
2844					`.framer-NjXFf .framer-138g88t { flex: none; height: auto; max-width: 288px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }`,
2845					`.framer-NjXFf .framer-1rtfwmb { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 43px; height: min-content; justify-content: center; max-width: 340px; overflow: visible; padding: 0px; position: relative; width: 1px; }`,
2846					`.framer-NjXFf .framer-15q5s5x { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }`,
2847					`.framer-NjXFf .framer-1hh336h { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }`,
2848					`.framer-NjXFf.framer-v-1o7x8i5 .framer-15q5s5x, .framer-NjXFf.framer-v-7129h5 .framer-1ikbmmn { order: 0; }`,
2849					`.framer-NjXFf.framer-v-1o7x8i5 .framer-1iz294u { order: 1; }`,
2850					`.framer-NjXFf.framer-v-7129h5.framer-1sa6egx { height: 611px; min-height: unset; }`,
2851					`.framer-NjXFf.framer-v-7129h5 .framer-1vxhfto { order: 2; }`,
2852				],
2853				`framer-NjXFf`,
2854			)),
2855			(an = V),
2856			(V.displayName = `Modal`),
2857			(V.defaultProps = { height: 670, width: 580 }),
2858			O(V, {
2859				variant: {
2860					options: [`gRBXNOz9P`, `uY23qyflB`, `NlNPWaOFT`, `rp1OwFuDu`],
2861					optionTitles: [
2862						`App Store`,
2863						`Waitlist Success`,
2864						`Invite Code`,
2865						`Validate Code`,
2866					],
2867					title: `Variant`,
2868					type: j.Enum,
2869				},
2870			}),
2871			T(
2872				V,
2873				[
2874					{
2875						explicitInter: !0,
2876						fonts: [
2877							{
2878								cssFamilyName: `ES Rebond Grotesque TRIAL Semibold`,
2879								source: `custom`,
2880								style: `normal`,
2881								uiFamilyName: `ES Rebond Grotesque TRIAL`,
2882								url: `/framer-assets/fonts/QUecpWp8V2fMxLOCOTwkfc2vk.woff2`,
2883								weight: `600`,
2884							},
2885							{
2886								cssFamilyName: `Inter`,
2887								source: `framer`,
2888								style: `normal`,
2889								uiFamilyName: `Inter`,
2890								unicodeRange: `U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F`,
2891								url: `/framer-assets/fonts/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2`,
2892								weight: `500`,
2893							},
2894							{
2895								cssFamilyName: `Inter`,
2896								source: `framer`,
2897								style: `normal`,
2898								uiFamilyName: `Inter`,
2899								unicodeRange: `U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116`,
2900								url: `/framer-assets/fonts/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2`,
2901								weight: `500`,
2902							},
2903							{
2904								cssFamilyName: `Inter`,
2905								source: `framer`,
2906								style: `normal`,
2907								uiFamilyName: `Inter`,
2908								unicodeRange: `U+1F00-1FFF`,
2909								url: `/framer-assets/fonts/6mJuEAguuIuMog10gGvH5d3cl8.woff2`,
2910								weight: `500`,
2911							},
2912							{
2913								cssFamilyName: `Inter`,
2914								source: `framer`,
2915								style: `normal`,
2916								uiFamilyName: `Inter`,
2917								unicodeRange: `U+0370-03FF`,
2918								url: `/framer-assets/fonts/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2`,
2919								weight: `500`,
2920							},
2921							{
2922								cssFamilyName: `Inter`,
2923								source: `framer`,
2924								style: `normal`,
2925								uiFamilyName: `Inter`,
2926								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`,
2927								url: `/framer-assets/fonts/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2`,
2928								weight: `500`,
2929							},
2930							{
2931								cssFamilyName: `Inter`,
2932								source: `framer`,
2933								style: `normal`,
2934								uiFamilyName: `Inter`,
2935								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`,
2936								url: `/framer-assets/fonts/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2`,
2937								weight: `500`,
2938							},
2939							{
2940								cssFamilyName: `Inter`,
2941								source: `framer`,
2942								style: `normal`,
2943								uiFamilyName: `Inter`,
2944								unicodeRange: `U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB`,
2945								url: `/framer-assets/fonts/DolVirEGb34pEXEp8t8FQBSK4.woff2`,
2946								weight: `500`,
2947							},
2948							{
2949								cssFamilyName: `Inter`,
2950								source: `framer`,
2951								style: `normal`,
2952								uiFamilyName: `Inter`,
2953								unicodeRange: `U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F`,
2954								url: `/framer-assets/fonts/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2`,
2955								weight: `600`,
2956							},
2957							{
2958								cssFamilyName: `Inter`,
2959								source: `framer`,
2960								style: `normal`,
2961								uiFamilyName: `Inter`,
2962								unicodeRange: `U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116`,
2963								url: `/framer-assets/fonts/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2`,
2964								weight: `600`,
2965							},
2966							{
2967								cssFamilyName: `Inter`,
2968								source: `framer`,
2969								style: `normal`,
2970								uiFamilyName: `Inter`,
2971								unicodeRange: `U+1F00-1FFF`,
2972								url: `/framer-assets/fonts/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2`,
2973								weight: `600`,
2974							},
2975							{
2976								cssFamilyName: `Inter`,
2977								source: `framer`,
2978								style: `normal`,
2979								uiFamilyName: `Inter`,
2980								unicodeRange: `U+0370-03FF`,
2981								url: `/framer-assets/fonts/lEJLP4R0yuCaMCjSXYHtJw72M.woff2`,
2982								weight: `600`,
2983							},
2984							{
2985								cssFamilyName: `Inter`,
2986								source: `framer`,
2987								style: `normal`,
2988								uiFamilyName: `Inter`,
2989								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`,
2990								url: `/framer-assets/fonts/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2`,
2991								weight: `600`,
2992							},
2993							{
2994								cssFamilyName: `Inter`,
2995								source: `framer`,
2996								style: `normal`,
2997								uiFamilyName: `Inter`,
2998								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`,
2999								url: `/framer-assets/fonts/yDtI2UI8XcEg1W2je9XPN3Noo.woff2`,
3000								weight: `600`,
3001							},
3002							{
3003								cssFamilyName: `Inter`,
3004								source: `framer`,
3005								style: `normal`,
3006								uiFamilyName: `Inter`,
3007								unicodeRange: `U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB`,
3008								url: `/framer-assets/fonts/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2`,
3009								weight: `600`,
3010							},
3011						],
3012					},
3013					...Kt,
3014					...qt,
3015				],
3016				{ supportsExplicitInterCodegen: !0 },
3017			)
3018	}),
3019	sn,
3020	cn,
3021	ln,
3022	un = e(() => {
3023		L(),
3024			D.loadFonts([`CUSTOMV2;ES Rebond Grotesque TRIAL Semibold`]),
3025			(sn = [
3026				{
3027					explicitInter: !0,
3028					fonts: [
3029						{
3030							cssFamilyName: `ES Rebond Grotesque TRIAL Semibold`,
3031							source: `custom`,
3032							style: `normal`,
3033							uiFamilyName: `ES Rebond Grotesque TRIAL`,
3034							url: `/framer-assets/fonts/QUecpWp8V2fMxLOCOTwkfc2vk.woff2`,
3035							weight: `600`,
3036						},
3037					],
3038				},
3039			]),
3040			(cn = [
3041				`.framer-wNaBx .framer-styles-preset-1d0tfck:not(.rich-text-wrapper), .framer-wNaBx .framer-styles-preset-1d0tfck.rich-text-wrapper h1 { --framer-font-family: "ES Rebond Grotesque TRIAL Semibold", "ES Rebond Grotesque TRIAL Semibold Placeholder", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 72px; --framer-font-style: normal; --framer-font-variation-axes: normal; --framer-font-weight: 600; --framer-letter-spacing: -0.01em; --framer-line-height: 0.9em; --framer-paragraph-spacing: 0px; --framer-text-alignment: center; --framer-text-color: #ffffff; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }`,
3042			]),
3043			(ln = `framer-wNaBx`)
3044	}),
3045	dn,
3046	fn,
3047	pn,
3048	mn,
3049	hn,
3050	gn = e(() => {
3051		_(),
3052			L(),
3053			n(),
3054			(dn = `url('data:image/svg+xml,<svg display="block" role="presentation" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M 3.814 0.377 C 2.148 -0.652 0 0.547 0 2.504 L 0 14.027 C 0 15.985 2.148 17.183 3.814 16.154 L 13.142 10.393 C 14.724 9.416 14.724 7.116 13.142 6.139 Z" fill="var(--1btux94, rgb(0, 0, 0))" height="16.53111802637738px" id="nhN_954ld" transform="translate(5 4)" width="14.328499999999941px"/></svg>') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)`),
3055			(fn = f((e, t) => {
3056				const { animated: n, layoutId: r, children: i, ...a } = e
3057				return n
3058					? u(S.div, { ...a, layoutId: r, ref: t })
3059					: u(`div`, { ...a, ref: t })
3060			})),
3061			(pn = ({ fill: e, height: t, id: n, width: r, ...i }) => ({
3062				...i,
3063				qviYQoCyK: e ?? i.qviYQoCyK ?? `rgb(0, 0, 0)`,
3064			})),
3065			(mn = k(
3066				f((e, t) => {
3067					const {
3068						style: n,
3069						className: r,
3070						layoutId: i,
3071						variant: a,
3072						qviYQoCyK: o,
3073						...s
3074					} = pn(e)
3075					return u(fn, {
3076						...s,
3077						className: P(`framer-t8LxZ`, r),
3078						layoutId: i,
3079						ref: t,
3080						style: { "--1btux94": o, ...n },
3081					})
3082				}),
3083				[
3084					`.framer-t8LxZ { -webkit-mask: ${dn}; aspect-ratio: 1; background-color: var(--1btux94); mask: ${dn}; width: 24px; }`,
3085				],
3086				`framer-t8LxZ`,
3087			)),
3088			(mn.displayName = `Play`),
3089			(hn = mn),
3090			O(mn, {
3091				qviYQoCyK: {
3092					defaultValue: `rgb(0, 0, 0)`,
3093					hidden: !1,
3094					title: `Fill`,
3095					type: j.Color,
3096				},
3097			})
3098	})
3099function _n(e, t) {
3100	return {
3101		description: `Extra understands what matters to you - summarizing your day, organizing your inbox around your life, surfacing what needs action, and quietly handling the noise.`,
3102		favicon: `/framer-assets/images/4TmZPf8zyjelM7fyNcFXww3lcg.png`,
3103		robots: `max-image-preview:large`,
3104		socialImage: `/framer-assets/images/sSFazJBPcQSVwKWcVC8l7Rygtr8.webp`,
3105		title: `Extra - Your life's inbox`,
3106	}
3107}
3108var vn = e(() => {})
3109function yn(e, t) {
3110	return {
3111		breakpoints: [
3112			{ hash: `72rtr7`, mediaQuery: `(min-width: 1000px)` },
3113			{
3114				hash: `v0nwp0`,
3115				mediaQuery: `(min-width: 810px) and (max-width: 999.98px)`,
3116			},
3117			{ hash: `12k67ir`, mediaQuery: `(max-width: 809.98px)` },
3118		],
3119		description: _n(e, t).description,
3120		elements: {
3121			ALaRBLzl9: `reveal-phone-mockup`,
3122			AZ5lLqhM9: `send-button-scale`,
3123			BoegwibEN: `scale-down-phone-date`,
3124			BWpLGj9zr: `mobile-v-swap-2`,
3125			CUJWmVzNZ: `mobile-v-transform-scanner`,
3126			DD2eDpYRP: `categories-opacity`,
3127			DY7qbGmUu: `third-swap`,
3128			efVubQmrx: `mobile-v-swap-3`,
3129			ExfRvczV6: `mobile-v-scale-down-phone-date`,
3130			fYXzSYoFL: `mobile-scanner-line`,
3131			gto2AlH9a: `first-swap`,
3132			gtR4bbMmo: `mobile-v-translate-mockup`,
3133			HNHSkKeEs: `scroll-button-text-effect`,
3134			hRehzxMsA: `phone-typewritter`,
3135			hWAIP7G2T: `mobile-v-swap-1`,
3136			hYSsSwc6I: `translate-mockup`,
3137			J9KaSTV42: `inbox-analysis`,
3138			jEdwh7b68: `scroll-button-text-opacity`,
3139			kOSP9cZxZ: `pill-trigger`,
3140			lk939sFpA: `categories`,
3141			m6zUPJQC1: `scroll-attached`,
3142			MmUGisD4C: `text-opacity`,
3143			r1_RF_XIE: `t-target`,
3144			r3rXcxbpp: `attach-target`,
3145			rI6Q8VESl: `change-yellow-section`,
3146			rtgJpCSyP: `end-send-section`,
3147			rV61bbCMj: `scroll-1`,
3148			SO7n1p303: `second-swap`,
3149			suGwtSNFi: `end-cleanup-section`,
3150			UI9w9RhsI: `mobil-v-categories-section`,
3151			wMcsqMzVG: `scanner-line`,
3152			xNJqlBSzT: `today-feed`,
3153			yGx6nO_a0: `mobile-v-emojis-section`,
3154			ZM1PcInXH: `swap-mockup`,
3155		},
3156		robots: `max-image-preview:large`,
3157		serializationId: `framer-IPfk1`,
3158		title: _n(e, t).title || `Home`,
3159		viewport: `width=device-width`,
3160	}
3161}
3162var bn,
3163	xn,
3164	Sn = e(() => {
3165		vn(),
3166			(bn = 1),
3167			(xn = {
3168				exports: {
3169					default: {
3170						type: `function`,
3171						annotations: { framerContractVersion: `1` },
3172					},
3173					metadataVersion: {
3174						type: `variable`,
3175						annotations: { framerContractVersion: `1` },
3176					},
3177					__FramerMetadata__: { type: `variable` },
3178				},
3179			})
3180	})
3181function Cn(e) {
3182	return new DataView(e.buffer, e.byteOffset, e.byteLength)
3183}
3184function H(e, ...t) {
3185	if (!e)
3186		throw Error(`Assertion Error` + (t.length > 0 ? `: ` + t.join(` `) : ``))
3187}
3188function wn(e) {
3189	throw Error(`Unexpected value: ${e}`)
3190}
3191function U(e, t, n, r) {
3192	H(e >= t, e, `outside lower bound for`, r),
3193		H(e <= n, e, `outside upper bound for`, r)
3194}
3195function Tn(e) {
3196	return typeof e == `string`
3197}
3198function W(e) {
3199	return Number.isFinite(e)
3200}
3201function En(e) {
3202	return e === null
3203}
3204function Dn(e) {
3205	if (En(e)) return 0
3206	switch (e.type) {
3207		case j.Array:
3208			return 1
3209		case j.Boolean:
3210			return 2
3211		case j.Color:
3212			return 3
3213		case j.Date:
3214			return 4
3215		case j.Enum:
3216			return 5
3217		case j.File:
3218			return 6
3219		case j.ResponsiveImage:
3220			return 10
3221		case j.Link:
3222			return 7
3223		case j.Number:
3224			return 8
3225		case j.Object:
3226			return 9
3227		case j.RichText:
3228			return 11
3229		case j.String:
3230			return 12
3231		case j.VectorSetItem:
3232			return 13
3233		default:
3234			wn(e)
3235	}
3236}
3237function On(e) {
3238	const t = e.readUint16(),
3239		n = []
3240	for (let r = 0; r < t; r++) {
3241		const t = G.read(e)
3242		n.push(t)
3243	}
3244	return { type: j.Array, value: n }
3245}
3246function kn(e, t) {
3247	for (const n of (e.writeUint16(t.value.length), t.value)) G.write(e, n)
3248}
3249function An(e, t, n) {
3250	const r = e.value.length,
3251		i = t.value.length
3252	if (r < i) return -1
3253	if (r > i) return 1
3254	for (let i = 0; i < r; i++) {
3255		const r = e.value[i],
3256			a = t.value[i],
3257			o = G.compare(r, a, n)
3258		if (o !== 0) return o
3259	}
3260	return 0
3261}
3262function jn(e) {
3263	return { type: j.Boolean, value: e.readUint8() !== 0 }
3264}
3265function Mn(e, t) {
3266	e.writeUint8(t.value ? 1 : 0)
3267}
3268function Nn(e, t) {
3269	return e.value < t.value ? -1 : e.value > t.value ? 1 : 0
3270}
3271function Pn(e) {
3272	return { type: j.Color, value: e.readString() }
3273}
3274function Fn(e, t) {
3275	e.writeString(t.value)
3276}
3277function In(e, t) {
3278	return e.value < t.value ? -1 : e.value > t.value ? 1 : 0
3279}
3280function Ln(e) {
3281	const t = e.readInt64(),
3282		n = new Date(t)
3283	return { type: j.Date, value: n.toISOString() }
3284}
3285function Rn(e, t) {
3286	const n = new Date(t.value).getTime()
3287	e.writeInt64(n)
3288}
3289function zn(e, t) {
3290	const n = new Date(e.value),
3291		r = new Date(t.value)
3292	return n < r ? -1 : n > r ? 1 : 0
3293}
3294function Bn(e) {
3295	return { type: j.Enum, value: e.readString() }
3296}
3297function Vn(e, t) {
3298	e.writeString(t.value)
3299}
3300function Hn(e, t) {
3301	return e.value < t.value ? -1 : e.value > t.value ? 1 : 0
3302}
3303function Un(e) {
3304	return { type: j.File, value: e.readString() }
3305}
3306function Wn(e, t) {
3307	e.writeString(t.value)
3308}
3309function Gn(e, t) {
3310	return e.value < t.value ? -1 : e.value > t.value ? 1 : 0
3311}
3312function Kn(e) {
3313	return { type: j.Link, value: e.readJson() }
3314}
3315function qn(e, t) {
3316	e.writeJson(t.value)
3317}
3318function Jn(e, t) {
3319	const n = JSON.stringify(e.value),
3320		r = JSON.stringify(t.value)
3321	return n < r ? -1 : n > r ? 1 : 0
3322}
3323function Yn(e) {
3324	return { type: j.Number, value: e.readFloat64() }
3325}
3326function Xn(e, t) {
3327	e.writeFloat64(t.value)
3328}
3329function Zn(e, t) {
3330	return e.value < t.value ? -1 : e.value > t.value ? 1 : 0
3331}
3332function Qn(e) {
3333	const t = e.readUint16(),
3334		n = {}
3335	for (let r = 0; r < t; r++) {
3336		const t = e.readString()
3337		n[t] = G.read(e)
3338	}
3339	return { type: j.Object, value: n }
3340}
3341function $n(e, t) {
3342	const n = Object.entries(t.value)
3343	for (const [t, r] of (e.writeUint16(n.length), n))
3344		e.writeString(t), G.write(e, r)
3345}
3346function er(e, t, n) {
3347	const r = Object.keys(e.value).sort(),
3348		i = Object.keys(t.value).sort()
3349	if (r.length < i.length) return -1
3350	if (r.length > i.length) return 1
3351	for (let a = 0; a < r.length; a++) {
3352		const o = r[a],
3353			s = i[a]
3354		if (o < s) return -1
3355		if (o > s) return 1
3356		const c = e.value[o] ?? null,
3357			l = t.value[s] ?? null,
3358			u = G.compare(c, l, n)
3359		if (u !== 0) return u
3360	}
3361	return 0
3362}
3363function tr(e) {
3364	return { type: j.ResponsiveImage, value: e.readJson() }
3365}
3366function nr(e, t) {
3367	e.writeJson(t.value)
3368}
3369function rr(e, t) {
3370	const n = JSON.stringify(e.value),
3371		r = JSON.stringify(t.value)
3372	return n < r ? -1 : n > r ? 1 : 0
3373}
3374function ir(e) {
3375	const t = e.readInt8()
3376	if (t === 0) return { type: j.RichText, value: e.readUint32() }
3377	if (t === 1) return { type: j.RichText, value: e.readString() }
3378	throw Error(`Invalid rich text pointer`)
3379}
3380function ar(e, t) {
3381	if (W(t.value)) {
3382		e.writeInt8(0), e.writeUint32(t.value)
3383		return
3384	}
3385	if (Tn(t.value)) {
3386		e.writeInt8(1), e.writeString(t.value)
3387		return
3388	}
3389	throw Error(`Invalid rich text pointer`)
3390}
3391function or(e, t) {
3392	const n = e.value,
3393		r = t.value
3394	if ((W(n) && W(r)) || (Tn(n) && Tn(r))) return n < r ? -1 : n > r ? 1 : 0
3395	throw Error(`Invalid rich text pointer`)
3396}
3397function sr(e) {
3398	return { type: j.String, value: e.readString() }
3399}
3400function cr(e, t) {
3401	e.writeString(t.value)
3402}
3403function lr(e, t, n) {
3404	let r = e.value,
3405		i = t.value
3406	return (
3407		n.type === 0 && ((r = e.value.toLowerCase()), (i = t.value.toLowerCase())),
3408		r < i ? -1 : r > i ? 1 : 0
3409	)
3410}
3411function ur(e) {
3412	return { type: j.VectorSetItem, value: e.readUint32() }
3413}
3414function dr(e, t) {
3415	e.writeUint32(t.value)
3416}
3417function fr(e, t) {
3418	const n = e.value,
3419		r = t.value
3420	return n < r ? -1 : n > r ? 1 : 0
3421}
3422async function pr(e) {
3423	const t = Math.floor(Lr * (Math.random() + 1) * 2 ** (e - 1))
3424	await new Promise((e) => {
3425		setTimeout(e, t)
3426	})
3427}
3428async function mr(e, t) {
3429	let n = gr(t),
3430		r = [],
3431		i = 0
3432	for (const e of n) r.push(`${e.from}-${e.to - 1}`), (i += e.to - e.from)
3433	const a = new URL(e),
3434		o = r.join(`,`)
3435	a.searchParams.set(`range`, o)
3436	const s = await zr(a)
3437	if (s.status !== 200)
3438		throw Error(`Request failed: ${s.status} ${s.statusText}`)
3439	const c = await s.arrayBuffer(),
3440		l = new Uint8Array(c)
3441	if (l.length !== i) throw Error(`Request failed: Unexpected response length`)
3442	let u = new Br(),
3443		d = 0
3444	for (const e of n) {
3445		const t = e.to - e.from,
3446			n = d + t,
3447			r = l.subarray(d, n)
3448		u.write(e.from, r), (d = n)
3449	}
3450	return t.map((e) => u.read(e.from, e.to - e.from))
3451}
3452function hr(e, t) {
3453	const n = e.length + t.length,
3454		r = new Uint8Array(n)
3455	return r.set(e, 0), r.set(t, e.length), r
3456}
3457function gr(e) {
3458	H(e.length > 0, `Must have at least one range`)
3459	const t = [...e].sort((e, t) => e.from - t.from),
3460		n = []
3461	for (const e of t) {
3462		const t = n.length - 1,
3463			r = n[t]
3464		r && e.from <= r.to
3465			? (n[t] = { from: r.from, to: Math.max(r.to, e.to) })
3466			: n.push(e)
3467	}
3468	return n
3469}
3470var G,
3471	_r,
3472	vr,
3473	yr,
3474	br,
3475	xr,
3476	Sr,
3477	Cr,
3478	wr,
3479	Tr,
3480	Er,
3481	K,
3482	Dr,
3483	q,
3484	Or,
3485	kr,
3486	Ar,
3487	jr,
3488	Mr,
3489	Nr,
3490	J,
3491	Y,
3492	Pr,
3493	X,
3494	Fr,
3495	Ir,
3496	Lr,
3497	Rr,
3498	zr,
3499	Br,
3500	Z,
3501	Vr,
3502	Hr,
3503	Ur,
3504	Wr = e(() => {
3505		i(),
3506			L(),
3507			(_r = Object.create),
3508			(vr = Object.defineProperty),
3509			(yr = Object.getOwnPropertyDescriptor),
3510			(br = Object.getOwnPropertyNames),
3511			(xr = Object.getPrototypeOf),
3512			(Sr = Object.prototype.hasOwnProperty),
3513			(Cr = (e, t, n) =>
3514				t in e
3515					? vr(e, t, {
3516							enumerable: !0,
3517							configurable: !0,
3518							writable: !0,
3519							value: n,
3520						})
3521					: (e[t] = n)),
3522			(wr = (e, t) => () => (
3523				t || (0, e[br(e)[0]])((t = { exports: {} }).exports, t), t.exports
3524			)),
3525			(Tr = (e, t, n, r) => {
3526				if ((t && typeof t == `object`) || typeof t == `function`)
3527					for (const i of br(t))
3528						Sr.call(e, i) ||
3529							i === n ||
3530							vr(e, i, {
3531								get: () => t[i],
3532								enumerable: !(r = yr(t, i)) || r.enumerable,
3533							})
3534				return e
3535			}),
3536			(Er = (e, t, n) => (
3537				(n = e == null ? {} : _r(xr(e))),
3538				Tr(
3539					!t && e && e.__esModule
3540						? n
3541						: vr(n, `default`, { value: e, enumerable: !0 }),
3542					e,
3543				)
3544			)),
3545			(K = (e, t, n) => Cr(e, typeof t == `symbol` ? t : t + ``, n)),
3546			(Dr = Er(
3547				wr({
3548					"../../../node_modules/dataloader/index.js"(e, t) {
3549						var n,
3550							r = (() => {
3551								function e(e, t) {
3552									if (typeof e != `function`)
3553										throw TypeError(
3554											`DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: ` +
3555												e +
3556												`.`,
3557										)
3558									;(this._batchLoadFn = e),
3559										(this._maxBatchSize = ((e) => {
3560											if (!(!e || !1 !== e.batch)) return 1
3561											var t = e && e.maxBatchSize
3562											if (t === void 0) return 1 / 0
3563											if (typeof t != `number` || t < 1)
3564												throw TypeError(
3565													`maxBatchSize must be a positive number: ` + t,
3566												)
3567											return t
3568										})(t)),
3569										(this._batchScheduleFn = ((e) => {
3570											var t = e && e.batchScheduleFn
3571											if (t === void 0) return i
3572											if (typeof t != `function`)
3573												throw TypeError(
3574													`batchScheduleFn must be a function: ` + t,
3575												)
3576											return t
3577										})(t)),
3578										(this._cacheKeyFn = ((e) => {
3579											var t = e && e.cacheKeyFn
3580											if (t === void 0) return (e) => e
3581											if (typeof t != `function`)
3582												throw TypeError(`cacheKeyFn must be a function: ` + t)
3583											return t
3584										})(t)),
3585										(this._cacheMap = ((e) => {
3586											if (!(!e || !1 !== e.cache)) return null
3587											var t = e && e.cacheMap
3588											if (t === void 0) return new Map()
3589											if (t !== null) {
3590												var n = [`get`, `set`, `delete`, `clear`].filter(
3591													(e) => t && typeof t[e] != `function`,
3592												)
3593												if (n.length !== 0)
3594													throw TypeError(
3595														`Custom cacheMap missing methods: ` + n.join(`, `),
3596													)
3597											}
3598											return t
3599										})(t)),
3600										(this._batch = null),
3601										(this.name = t && t.name ? t.name : null)
3602								}
3603								var t = e.prototype
3604								return (
3605									(t.load = function (e) {
3606										if (e == null)
3607											throw TypeError(
3608												`The loader.load() function must be called with a value, but got: ` +
3609													String(e) +
3610													`.`,
3611											)
3612										var t = ((e) => {
3613												var t = e._batch
3614												if (
3615													t !== null &&
3616													!t.hasDispatched &&
3617													t.keys.length < e._maxBatchSize
3618												)
3619													return t
3620												var n = { hasDispatched: !1, keys: [], callbacks: [] }
3621												return (
3622													(e._batch = n),
3623													e._batchScheduleFn(() => {
3624														;((e, t) => {
3625															var n
3626															if (
3627																((t.hasDispatched = !0), t.keys.length === 0)
3628															) {
3629																o(t)
3630																return
3631															}
3632															try {
3633																n = e._batchLoadFn(t.keys)
3634															} catch (n) {
3635																return a(
3636																	e,
3637																	t,
3638																	TypeError(
3639																		`DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: ` +
3640																			String(n) +
3641																			`.`,
3642																	),
3643																)
3644															}
3645															if (!n || typeof n.then != `function`)
3646																return a(
3647																	e,
3648																	t,
3649																	TypeError(
3650																		`DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: ` +
3651																			String(n) +
3652																			`.`,
3653																	),
3654																)
3655															n.then((e) => {
3656																if (!s(e))
3657																	throw TypeError(
3658																		`DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: ` +
3659																			String(e) +
3660																			`.`,
3661																	)
3662																if (e.length !== t.keys.length)
3663																	throw TypeError(
3664																		`DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.
3665
3666Keys:
3667` +
3668																			String(t.keys) +
3669																			`
3670
3671Values:
3672` +
3673																			String(e),
3674																	)
3675																o(t)
3676																for (var n = 0; n < t.callbacks.length; n++) {
3677																	var r = e[n]
3678																	r instanceof Error
3679																		? t.callbacks[n].reject(r)
3680																		: t.callbacks[n].resolve(r)
3681																}
3682															}).catch((n) => {
3683																a(e, t, n)
3684															})
3685														})(e, n)
3686													}),
3687													n
3688												)
3689											})(this),
3690											n = this._cacheMap,
3691											r = this._cacheKeyFn(e)
3692										if (n) {
3693											var i = n.get(r)
3694											if (i) {
3695												var c = (t.cacheHits ||= [])
3696												return new Promise((e) => {
3697													c.push(() => {
3698														e(i)
3699													})
3700												})
3701											}
3702										}
3703										t.keys.push(e)
3704										var l = new Promise((e, n) => {
3705											t.callbacks.push({ resolve: e, reject: n })
3706										})
3707										return n && n.set(r, l), l
3708									}),
3709									(t.loadMany = function (e) {
3710										if (!s(e))
3711											throw TypeError(
3712												`The loader.loadMany() function must be called with Array<key> but got: ` +
3713													e +
3714													`.`,
3715											)
3716										for (var t = [], n = 0; n < e.length; n++)
3717											t.push(this.load(e[n]).catch((e) => e))
3718										return Promise.all(t)
3719									}),
3720									(t.clear = function (e) {
3721										var t = this._cacheMap
3722										if (t) {
3723											var n = this._cacheKeyFn(e)
3724											t.delete(n)
3725										}
3726										return this
3727									}),
3728									(t.clearAll = function () {
3729										var e = this._cacheMap
3730										return e && e.clear(), this
3731									}),
3732									(t.prime = function (e, t) {
3733										var n = this._cacheMap
3734										if (n) {
3735											var r,
3736												i = this._cacheKeyFn(e)
3737											n.get(i) === void 0 &&
3738												(t instanceof Error
3739													? (r = Promise.reject(t)).catch(() => {})
3740													: (r = Promise.resolve(t)),
3741												n.set(i, r))
3742										}
3743										return this
3744									}),
3745									e
3746								)
3747							})(),
3748							i =
3749								typeof process == `object` &&
3750								typeof process.nextTick == `function`
3751									? (e) => {
3752											;(n ||= Promise.resolve()),
3753												n.then(() => {
3754													process.nextTick(e)
3755												})
3756										}
3757									: typeof setImmediate == `function`
3758										? (e) => {
3759												setImmediate(e)
3760											}
3761										: (e) => {
3762												setTimeout(e)
3763											}
3764						function a(e, t, n) {
3765							o(t)
3766							for (var r = 0; r < t.keys.length; r++)
3767								e.clear(t.keys[r]), t.callbacks[r].reject(n)
3768						}
3769						function o(e) {
3770							if (e.cacheHits)
3771								for (var t = 0; t < e.cacheHits.length; t++) e.cacheHits[t]()
3772						}
3773						function s(e) {
3774							return (
3775								typeof e == `object` &&
3776								!!e &&
3777								typeof e.length == `number` &&
3778								(e.length === 0 ||
3779									(e.length > 0 &&
3780										Object.prototype.hasOwnProperty.call(e, e.length - 1)))
3781							)
3782						}
3783						t.exports = r
3784					},
3785				})(),
3786				1,
3787			)),
3788			(q = {
3789				Uint8: 1,
3790				Uint16: 2,
3791				Uint32: 4,
3792				BigUint64: 8,
3793				Int8: 1,
3794				Int16: 2,
3795				Int32: 4,
3796				BigInt64: 8,
3797				Float32: 4,
3798				Float64: 8,
3799			}),
3800			(Or = class {
3801				getOffset() {
3802					return this.offset
3803				}
3804				ensureLength(e) {
3805					const t = this.bytes.length
3806					if (!(this.offset + e <= t)) throw Error(`Reading out of bounds`)
3807				}
3808				readUint8() {
3809					const e = q.Uint8
3810					this.ensureLength(e)
3811					const t = this.view.getUint8(this.offset)
3812					return (this.offset += e), t
3813				}
3814				readUint16() {
3815					const e = q.Uint16
3816					this.ensureLength(e)
3817					const t = this.view.getUint16(this.offset)
3818					return (this.offset += e), t
3819				}
3820				readUint32() {
3821					const e = q.Uint32
3822					this.ensureLength(e)
3823					const t = this.view.getUint32(this.offset)
3824					return (this.offset += e), t
3825				}
3826				readUint64() {
3827					const e = this.readBigUint64()
3828					return Number(e)
3829				}
3830				readBigUint64() {
3831					const e = q.BigUint64
3832					this.ensureLength(e)
3833					const t = this.view.getBigUint64(this.offset)
3834					return (this.offset += e), t
3835				}
3836				readInt8() {
3837					const e = q.Int8
3838					this.ensureLength(e)
3839					const t = this.view.getInt8(this.offset)
3840					return (this.offset += e), t
3841				}
3842				readInt16() {
3843					const e = q.Int16
3844					this.ensureLength(e)
3845					const t = this.view.getInt16(this.offset)
3846					return (this.offset += e), t
3847				}
3848				readInt32() {
3849					const e = q.Int32
3850					this.ensureLength(e)
3851					const t = this.view.getInt32(this.offset)
3852					return (this.offset += e), t
3853				}
3854				readInt64() {
3855					const e = this.readBigInt64()
3856					return Number(e)
3857				}
3858				readBigInt64() {
3859					const e = q.BigInt64
3860					this.ensureLength(e)
3861					const t = this.view.getBigInt64(this.offset)
3862					return (this.offset += e), t
3863				}
3864				readFloat32() {
3865					const e = q.Float32
3866					this.ensureLength(e)
3867					const t = this.view.getFloat32(this.offset)
3868					return (this.offset += e), t
3869				}
3870				readFloat64() {
3871					const e = q.Float64
3872					this.ensureLength(e)
3873					const t = this.view.getFloat64(this.offset)
3874					return (this.offset += e), t
3875				}
3876				readBytes(e) {
3877					const t = this.offset,
3878						n = t + e,
3879						r = this.bytes.subarray(t, n)
3880					return (this.offset = n), r
3881				}
3882				readString() {
3883					const e = this.readUint32(),
3884						t = this.readBytes(e)
3885					return this.decoder.decode(t)
3886				}
3887				readJson() {
3888					const e = this.readString()
3889					return JSON.parse(e)
3890				}
3891				constructor(e) {
3892					;(this.bytes = e),
3893						K(this, `offset`, 0),
3894						K(this, `view`),
3895						K(this, `decoder`, new TextDecoder()),
3896						(this.view = Cn(this.bytes))
3897				}
3898			}),
3899			l !== void 0 && l.requestIdleCallback,
3900			(kr = 1024),
3901			(Ar = 1.5),
3902			(jr = (e) => 2 ** e - 1),
3903			(Mr = (e) => -(2 ** (e - 1))),
3904			(Nr = (e) => 2 ** (e - 1) - 1),
3905			(J = {
3906				Uint8: 0,
3907				Uint16: 0,
3908				Uint32: 0,
3909				Uint64: 0,
3910				BigUint64: 0,
3911				Int8: Mr(8),
3912				Int16: Mr(16),
3913				Int32: Mr(32),
3914				Int64: -(2 ** 53 - 1),
3915				BigInt64: -(BigInt(2) ** BigInt(63)),
3916			}),
3917			(Y = {
3918				Uint8: jr(8),
3919				Uint16: jr(16),
3920				Uint32: jr(32),
3921				Uint64: 2 ** 53 - 1,
3922				BigUint64: BigInt(2) ** BigInt(64) - BigInt(1),
3923				Int8: Nr(8),
3924				Int16: Nr(16),
3925				Int32: Nr(32),
3926				Int64: 2 ** 53 - 1,
3927				BigInt64: BigInt(2) ** BigInt(63) - BigInt(1),
3928			}),
3929			(Pr = class {
3930				getOffset() {
3931					return this.offset
3932				}
3933				slice(e = 0, t = this.offset) {
3934					return this.bytes.slice(e, t)
3935				}
3936				subarray(e = 0, t = this.offset) {
3937					return this.bytes.subarray(e, t)
3938				}
3939				ensureLength(e) {
3940					const t = this.bytes.length
3941					if (this.offset + e <= t) return
3942					const n = new Uint8Array(Math.ceil(t * Ar) + e)
3943					n.set(this.bytes), (this.bytes = n), (this.view = Cn(n))
3944				}
3945				writeUint8(e) {
3946					U(e, J.Uint8, Y.Uint8, `Uint8`)
3947					const t = q.Uint8
3948					this.ensureLength(t),
3949						this.view.setUint8(this.offset, e),
3950						(this.offset += t)
3951				}
3952				writeUint16(e) {
3953					U(e, J.Uint16, Y.Uint16, `Uint16`)
3954					const t = q.Uint16
3955					this.ensureLength(t),
3956						this.view.setUint16(this.offset, e),
3957						(this.offset += t)
3958				}
3959				writeUint32(e) {
3960					U(e, J.Uint32, Y.Uint32, `Uint32`)
3961					const t = q.Uint32
3962					this.ensureLength(t),
3963						this.view.setUint32(this.offset, e),
3964						(this.offset += t)
3965				}
3966				writeUint64(e) {
3967					U(e, J.Uint64, Y.Uint64, `Uint64`)
3968					const t = BigInt(e)
3969					this.writeBigUint64(t)
3970				}
3971				writeBigUint64(e) {
3972					U(e, J.BigUint64, Y.BigUint64, `BigUint64`)
3973					const t = q.BigUint64
3974					this.ensureLength(t),
3975						this.view.setBigUint64(this.offset, e),
3976						(this.offset += t)
3977				}
3978				writeInt8(e) {
3979					U(e, J.Int8, Y.Int8, `Int8`)
3980					const t = q.Int8
3981					this.ensureLength(t),
3982						this.view.setInt8(this.offset, e),
3983						(this.offset += t)
3984				}
3985				writeInt16(e) {
3986					U(e, J.Int16, Y.Int16, `Int16`)
3987					const t = q.Int16
3988					this.ensureLength(t),
3989						this.view.setInt16(this.offset, e),
3990						(this.offset += t)
3991				}
3992				writeInt32(e) {
3993					U(e, J.Int32, Y.Int32, `Int32`)
3994					const t = q.Int32
3995					this.ensureLength(t),
3996						this.view.setInt32(this.offset, e),
3997						(this.offset += t)
3998				}
3999				writeInt64(e) {
4000					U(e, J.Int64, Y.Int64, `Int64`)
4001					const t = BigInt(e)
4002					this.writeBigInt64(t)
4003				}
4004				writeBigInt64(e) {
4005					U(e, J.BigInt64, Y.BigInt64, `BigInt64`)
4006					const t = q.BigInt64
4007					this.ensureLength(t),
4008						this.view.setBigInt64(this.offset, e),
4009						(this.offset += t)
4010				}
4011				writeFloat32(e) {
4012					const t = q.Float32
4013					this.ensureLength(t),
4014						this.view.setFloat32(this.offset, e),
4015						(this.offset += t)
4016				}
4017				writeFloat64(e) {
4018					const t = q.Float64
4019					this.ensureLength(t),
4020						this.view.setFloat64(this.offset, e),
4021						(this.offset += t)
4022				}
4023				writeBytes(e) {
4024					const t = e.length
4025					this.ensureLength(t),
4026						this.bytes.set(e, this.offset),
4027						(this.offset += t)
4028				}
4029				encodeString(e) {
4030					const t = this.encodedStrings.get(e)
4031					if (t) return t
4032					const n = this.encoder.encode(e)
4033					return this.encodedStrings.set(e, n), n
4034				}
4035				writeString(e) {
4036					const t = this.encodeString(e),
4037						n = t.length
4038					this.writeUint32(n), this.writeBytes(t)
4039				}
4040				writeJson(e) {
4041					const t = JSON.stringify(e)
4042					this.writeString(t)
4043				}
4044				constructor() {
4045					K(this, `offset`, 0),
4046						K(this, `bytes`, new Uint8Array(kr)),
4047						K(this, `view`, Cn(this.bytes)),
4048						K(this, `encoder`, new TextEncoder()),
4049						K(this, `encodedStrings`, new Map())
4050				}
4051			}),
4052			(X = class e {
4053				static fromString(t) {
4054					const [n, r, i] = t.split(`/`).map(Number)
4055					return (
4056						H(W(n), `Invalid chunkId`),
4057						H(W(r), `Invalid offset`),
4058						H(W(i), `Invalid length`),
4059						new e(n, r, i)
4060					)
4061				}
4062				toString() {
4063					return `${this.chunkId}/${this.offset}/${this.length}`
4064				}
4065				static read(t) {
4066					return new e(t.readUint16(), t.readUint32(), t.readUint32())
4067				}
4068				write(e) {
4069					e.writeUint16(this.chunkId),
4070						e.writeUint32(this.offset),
4071						e.writeUint32(this.length)
4072				}
4073				compare(e) {
4074					return this.chunkId < e.chunkId
4075						? -1
4076						: this.chunkId > e.chunkId
4077							? 1
4078							: this.offset < e.offset
4079								? -1
4080								: this.offset > e.offset
4081									? 1
4082									: (H(this.length === e.length), 0)
4083				}
4084				constructor(e, t, n) {
4085					;(this.chunkId = e), (this.offset = t), (this.length = n)
4086				}
4087			}),
4088			((e) => {
4089				;(e.read = (e) => {
4090					const t = e.readUint8()
4091					switch (t) {
4092						case 0:
4093							return null
4094						case 1:
4095							return On(e)
4096						case 2:
4097							return jn(e)
4098						case 3:
4099							return Pn(e)
4100						case 4:
4101							return Ln(e)
4102						case 5:
4103							return Bn(e)
4104						case 6:
4105							return Un(e)
4106						case 7:
4107							return Kn(e)
4108						case 8:
4109							return Yn(e)
4110						case 9:
4111							return Qn(e)
4112						case 10:
4113							return tr(e)
4114						case 11:
4115							return ir(e)
4116						case 12:
4117							return sr(e)
4118						case 13:
4119							return ur(e)
4120						default:
4121							wn(t)
4122					}
4123				}),
4124					(e.write = (e, t) => {
4125						const n = Dn(t)
4126						if ((e.writeUint8(n), !En(t)))
4127							switch (t.type) {
4128								case j.Array:
4129									return kn(e, t)
4130								case j.Boolean:
4131									return Mn(e, t)
4132								case j.Color:
4133									return Fn(e, t)
4134								case j.Date:
4135									return Rn(e, t)
4136								case j.Enum:
4137									return Vn(e, t)
4138								case j.File:
4139									return Wn(e, t)
4140								case j.Link:
4141									return qn(e, t)
4142								case j.Number:
4143									return Xn(e, t)
4144								case j.Object:
4145									return $n(e, t)
4146								case j.ResponsiveImage:
4147									return nr(e, t)
4148								case j.RichText:
4149									return ar(e, t)
4150								case j.VectorSetItem:
4151									return dr(e, t)
4152								case j.String:
4153									return cr(e, t)
4154								default:
4155									wn(t)
4156							}
4157					}),
4158					(e.compare = (e, t, n) => {
4159						const r = Dn(e),
4160							i = Dn(t)
4161						if (r < i) return -1
4162						if (r > i) return 1
4163						if (En(e) || En(t)) return 0
4164						switch (e.type) {
4165							case j.Array:
4166								return H(t.type === j.Array), An(e, t, n)
4167							case j.Boolean:
4168								return H(t.type === j.Boolean), Nn(e, t)
4169							case j.Color:
4170								return H(t.type === j.Color), In(e, t)
4171							case j.Date:
4172								return H(t.type === j.Date), zn(e, t)
4173							case j.Enum:
4174								return H(t.type === j.Enum), Hn(e, t)
4175							case j.File:
4176								return H(t.type === j.File), Gn(e, t)
4177							case j.Link:
4178								return H(t.type === j.Link), Jn(e, t)
4179							case j.Number:
4180								return H(t.type === j.Number), Zn(e, t)
4181							case j.Object:
4182								return H(t.type === j.Object), er(e, t, n)
4183							case j.ResponsiveImage:
4184								return H(t.type === j.ResponsiveImage), rr(e, t)
4185							case j.RichText:
4186								return H(t.type === j.RichText), or(e, t)
4187							case j.VectorSetItem:
4188								return H(t.type === j.VectorSetItem), fr(e, t)
4189							case j.String:
4190								return H(t.type === j.String), lr(e, t, n)
4191							default:
4192								wn(e)
4193						}
4194					})
4195			})((G ||= {})),
4196			(Fr = class e {
4197				sortEntries() {
4198					this.entries.sort((e, t) => {
4199						for (let n = 0; n < this.fieldNames.length; n++) {
4200							const r = e.values[n],
4201								i = t.values[n],
4202								a = G.compare(r, i, this.options.collation)
4203							if (a !== 0) return a
4204						}
4205						return e.pointer.compare(t.pointer)
4206					})
4207				}
4208				static deserialize(t) {
4209					const n = new Or(t),
4210						r = n.readJson(),
4211						i = n.readUint8(),
4212						a = []
4213					for (let e = 0; e < i; e++) {
4214						const e = n.readString()
4215						a.push(e)
4216					}
4217					const o = new e(a, { collation: r }),
4218						s = n.readUint32()
4219					for (let e = 0; e < s; e++) {
4220						const e = []
4221						for (let t = 0; t < i; t++) {
4222							const t = G.read(n)
4223							e.push(t)
4224						}
4225						const t = X.read(n)
4226					
4226	o.entries.push({ values: e, pointer: t })
4227					}
4228					return o
4229				}
4230				serialize() {
4231					const e = new Pr()
4232					for (const t of (e.writeJson(this.options.collation),
4233					e.writeUint8(this.fieldNames.length),
4234					this.fieldNames))
4235						e.writeString(t)
4236					for (const t of (this.sortEntries(),
4237					e.writeUint32(this.entries.length),
4238					this.entries)) {
4239						const { values: n, pointer: r } = t
4240						for (const t of n) G.write(e, t)
4241						r.write(e)
4242					}
4243					return e.subarray()
4244				}
4245				addItem(e, t) {
4246					const n = this.fieldNames.map((t) => e.getField(t) ?? null)
4247					this.entries.push({ values: n, pointer: t })
4248				}
4249				constructor(e, t) {
4250					;(this.fieldNames = e), (this.options = t), K(this, `entries`, [])
4251				}
4252			}),
4253			(Ir = 3),
4254			(Lr = 250),
4255			(Rr = [408, 429, 500, 502, 503, 504]),
4256			(zr = async (e, t) => {
4257				let n = 0
4258				for (;;) {
4259					try {
4260						const r = await fetch(e, t)
4261						if (!Rr.includes(r.status) || ++n > Ir) return r
4262					} catch (e) {
4263						if (t?.signal?.aborted || ++n > Ir) throw e
4264					}
4265					await pr(n)
4266				}
4267			}),
4268			(Br = class {
4269				read(e, t) {
4270					for (const n of this.chunks) {
4271						if (e < n.start) break
4272						if (e > n.end) continue
4273						if (e + t > n.end) break
4274						const r = e - n.start,
4275							i = r + t
4276						return n.data.slice(r, i)
4277					}
4278					throw Error(`Missing data`)
4279				}
4280				write(e, t) {
4281					let n = e,
4282						r = n + t.length,
4283						i = 0,
4284						a = this.chunks.length
4285					for (; i < a; i++) {
4286						const e = this.chunks[i]
4287						if ((H(e, `Missing chunk`), !(n > e.end))) {
4288							if (n > e.start) {
4289								const r = n - e.start
4290								;(t = hr(e.data.subarray(0, r), t)), (n = e.start)
4291							}
4292							break
4293						}
4294					}
4295					for (; a > i; a--) {
4296						const e = this.chunks[a - 1]
4297						if ((H(e, `Missing chunk`), !(r < e.start))) {
4298							if (r < e.end) {
4299								const n = r - e.start,
4300									i = e.data.subarray(n)
4301								;(t = hr(t, i)), (r = e.end)
4302							}
4303							break
4304						}
4305					}
4306					const o = { start: n, end: r, data: t },
4307						s = a - i
4308					this.chunks.splice(i, s, o)
4309				}
4310				constructor() {
4311					K(this, `chunks`, [])
4312				}
4313			}),
4314			(Z = class {
4315				async loadModel() {
4316					const [e] = await mr(this.options.url, [this.options.range])
4317					return H(e, `Failed to load model`), Fr.deserialize(e)
4318				}
4319				async getModel() {
4320					return (
4321						(this.modelPromise ??= this.loadModel()),
4322						(this.model ??= await this.modelPromise),
4323						this.model
4324					)
4325				}
4326				async lookupItems(e) {
4327					H(e.length === this.fields.length, `Invalid query length`)
4328					const t = await this.getModel(),
4329						n = e.reduce(
4330							(e, t, n) =>
4331								e.flatMap((e) => {
4332									switch (t.type) {
4333										case `All`:
4334											return [e]
4335										case `Equals`:
4336											return this.queryEquals(e, t, n)
4337										case `NotEquals`:
4338											return this.queryNotEquals(e, t, n)
4339										case `LessThan`:
4340											return this.queryLessThan(e, t, n)
4341										case `GreaterThan`:
4342											return this.queryGreaterThan(e, t, n)
4343										case `Contains`:
4344											return this.queryContains(e, t, n)
4345										case `StartsWith`:
4346											return this.queryStartsWith(e, t, n)
4347										case `EndsWith`:
4348											return this.queryEndsWith(e, t, n)
4349										default:
4350											wn(t)
4351									}
4352								}),
4353							[t.entries],
4354						),
4355						r = []
4356					for (const e of n)
4357						for (const t of e) {
4358							const e = {}
4359							for (let n = 0; n < this.options.fieldNames.length; n++) {
4360								const r = this.options.fieldNames[n]
4361								e[r] = t.values[n]
4362							}
4363							r.push({ pointer: t.pointer.toString(), data: e })
4364						}
4365					return r
4366				}
4367				queryEquals(e, t, n) {
4368					const r = this.getLeftMost(e, n, t.value),
4369						i = this.getRightMost(e, n, t.value),
4370						a = e.slice(r, i + 1)
4371					return a.length > 0 ? [a] : []
4372				}
4373				queryNotEquals(e, t, n) {
4374					const r = this.getLeftMost(e, n, t.value),
4375						i = this.getRightMost(e, n, t.value),
4376						a = [],
4377						o = e.slice(0, r)
4378					o.length > 0 && a.push(o)
4379					const s = e.slice(i + 1)
4380					return s.length > 0 && a.push(s), a
4381				}
4382				queryLessThan(e, t, n) {
4383					const r = this.getRightMost(e, n, null)
4384					if (((e = e.slice(r + 1)), t.inclusive)) {
4385						const r = this.getRightMost(e, n, t.value),
4386							i = e.slice(0, r + 1)
4387						return i.length > 0 ? [i] : []
4388					}
4389					const i = this.getLeftMost(e, n, t.value),
4390						a = e.slice(0, i)
4391					return a.length > 0 ? [a] : []
4392				}
4393				queryGreaterThan(e, t, n) {
4394					const r = this.getRightMost(e, n, null)
4395					if (((e = e.slice(r + 1)), t.inclusive)) {
4396						const r = this.getLeftMost(e, n, t.value),
4397							i = e.slice(r)
4398						return i.length > 0 ? [i] : []
4399					}
4400					const i = this.getRightMost(e, n, t.value),
4401						a = e.slice(i + 1)
4402					return a.length > 0 ? [a] : []
4403				}
4404				queryContains(e, t, n) {
4405					return this.findItems(e, n, (e) => {
4406						if (e?.type !== j.String || t.value?.type !== j.String) return !1
4407						let n = e.value,
4408							r = t.value.value
4409						return (
4410							this.collation.type === 0 &&
4411								((n = n.toLowerCase()), (r = r.toLowerCase())),
4412							n.includes(r)
4413						)
4414					})
4415				}
4416				queryStartsWith(e, t, n) {
4417					return this.findItems(e, n, (e) => {
4418						if (e?.type !== j.String || t.value?.type !== j.String) return !1
4419						let n = e.value,
4420							r = t.value.value
4421						return (
4422							this.collation.type === 0 &&
4423								((n = n.toLowerCase()), (r = r.toLowerCase())),
4424							n.startsWith(r)
4425						)
4426					})
4427				}
4428				queryEndsWith(e, t, n) {
4429					return this.findItems(e, n, (e) => {
4430						if (e?.type !== j.String || t.value?.type !== j.String) return !1
4431						let n = e.value,
4432							r = t.value.value
4433						return (
4434							this.collation.type === 0 &&
4435								((n = n.toLowerCase()), (r = r.toLowerCase())),
4436							n.endsWith(r)
4437						)
4438					})
4439				}
4440				getLeftMost(e, t, n) {
4441					let r = 0,
4442						i = e.length
4443					while (r < i) {
4444						const a = (r + i) >> 1,
4445							o = e[a].values[t]
4446						0 > G.compare(o, n, this.collation) ? (r = a + 1) : (i = a)
4447					}
4448					return r
4449				}
4450				getRightMost(e, t, n) {
4451					let r = 0,
4452						i = e.length
4453					while (r < i) {
4454						const a = (r + i) >> 1,
4455							o = e[a].values[t]
4456						G.compare(o, n, this.collation) > 0 ? (i = a) : (r = a + 1)
4457					}
4458					return i - 1
4459				}
4460				findItems(e, t, n) {
4461					let r = [],
4462						i = 0
4463					for (let a = 0; a < e.length; a++) {
4464						const o = e[a].values[t]
4465						if (!n(o)) {
4466							if (i < a) {
4467								const t = e.slice(i, a)
4468								r.push(t)
4469							}
4470							i = a + 1
4471						}
4472					}
4473					if (i < e.length) {
4474						const t = e.slice(i)
4475						r.push(t)
4476					}
4477					return r
4478				}
4479				constructor(e) {
4480					;(this.options = e),
4481						K(this, `schema`),
4482						K(this, `fields`),
4483						K(this, `supportedLookupTypes`, [
4484							`All`,
4485							`Equals`,
4486							`NotEquals`,
4487							`LessThan`,
4488							`GreaterThan`,
4489							`Contains`,
4490							`StartsWith`,
4491							`EndsWith`,
4492						]),
4493						K(this, `modelPromise`),
4494						K(this, `model`),
4495						K(this, `collation`)
4496					const t = {},
4497						n = []
4498					for (const e of this.options.fieldNames) {
4499						const r = this.options.collectionSchema[e]
4500						H(r, `Missing definition for field`, e),
4501							(t[e] = r),
4502							n.push({ type: `Identifier`, name: e })
4503					}
4504					;(this.schema = t),
4505						(this.fields = n),
4506						(this.collation = this.options.collation)
4507				}
4508			}),
4509			(Vr = class e {
4510				static read(t) {
4511					const n = new e(),
4512						r = t.readUint16()
4513					for (let e = 0; e < r; e++) {
4514						const e = t.readString(),
4515							r = G.read(t)
4516						n.setField(e, r)
4517					}
4518					return n
4519				}
4520				write(e) {
4521					for (const [t, n] of (e.writeUint16(this.fields.size), this.fields))
4522						e.writeString(t), G.write(e, n)
4523				}
4524				getData() {
4525					const e = {}
4526					for (const [t, n] of this.fields) e[t] = n
4527					return e
4528				}
4529				setField(e, t) {
4530					this.fields.set(e, t)
4531				}
4532				getField(e) {
4533					return this.fields.get(e)
4534				}
4535				constructor() {
4536					K(this, `fields`, new Map())
4537				}
4538			}),
4539			(Hr = class {
4540				scanItems() {
4541					return (
4542						(this.itemsPromise ??= zr(this.url).then(async (e) => {
4543							if (!e.ok)
4544								throw Error(`Request failed: ${e.status} ${e.statusText}`)
4545							const t = await e.arrayBuffer(),
4546								n = new Or(new Uint8Array(t)),
4547								r = [],
4548								i = n.readUint32()
4549							for (let e = 0; e < i; e++) {
4550								const e = n.getOffset(),
4551									t = Vr.read(n),
4552									i = n.getOffset() - e,
4553									a = new X(this.id, e, i).toString(),
4554									o = { pointer: a, data: t.getData() }
4555								this.itemLoader.prime(a, o), r.push(o)
4556							}
4557							return r
4558						})),
4559						this.itemsPromise
4560					)
4561				}
4562				resolveItem(e) {
4563					return this.itemLoader.load(e)
4564				}
4565				constructor(e, t) {
4566					;(this.id = e),
4567						(this.url = t),
4568						K(this, `itemsPromise`),
4569						K(
4570							this,
4571							`itemLoader`,
4572							new Dr.default(
4573								async (e) => {
4574									const t = e.map((e) => {
4575										const t = X.fromString(e)
4576										return { from: t.offset, to: t.offset + t.length }
4577									})
4578									return (await mr(this.url, t)).map((t, n) => {
4579										const r = new Or(t),
4580											i = Vr.read(r),
4581											a = e[n]
4582										return (
4583											H(a, `Missing pointer`), { pointer: a, data: i.getData() }
4584										)
4585									})
4586								},
4587								{ maxBatchSize: 250 },
4588							),
4589						)
4590				}
4591			}),
4592			(Ur = class {
4593				async scanItems() {
4594					return (
4595						await Promise.all(this.chunks.map(async (e) => e.scanItems()))
4596					).flat()
4597				}
4598				resolveItems(e) {
4599					return Promise.all(
4600						e.map((e) => {
4601							const t = X.fromString(e),
4602								n = this.chunks[t.chunkId]
4603							return H(n, `Missing chunk`), n.resolveItem(e)
4604						}),
4605					)
4606				}
4607				compareItems(e, t) {
4608					const n = X.fromString(e.pointer),
4609						r = X.fromString(t.pointer)
4610					return n.compare(r)
4611				}
4612				compareValues(e, t, n) {
4613					return G.compare(e, t, n)
4614				}
4615				constructor(e) {
4616					;(this.options = e),
4617						K(this, `id`),
4618						K(this, `schema`),
4619						K(this, `indexes`),
4620						K(this, `resolveRichText`),
4621						K(this, `resolveVectorSetItem`),
4622						K(this, `chunks`),
4623						(this.chunks = this.options.chunks.map((e, t) => new Hr(t, e))),
4624						(this.schema = e.schema),
4625						(this.indexes = e.indexes),
4626						(this.resolveRichText = e.resolveRichText),
4627						(this.resolveVectorSetItem = e.resolveVectorSetItem),
4628						(this.id = e.id)
4629				}
4630			})
4631	})
4632function Gr(e) {
4633	return typeof e == `object` && !!e && !d(e) && Jr in e
4634}
4635function Kr(e, ...t) {
4636	if (!e)
4637		throw Error(`Assertion Error` + (t.length > 0 ? `: ` + t.join(` `) : ``))
4638}
4639function qr(e) {
4640	const t = new Map()
4641	return (n) => {
4642		const r = t.get(n)
4643		if (r) return r
4644		const i = (function t(n) {
4645			switch (n[0]) {
4646				case 1: {
4647					const [, ...e] = n
4648					return y(s, void 0, ...e.map(t))
4649				}
4650				case 2: {
4651					const [, e, ...r] = n
4652					return y(oe, e, ...r.map(t))
4653				}
4654				case 3: {
4655					const [, r, i, a, o] = n
4656					for (const e of a) {
4657						const n = i[e]
4658						n && (i[e] = t(n))
4659					}
4660					for (const t of o) {
4661						const n = i[t]
4662						if (typeof n != `string`) continue
4663						const r = e[n]
4664						r && (Gr(r) && r.preload(), (i[t] = r))
4665					}
4666					const s = e[r]
4667					return (
4668						Kr(s, `Module not found`),
4669						Gr(s) && s.preload(),
4670						u(I, {
4671							componentIdentifier: r,
4672							children: (e) => u(ce, { component: s, props: { ...e, ...i } }),
4673						})
4674					)
4675				}
4676				case 4: {
4677					const [, e, r, ...i] = n,
4678						a = i.map(t)
4679					return y(e === `a` ? S.a : e, r, ...a)
4680				}
4681				case 5: {
4682					const [, e] = n
4683					return e
4684				}
4685			}
4686		})(JSON.parse(n))
4687		return t.set(n, i), i
4688	}
4689}
4689
4690var Q,
4691	Jr,
4692	Yr,
4693	Xr = e(() => {
4694		i(),
4695			_(),
4696			L(),
4697			n(),
4698			l !== void 0 && l.requestIdleCallback,
4699			(Jr = `preload`),
4700			(Yr =
4701				(((Q = Yr || {})[(Q.Fragment = 1)] = `Fragment`),
4702				(Q[(Q.Link = 2)] = `Link`),
4703				(Q[(Q.Module = 3)] = `Module`),
4704				(Q[(Q.Tag = 4)] = `Tag`),
4705				(Q[(Q.Text = 5)] = `Text`),
4706				Q))
4707	}),
4708	$,
4709	Zr,
4710	Qr,
4711	$r,
4712	ei,
4713	ti,
4714	ni,
4715	ri,
4716	ii,
4717	ai,
4718	oi,
4719	si,
4720	ci,
4721	li,
4722	ui,
4723	di,
4724	fi,
4725	pi,
4726	mi,
4727	hi,
4728	gi = e(() => {
4729		L(),
4730			Wr(),
4731			Xr(),
4732			($ = {
4733				BG5Gh3GNP: { isNullable: !0, type: j.String },
4734				createdAt: { isNullable: !0, type: j.Date },
4735				id: { isNullable: !1, type: j.String },
4736				nextItemId: { isNullable: !0, type: j.String },
4737				oTS9hKpKi: { isNullable: !0, type: j.String },
4738				po3kv56Yb: { isNullable: !0, type: j.RichText },
4739				previousItemId: { isNullable: !0, type: j.String },
4740				updatedAt: { isNullable: !0, type: j.Date },
4741			}),
4742			(Zr = [`id`]),
4743			(Qr = { type: 1 }),
4744			($r = [`previousItemId`]),
4745			(ei = [`nextItemId`]),
4746			(ti = [`id`, `oTS9hKpKi`]),
4747			(ni = [`oTS9hKpKi`, `id`]),
4748			(ri = [`BG5Gh3GNP`]),
4749			(ii = { type: 0 }),
4750			(ai = [`oTS9hKpKi`]),
4751			(oi = [`po3kv56Yb`]),
4752			(si = []),
4753			(ci = (e) => {
4754				const t = si[e]
4755				if (t) return t().then((e) => e.default)
4756			}),
4757			(li = qr({})),
4758			(ui = new M()),
4759			(di = {
4760				collectionByLocaleId: {
4761					default: new Ur({
4762						chunks: [
4763							new URL(
4764								`./YYaVL7KRJ-chunk-default-0.framercms`,
4765								`/framer-assets/scripts/YYaVL7KRJ.js`,
4766							).href.replace(`/modules/`, `/cms/`),
4767						],
4768						id: `c1908267-d9c9-49dd-80d3-f0834cba3d76default`,
4769						indexes: [
4770							new Z({
4771								collation: Qr,
4772								collectionSchema: $,
4773								fieldNames: Zr,
4774								range: { from: 0, to: 49 },
4775								url: new URL(
4776									`./YYaVL7KRJ-indexes-default-0.framercms`,
4777									`/framer-assets/scripts/YYaVL7KRJ.js`,
4778								).href.replace(`/modules/`, `/cms/`),
4779							}),
4780							new Z({
4781								collation: Qr,
4782								collectionSchema: $,
4783								fieldNames: $r,
4784								range: { from: 49, to: 97 },
4785								url: new URL(
4786									`./YYaVL7KRJ-indexes-default-0.framercms`,
4787									`/framer-assets/scripts/YYaVL7KRJ.js`,
4788								).href.replace(`/modules/`, `/cms/`),
4789							}),
4790							new Z({
4791								collation: Qr,
4792								collectionSchema: $,
4793								fieldNames: ei,
4794								range: { from: 97, to: 141 },
4795								url: new URL(
4796									`./YYaVL7KRJ-indexes-default-0.framercms`,
4797									`/framer-assets/scripts/YYaVL7KRJ.js`,
4798								).href.replace(`/modules/`, `/cms/`),
4799							}),
4800							new Z({
4801								collation: Qr,
4802								collectionSchema: $,
4803								fieldNames: ti,
4804								range: { from: 141, to: 224 },
4805								url: new URL(
4806									`./YYaVL7KRJ-indexes-default-0.framercms`,
4807									`/framer-assets/scripts/YYaVL7KRJ.js`,
4808								).href.replace(`/modules/`, `/cms/`),
4809							}),
4810							new Z({
4811								collation: Qr,
4812								collectionSchema: $,
4813								fieldNames: ni,
4814								range: { from: 224, to: 307 },
4815								url: new URL(
4816									`./YYaVL7KRJ-indexes-default-0.framercms`,
4817									`/framer-assets/scripts/YYaVL7KRJ.js`,
4818								).href.replace(`/modules/`, `/cms/`),
4819							}),
4820							new Z({
4821								collation: ii,
4822								collectionSchema: $,
4823								fieldNames: ri,
4824								range: { from: 307, to: 370 },
4825								url: new URL(
4826									`./YYaVL7KRJ-indexes-default-0.framercms`,
4827									`/framer-assets/scripts/YYaVL7KRJ.js`,
4828								).href.replace(`/modules/`, `/cms/`),
4829							}),
4830							new Z({
4831								collation: ii,
4832								collectionSchema: $,
4833								fieldNames: ai,
4834								range: { from: 370, to: 433 },
4835								url: new URL(
4836									`./YYaVL7KRJ-indexes-default-0.framercms`,
4837									`/framer-assets/scripts/YYaVL7KRJ.js`,
4838								).href.replace(`/modules/`, `/cms/`),
4839							}),
4840							new Z({
4841								collation: ii,
4842								collectionSchema: $,
4843								fieldNames: oi,
4844								range: { from: 433, to: 26491 },
4845								url: new URL(
4846									`./YYaVL7KRJ-indexes-default-0.framercms`,
4847									`/framer-assets/scripts/YYaVL7KRJ.js`,
4848								).href.replace(`/modules/`, `/cms/`),
4849							}),
4850						],
4851						resolveRichText: li,
4852						resolveVectorSetItem: ci,
4853						schema: $,
4854					}),
4855				},
4856				displayName: `Legal`,
4857				id: `c1908267-d9c9-49dd-80d3-f0834cba3d76`,
4858			}),
4859			(fi = di),
4860			O(di, {
4861				BG5Gh3GNP: { defaultValue: ``, title: `Title`, type: j.String },
4862				oTS9hKpKi: { preventLocalization: !0, title: `Slug`, type: j.String },
4863				po3kv56Yb: { defaultValue: ``, title: `Content`, type: j.RichText },
4864				createdAt: { title: `Created`, type: j.Date },
4865				updatedAt: { title: `Updated`, type: j.Date },
4866				previousItemId: {
4867					dataIdentifier: `local-module:collection/YYaVL7KRJ:default`,
4868					title: `Previous`,
4869					type: j.CollectionReference,
4870				},
4871				nextItemId: {
4872					dataIdentifier: `local-module:collection/YYaVL7KRJ:default`,
4873					title: `Next`,
4874					type: j.CollectionReference,
4875				},
4876			}),
4877			(pi = {}),
4878			(mi = {
4879				async getSlugByRecordId(e, t) {
4880					const [n] = await ui.query(
4881						{
4882							from: { data: di, type: `Collection` },
4883							limit: { type: `LiteralValue`, value: 1 },
4884							select: [{ name: `oTS9hKpKi`, type: `Identifier` }],
4885							where: {
4886								left: { name: `id`, type: `Identifier` },
4887								operator: `==`,
4888								right: { type: `LiteralValue`, value: e },
4889								type: `BinaryOperation`,
4890							},
4891						},
4892						t,
4893					)
4894					return n?.oTS9hKpKi
4895				},
4896				async getRecordIdBySlug(e, t) {
4897					const [n] = await ui.query(
4898						{
4899							from: { data: di, type: `Collection` },
4900							limit: { type: `LiteralValue`, value: 1 },
4901							select: [{ name: `id`, type: `Identifier` }],
4902							where: {
4903								left: { name: `oTS9hKpKi`, type: `Identifier` },
4904								operator: `==`,
4905								right: { type: `LiteralValue`, value: e },
4906								type: `BinaryOperation`,
4907							},
4908						},
4909						t,
4910					)
4911					return n?.id
4912				},
4913			}),
4914			(hi = {
4915				exports: {
4916					utils: {
4917						type: `variable`,
4918						annotations: { framerContractVersion: `1` },
4919					},
4920					default: {
4921						type: `data`,
4922						name: `data`,
4923						annotations: {
4924							framerCollectionUtils: `1`,
4925							framerData: `true`,
4926							framerCollectionId: `YYaVL7KRJ`,
4927							framerRecordIdKey: `id`,
4928							framerEnumToDisplayNameUtils: `2`,
4929							framerContractVersion: `1`,
4930							framerColorSyntax: `false`,
4931							framerSlug: `oTS9hKpKi`,
4932							framerAutoSizeImages: `true`,
4933						},
4934					},
4935					enumToDisplayNameFunctions: {
4936						type: `variable`,
4937						annotations: { framerContractVersion: `1` },
4938					},
4939					__FramerMetadata__: { type: `variable` },
4940				},
4941			})
4942	})
4943function _i(e, t) {
4944	const n = e?.BG5Gh3GNP
4945	return {
4946		breakpoints: [{ hash: `lbyxm5` }],
4947		description: _n(e, t).description,
4948		elements: {},
4949		robots: `max-image-preview:large`,
4950		serializationId: `framer-0nVTx`,
4951		title: `${n === void 0 ? `{{BG5Gh3GNP}}` : bi(n)} - Extra - Love Your Email`,
4952		viewport: `width=1200`,
4953	}
4954}
4955async function vi(e, t) {
4956	const n = new M(),
4957		r = {
4958			from: { alias: `P0UijHBEH`, data: fi, type: `Collection` },
4959			select: [
4960				{ collection: `P0UijHBEH`, name: `BG5Gh3GNP`, type: `Identifier` },
4961			],
4962			where: ne(e, `P0UijHBEH`),
4963		},
4964		i = await n.query(r, t)
4965	if (i.length === 0) throw Error(`No data matches pathVariables`)
4966	const a = i[0]
4967	return _i(a, t)
4968}
4969async function yi(e, t) {
4970	const n = new M(),
4971		r = {
4972			from: { alias: `P0UijHBEH`, data: fi, type: `Collection` },
4973			select: [
4974				{ collection: `P0UijHBEH`, name: `BG5Gh3GNP`, type: `Identifier` },
4975			],
4976		}
4977	for (const t of e)
4978		r.select.push({ collection: `P0UijHBEH`, name: t, type: `Identifier` })
4979	return (await n.query(r, t)).map((n) => ({
4980		metadata: _i(n, t),
4981		pathVariables: Object.fromEntries(e.map((e) => [e, n[e]])),
4982	}))
4983}
4984var bi,
4985	xi,
4986	Si,
4987	Ci = e(() => {
4988		L(),
4989			gi(),
4990			vn(),
4991			(bi = (e) => (typeof e == `string` ? e : String(e))),
4992			(xi = 1),
4993			(Si = {
4994				exports: {
4995					fetchMetadata: {
4996						type: `function`,
4997						annotations: { framerContractVersion: `1` },
4998					},
4999					default: {
5000						type: `function`,
5001						annotations: { framerContractVersion: `1` },
5002					},
5003					metadataVersion: {
5004						type: `variable`,
5005						annotations: { framerContractVersion: `1` },
5006					},
5007					fetchAllMetadata: {
5008						type: `function`,
5009						annotations: { framerContractVersion: `1` },
5010					},
5011					__FramerMetadata__: { type: `variable` },
5012				},
5013			})
5014	})
5015export {
5016	ot as A,
5017	on as C,
5018	xt as D,
5019	dt as E,
5020	Fe as F,
5021	Ie as I,
5022	be as L,
5023	Le as M,
5024	ze as N,
5025	lt as O,
5026	Re as P,
5027	xe as R,
5028	an as S,
5029	St as T,
5030	hn as _,
5031	_i as a,
5032	sn as b,
5033	hi as c,
5034	mi as d,
5035	xn as f,
5036	gn as g,
5037	bn as h,
5038	Ci as i,
5039	rt as j,
5040	st as k,
5041	pi as l,
5042	yn as m,
5043	yi as n,
5044	xi as o,
5045	Sn as p,
5046	vi as r,
5047	fi as s,
5048	Si as t,
5049	gi as u,
5050	ln as v,
5051	wt as w,
5052	un as x,
5053	cn as y,
5054}
5055//# sourceMappingURL=shared-lib.DZoO7YJD.mjs.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.