var _w = typeof window !== "undefined" ? window : {}; _w.__heroEntries = [{ fields: { title: "Games", name: "MAXUM", slug: "maxum", tag: "MAXUM", excerpt: "THE NEXT GEN BLOCKCHAIN ECOSYSTEM FOR GAMES AND ENTERTAINMENT", heroImage: { fields: { file: { url: "/images/banner1.jpg" } } }, desktopHeroImage: { fields: { file: { url: "/images/banner2.jpg" } } }, colorMain: { value: "#FF4444" }, colorSecondary: { value: "#FF8800" }, categories: [{ fields: { label: "Games" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxum" } }, { fields: { title: "Finance", name: "MAXVERSE", slug: "maxverse", tag: "MAXVERSE", excerpt: "EXPLORE THE METAVERSE OF POSSIBILITIES WITH IMMERSIVE 3D WORLDS", heroImage: { fields: { file: { url: "/images/banner3.jpg" } } }, desktopHeroImage: { fields: { file: { url: "/images/banner4.jpg" } } }, colorMain: { value: "#4444FF" }, colorSecondary: { value: "#44FF88" }, categories: [{ fields: { label: "Finance" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxverse" } }, { fields: { title: "Collectibles", name: "MAXPAY", slug: "maxpay", tag: "MAXPAY", excerpt: "SEAMLESS PAYMENTS FOR THE DIGITAL ECONOMY WITH INSTANT SETTLEMENT", heroImage: { fields: { file: { url: "/images/banner5.jpg" } } }, desktopHeroImage: { fields: { file: { url: "/images/banner6.jpg" } } }, colorMain: { value: "#FF00FF" }, colorSecondary: { value: "#FFFF00" }, categories: [{ fields: { label: "Collectibles" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxpay" } }, { fields: { title: "Finance", name: "MAXSWAP", slug: "maxswap", tag: "MAXSWAP", excerpt: "SWAP TOKENS ACROSS CHAINS WITH BEST RATES AND LOWEST SLIPPAGE", heroImage: { fields: { file: { url: "/images/banner7.jpg" } } }, desktopHeroImage: { fields: { file: { url: "/images/banner6.jpg" } } }, colorMain: { value: "#FFD700" }, colorSecondary: { value: "#FFA500" }, categories: [{ fields: { label: "Finance" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxswap" } }, { fields: { title: "Infrastructure", name: "MAXSCAN", slug: "maxscan", tag: "MAXSCAN", excerpt: "EXPLORE AND VERIFY ANY TOKEN OR CONTRACT ON THE MAXUM BLOCKCHAIN", heroImage: { fields: { file: { url: "/images/banner2.jpg } } }, desktopHeroImage: { fields: { file: { url: "/images/banner3.jpg" } } }, colorMain: { value: "#00FF00" }, colorSecondary: { value: "#0000FF" }, categories: [{ fields: { label: "Infrastructure" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxscan" } }, { fields: { title: "Collectibles", name: "MAXMINT", slug: "maxmint", tag: "MAXMINT", excerpt: "MINT UNIQUE DIGITAL COLLECTIBLES AND NFTS WITH ONE CLICK", heroImage: { fields: { file: { url: "/images/banner4.jpg" } } }, desktopHeroImage: { fields: { file: { url: "/images/banner5.jpg" } } }, colorMain: { value: "#FF6600" }, colorSecondary: { value: "#FF0066" }, categories: [{ fields: { label: "Collectibles" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxmint" } }, { fields: { title: "Finance", name: "MAXFI", slug: "maxfi", tag: "MAXFI", excerpt: "DECENTRALIZED FINANCE PROTOCOLS FOR YIELD LENDING AND BORROWING", heroImage: { fields: { file: { url: "/images/banner6.jpg" } } }, desktopHeroImage: { fields: { file: { url: "/images/banner7.jpg" } } }, colorMain: { value: "#00DDFF" }, colorSecondary: { value: "#FF00AA" }, categories: [{ fields: { label: "Finance" } }], ctaLabel: "LAUNCH", ctaLink: "/apps/maxfi" } }]; (self.webpackChunk_N_E = self.webpackChunk_N_E || []).push([ [1931], { 90913: function(e, t, i) { Promise.resolve().then(i.t.bind(i, 27542, 23)), Promise.resolve().then(i.bind(i, 48711)), Promise.resolve().then(i.t.bind(i, 99649, 23)), Promise.resolve().then(i.bind(i, 76118)), Promise.resolve().then(i.bind(i, 78016)), Promise.resolve().then(i.bind(i, 99260)), Promise.resolve().then(i.bind(i, 42541)), Promise.resolve().then(i.bind(i, 31820)), Promise.resolve().then(i.bind(i, 83599)), Promise.resolve().then(i.bind(i, 36096)), Promise.resolve().then(i.bind(i, 36934)), Promise.resolve().then(i.bind(i, 51909)), Promise.resolve().then(i.bind(i, 60500)), Promise.resolve().then(i.bind(i, 96613)), Promise.resolve().then(i.bind(i, 60080)), Promise.resolve().then(i.t.bind(i, 42278, 23)), Promise.resolve().then(i.t.bind(i, 24552, 23)), Promise.resolve().then(i.bind(i, 77883)), Promise.resolve().then(i.bind(i, 19332)), Promise.resolve().then(i.bind(i, 61437)), Promise.resolve().then(i.t.bind(i, 98079, 23)), Promise.resolve().then(i.bind(i, 83420)) }, 48711: function(e, t, i) { "use strict"; i.d(t, { CardPortrait: function() { return c } }); var r = i(81785), s = i(24978), n = i(37145), o = i(71829), a = i(2961); function l(e) { let { leadingText: t, headingText: i, excerpt: n, image: l } = e, [c, d] = (0, s.useState)(window.innerWidth <= 640); function h(e) { window.innerWidth > 640 && d(e) } let u = (0, s.useMemo)(() => i.length >= 20 && c ? 138 : 168, [c, i.length]); return (0, s.useEffect)(() => { let e = () => d(window.innerWidth <= 640); return window.addEventListener("resize", e), () => window.removeEventListener("resize", e) }, []), (0, r.jsxs)("div", { className: "group relative h-[480px] w-[304px]", onMouseEnter: () => h(!0), onMouseLeave: () => h(!1), children: [(0, r.jsx)("div", { className: "absolute inset-0 z-40 border-[10px] border-black text-black transition-all duration-[400ms] sm:border-0 sm:group-hover:border-[10px]" }), (0, r.jsxs)("div", { className: "relative z-50 px-[30px] transition-all duration-[400ms]", style: { paddingTop: "".concat(u, "px") }, children: [(0, r.jsx)("span", { className: "mb-8 block font-mono text-xs font-medium uppercase leading-5 tracking-[6px]", children: "Intellectual Property" === t ? "IP" : t }), (0, r.jsx)("span", { className: "block min-h-[142px] pb-16 font-manuka text-[64px] font-medium uppercase leading-[54px] tracking-[3px]", children: i }), (0, r.jsx)(o.M, { children: c && (0, r.jsx)(a.E.span, { initial: { opacity: 0, marginTop: 30 }, animate: { opacity: 100, marginTop: 0 }, exit: { opacity: 0, marginTop: 30 }, transition: { duration: .3, delay: .1 }, className: "block font-sans text-base font-normal leading-6 tracking-[0.16px]", children: n }) })] }), (0, r.jsx)("div", { className: "absolute inset-0 z-20 bg-[#E5E5E6] opacity-0 transition-opacity duration-[400ms] group-hover:opacity-0 sm:opacity-70" }), (0, r.jsx)("div", { className: "absolute inset-0 z-30 bg-gradient-to-b from-transparent to-[#E5E5E6]" }), (0, r.jsx)("div", { className: "absolute inset-0 z-0 bg-cover bg-center bg-no-repeat opacity-100 grayscale-0 transition-all duration-[400ms] group-hover:grayscale-0 sm:grayscale", style: { backgroundImage: "url(".concat(l, ")") } })] }) } let c = (0, n.default)(() => Promise.resolve(l), { ssr: !1 }) }, 78016: function(e, t, i) { "use strict"; i.d(t, { FullScreenCarousel: function() { return p } }); var r = i(81785), s = i(24959), n = i(50375), o = i(60590), a = i(24978); let l = (e, t) => { let [i, r] = (0, a.useState)(0), [s, n] = (0, a.useState)([]), o = (0, a.useCallback)(i => { e && (e.scrollTo(i), t && t(e)) }, [e, t]), l = (0, a.useCallback)(e => { n(e.scrollSnapList()) }, []), c = (0, a.useCallback)(e => { r(e.selectedScrollSnap()) }, []); return (0, a.useEffect)(() => { void 0 !== e && (l(e), c(e), e.on("reInit", l).on("reInit", c).on("select", c)) }, [e, l, c]), { selectedIndex: i, scrollSnaps: s, onClick: o } }; function c(e) { let { children: t, ...i } = e; return (0, r.jsx)("button", { type: "button", ...i, children: t }) } var d = i(69188), h = i.n(d), u = i(41206); function p(e) { let { slides: t, autoplay: i = !0, speed: a = 7e3, duration: d = 40 } = e, [p, m] = (0, s.Z)({ dragFree: !1, duration: d, loop: !0, watchDrag: !0, watchFocus: !1, containScroll: !1, align: "center" }, [(0, n.Z)({ active: i, playOnInit: !0, delay: a, stopOnFocusIn: !1, stopOnInteraction: !1, stopOnLastSnap: !1, stopOnMouseEnter: !0 }), (0, o.Z)({ active: !1 })]), { selectedIndex: f, scrollSnaps: g, onClick: v } = l(m); return (0, r.jsx)("section", { className: "relative w-full overflow-hidden md:min-h-[85svh] min-h-[100svh]", children: (0, r.jsxs)("div", { className: h().embla, children: [(0, r.jsx)("div", { className: (0, u.cn)(h().embla__viewport, "absolute inset-0 h-full"), ref: p, children: (0, r.jsx)("div", { className: (0, u.cn)(h().embla__container, "h-full"), children: t.map((e, t) => (0, r.jsx)("div", { className: (0, u.cn)(h().embla__slide, "relative h-full transition-opacity duration-300"), children: (0, r.jsxs)("div", { className: (0, u.cn)(h().embla__slide__number), children: [(0, r.jsx)("div", { className: (0, u.cn)("relative px-32 md:pt-[172px] sm:px-80 pt-[20vh]", h().children), style: { zIndex: t + 11 }, children: e.children }), (0, r.jsxs)("picture", { className: "absolute inset-0", style: { zIndex: t + 10 }, children: [(0, r.jsx)("source", { media: "(min-width:394px)", srcSet: e.image.desktop }), (0, r.jsx)("source", { media: "(min-width:393px)", srcSet: e.image.mobile }), (0, r.jsx)("img", { src: e.image.desktop, alt: e.image.alt, className: "size-full object-cover" })] })] }) }, e.image.desktop)) }) }), (0, r.jsx)("div", { className: "absolute bottom-48 left-1/2 hidden -translate-x-1/2 sm:block", children: (0, r.jsx)("div", { className: "flex space-x-16 rounded-[60px] bg-black/25 px-20 py-16", children: g.map((e, t) => (0, r.jsx)(c, { onClick: () => v(t), className: (0, u.cn)("size-[12px] rounded-full border-2", t === f ? "border-white bg-white" : "border-white/50") }, t)) }) })] }) }) } }, 99260: function(e, t, i) { "use strict"; i.r(t), i.d(t, { SimpleSlider: function() { return h } }); var r = i(81785), s = i(24978), n = i(50995), o = i(10961), a = i(73091), l = i(41206), c = i(14172), d = i.n(c); function h(e) { let { className: t, children: i } = e, a = (0, s.useRef)(null), c = (0, s.useRef)(null); (0, s.useEffect)(() => { if (!a.current || !c.current) return; let e = window.matchMedia("(min-width: 1024px)").matches; u(e); let t = !e, i = c.current, r = n.ZP.context(() => { n.ZP.utils.selector(a.current), o._.create(i, { type: "x", bounds: a.current, inertia: !0, dragResistance: t ? 0 : .4, edgeResistance: .9, throwResistance: t ? 100 : 2e3, maxDuration: .5, cursor: "var(--cursor-move, var(--cursor)), move", activeCursor: "var(--cursor-move, var(--cursor)), move", dragClickables: !0 }) }); return () => { var e; null === o._ || void 0 === o._ || null === (e = o._.get(i)) || void 0 === e || e.kill(), r.revert() } }, []); let [h, u] = (0, s.useState)(!1); return (0, s.useLayoutEffect)(() => { let e = () => { u(window.matchMedia("(min-width: 1024px)").matches) }; return e(), window.addEventListener("resize", e), () => { window.removeEventListener("resize", e) } }, []), (0, r.jsx)("div", { ref: a, className: (0, l.cn)("SimpleSlider w-full", d().root, t), children: (0, r.jsx)("div", { ref: c, className: (0, l.cn)("SimpleSlider__Track w-max", d().track), children: i }) }) } n.ZP.registerPlugin(o._, a.FB) }, 42541: function(e, t, i) { "use strict"; i.r(t), i.d(t, { default: function() { return o } }); var r = i(81785), s = i(50584), n = i(41206); function o(e) { let { isExternal: t = !1, variant: i, fullWidth: o = !1, children: c, className: d, ...h } = e; return t ? (0, r.jsxs)("a", { className: (0, n.cn)("group flex items-center justify-center rounded-sm px-[25px] py-16 transition-all duration-300 ease-in-out hover:cursor-pointer sm:px-[86px]", o ? "w-full" : "min-w-[200px] max-w-[200px] sm:min-w-[330px] sm:max-w-[330px]", "light" === i && "bg-white text-black transition-all duration-300 ease-in-out", "dark" === i && "bg-black text-white transition-all duration-300 ease-in-out", d), ...h, children: [(0, r.jsx)("span", { className: "mr-[22px] uppercase", children: c }), (0, r.jsx)("span", { className: (0, n.cn)("transition-transform duration-300 ease-in-out group-hover:translate-x-1", "dark" === i ? "text-white" : "text-black"), children: "dark" === i ? (0, r.jsx)(a, {}) : (0, r.jsx)(l, {}) })] }) : (0, r.jsxs)(s.default, { className: (0, n.cn)("group flex items-center justify-center rounded-sm px-[25px] py-16 transition-all duration-300 ease-in-out hover:cursor-pointer sm:px-[60px]", o ? "w-full" : "min-w-[200px] max-w-[220px] sm:min-w-[330px] sm:max-w-[330px]", "light" === i && "bg-white text-black transition-all duration-300 ease-in-out", "dark" === i && "bg-black text-white transition-all duration-300 ease-in-out", d), ...h, children: [(0, r.jsx)("span", { className: "mr-[22px] font-medium uppercase tracking-snug", children: c }), (0, r.jsx)("span", { className: (0, n.cn)("transition-transform duration-300 ease-in-out group-hover:translate-x-1", "dark" === i ? "text-white" : "text-black"), children: "dark" === i ? (0, r.jsx)(a, {}) : (0, r.jsx)(l, {}) })] }) } let a = () => (0, r.jsxs)("svg", { width: "14", height: "9", viewBox: "0 0 14 9", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [(0, r.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.47306 8.56912C9.34288 8.69929 9.13183 8.69929 9.00165 8.56912L8.53025 8.09771C8.40007 7.96754 8.40007 7.75648 8.53025 7.62631L11.8231 4.33341L8.53025 1.04052C8.40007 0.910347 8.40007 0.699293 8.53025 0.569118L9.00165 0.0977134C9.13183 -0.0324612 9.34288 -0.0324612 9.47306 0.0977134L13.4731 4.09771C13.6032 4.22789 13.6032 4.43894 13.4731 4.56912L9.47306 8.56912Z", fill: "white" }), (0, r.jsx)("rect", { x: "12.333", y: "3.69995", width: "1.33333", height: "12", rx: "0.5", transform: "rotate(90 12.333 3.69995)", fill: "white" })] }), l = () => (0, r.jsxs)("svg", { width: "14", height: "9", viewBox: "0 0 14 9", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [(0, r.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.47403 8.56912C9.34386 8.69929 9.1328 8.69929 9.00263 8.56912L8.53122 8.09771C8.40105 7.96754 8.40105 7.75648 8.53122 7.62631L11.8241 4.33341L8.53122 1.04052C8.40105 0.910347 8.40105 0.699293 8.53122 0.569118L9.00263 0.0977134C9.1328 -0.0324612 9.34386 -0.0324612 9.47403 0.0977134L13.474 4.09771C13.6042 4.22789 13.6042 4.43894 13.474 4.56912L9.47403 8.56912Z", fill: "black" }), (0, r.jsx)("rect", { x: "12.3335", y: "3.69995", width: "1.33333", height: "12", rx: "0.5", transform: "rotate(90 12.3335 3.69995)", fill: "black" })] }) }, 36096: function(e, t, i) { "use strict"; var r = i(81785), s = i(36934), n = i(24978); t.default = (0, n.memo)(function(e) { let t = (0, n.useRef)(null), { addGradient: i, removeGradient: o } = (0, s.f)(); return (0, n.useEffect)(() => { if (t.current) return i(t, { color1: e.color1, color2: e.color2 }), () => { o(t) } }, [t, i, o, e.color1, e.color2]), (0, r.jsx)("div", { className: e.className, ref: t }) }) }, 36934: function(e, t, i) { "use strict"; i.d(t, { GradientBackgroundProvider: function() { return o }, f: function() { return a } }); var r = i(81785), s = i(24978); let n = (0, s.createContext)({ heroColors: { color1: "#FFFFFF", color2: "#FFFFFF" }, gradients: [], setHeroColors: () => {}, addGradient: () => {}, removeGradient: () => {} }); function o(e) { let { children: t } = e, [i, o] = (0, s.useState)({ color1: "#FFFFFF", color2: "#FFFFFF" }), [a, l] = (0, s.useState)([]), c = (0, s.useCallback)((e, t) => { var i; for (let i = 0; i < a.length; i++) if (a[i].el === e) { l(e => (e[i] && (e[i].config = t), [...e].sort((e, t) => e.offset - t.offset))); return } let r = (null === (i = e.current) || void 0 === i ? void 0 : i.offsetTop) || 0; l(i => [...i, { el: e, offset: r, config: t }].sort((e, t) => e.offset - t.offset)) }, [l]), d = (0, s.useCallback)(e => { l(t => t.filter(t => t.el !== e)) }, [l]), h = (0, s.useCallback)(() => { l(e => e.map(e => { var t; let i = (null === (t = e.el.current) || void 0 === t ? void 0 : t.offsetTop) || 0; return { ...e, offset: i } })) }, [l]); (0, s.useLayoutEffect)(() => (h(), window.addEventListener("resize", h), () => { window.removeEventListener("resize", h) }), [h]); let u = (0, s.useMemo)(() => ({ heroColors: i, gradients: a }), [i, a]); return (0, r.jsx)(n.Provider, { value: { ...u, setHeroColors: o, addGradient: c, removeGradient: d }, children: t }) } function a() { return (0, s.useContext)(n) } }, 51909: function(e, t, i) { "use strict"; i.d(t, { default: function() { return g } }); var r = i(81785), s = i(24978), n = i(88696), o = i(21254), a = i(96289), l = i(47945); function c(e, t) { return t[0] = (e >> 16 & 255) / 255, t[1] = (e >> 8 & 255) / 255, t[2] = (255 & e) / 255, t } function d(e) { return parseInt(e.substring(1), 16) } var h = i(50995); class u extends n.Z { setColor(e, t) { var i; let r = l.vec3.create(), s = l.vec3.create(), n = l.vec3.create(), o = l.vec3.create(); n.set(this.color1), o.set(this.color2), c(d(e), r), c(d(t), s); let a = { p: 0 }; null === (i = this.tween) || void 0 === i || i.kill(), this.tween = h.ZP.to(a, { p: 1, duration: 1, onUpdate: () => { this.speed = 1 + 2 * Math.sin(a.p * Math.PI), l.vec3.lerp(this.color1, n, s, a.p), l.vec3.lerp(this.color2, o, r, a.p) } }) } render() { this.time += .5 * this.dt * this.speed, this.gl.viewport(0, 0, this.width, this.height), this.gl.clearColor(0, 0, 0, 1), this.gl.clear(this.gl.COLOR_BUFFER_BIT), this.prg.use(), this.prg.uTime(this.time), this.prg.uColor1(this.color1), this.prg.uColor2(this.color2), this.quad.attribPointer(this.prg), this.quad.render() } resize() {} constructor(e) { super(e, { alpha: !1, depth: !1, premult: !1, pixelRatio: -1 }), this.canvas = e, this.time = 0, this.color1 = l.vec3.create(), this.color2 = l.vec3.create(), this.speed = 1, this.quad = new o.Z(this.gl), this.prg = new a.Z(this.gl, "#version 300 es\nprecision highp float;\n\nin vec2 aPosition;\nin vec2 aTexCoord;\nuniform float uTime;\n\nout vec2 vTexCoord;\nout float vGradient;\n\nvoid main() {\n gl_Position = vec4(aPosition, 0.0, 1.0);\n vTexCoord = aTexCoord;\n\n float currentAngle = sin(uTime) * 55.0; \n vec2 origin = vec2(0.5, 0.5);\n\n vec2 uv = aTexCoord - origin;\n float angle = radians(90.0) - radians(currentAngle) + atan(uv.y, uv.x);\n float len = length(uv);\n uv = vec2(cos(angle) * len, sin(angle) * len) + origin;\n \n vGradient = smoothstep(0.0, 1.0, uv.x);\n \n}\n", "#version 300 es\nprecision highp float;\n\nuniform vec3 uColor1;\nuniform vec3 uColor2;\n\nin vec2 vTexCoord;\nin float vGradient;\nout vec4 fragColor;\n\nfloat random(vec2 st) {\n return fract(sin(dot(st.xy, vec2(12.9898,78.233)) * 43758.5453123));\n}\n\nvoid main() {\n float f = vGradient + random(vTexCoord) * 0.01;\n vec3 color = mix(uColor1, uColor2, clamp(f, 0.0, 1.0));\n fragColor = vec4(color, 1.0);\n}"), this.setColor("#72E5FF", "#2C6A97") } } var p = i(36934), m = i(77873), f = i(98152); function g(e) { let t = (0, s.useRef)(null), [i, n] = (0, s.useState)(null); (0, s.useEffect)(() => { if (!t.current) { console.error("Canvas not found"); return } let e = new u(t.current); return e.start(), n(e), () => { n(null), e.unload() } }, []); let { gradients: o } = (0, p.f)(), [a, l] = (0, s.useState)(0), [c, d] = (0, s.useState)({ color1: "#E2F0FF", color2: "#E2F0FF" }); (0, s.useEffect)(() => { o[a] && d(o[a].config) }, [a, o]), (0, s.useEffect)(() => { null == i || i.setColor(c.color1, c.color2) }, [c, i]); let { scrollY: h } = (0, m.v)(); return (0, f.W)(h, "change", e => { let t = Number.MAX_VALUE, i = 0; for (let r = 0; r < o.length; r++) { let s = Math.abs(e - o[r].offset); s < t && (t = s, i = r) } i != a && l(i) }), (0, r.jsx)("canvas", { className: e.className, ref: t }) } }, 60500: function(e, t, i) { "use strict"; i.d(t, { default: function() { return a } }); var r = i(81785), s = i(24978), n = i(2961), o = i(41206); function a(e) { let { enabled: t } = e, [i, a] = (0, s.useState)(t); return (0, s.useEffect)(() => (i ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => { document.body.style.overflow = "" }), [i]), (0, s.useEffect)(() => { (0, o.Uj)(o.if, "true") }, []), (0, r.jsxs)(n.E.div, { className: "fixed inset-0 z-50 bg-white", initial: "visible", animate: "hidden", exit: "hidden", variants: { visible: { opacity: 1 }, hidden: { opacity: 0 } }, transition: { duration: 1.3, delay: 3 }, style: { display: i ? "block" : "none" }, onAnimationComplete: () => a(!1), children: [(0, r.jsx)("span", { className: "absolute left-1/2 top-[40px] z-10 -translate-x-1/2", children: (0, r.jsx)(l, {}) }), (0, r.jsxs)("picture", { className: "pointer-events-none absolute inset-0 z-0", children: [(0, r.jsx)("source", { media: "(min-width:986px)", srcSet: "/maxum-desktop-bg.png", type: "image/png" }), (0, r.jsx)("source", { media: "(min-width:985px)", srcSet: "/maxum-mobile-bg.png", type: "image/png" }), (0, r.jsx)("img", { src: "/maxum-mobile-bg.png", alt: "MAXUM", className: "size-full object-cover" })] }), (0, r.jsx)("span", { className: "x-10 absolute bottom-[33px] left-1/2 -translate-x-1/2 whitespace-nowrap text-center font-sans text-base font-black uppercase leading-7 tracking-[8px] text-white", children: "THE PLACE TO MAX" })] }) } function l() { return (0, r.jsxs)("svg", { width: "46", height: "35", viewBox: "0 0 46 35", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [(0, r.jsx)("mask", { style: { maskType: "luminance" }, maskUnits: "userSpaceOnUse", x: "0", y: "0", width: "46", height: "35", children: (0, r.jsx)("path", { d: "M46 0H0V34.033H46V0Z", fill: "white" }) }), (0, r.jsx)("g", { mask: "url(#mask0_179_6872)", children: (0, r.jsx)("path", { d: "M38.5612 33.1319L38.6429 33.4435L38.6831 33.5952C38.7487 33.8436 38.989 34.031 39.2455 34.0321C39.2604 34.0333 39.2949 34.0321 39.3191 34.0321H39.4801C40.407 34.039 41.7594 34.0275 42.6886 34.0321H43.3303H43.65L43.7845 34.0264C44.4596 33.9793 45.076 33.509 45.3037 32.8697C45.3692 32.6961 45.5659 32.15 45.636 31.9637C45.9948 31.0163 46.0937 29.9758 45.9086 28.9801C45.7671 28.2258 44.9955 26.1321 44.7505 25.3514C44.6206 24.9938 44.4895 24.5121 44.3227 24.1844C44.1468 23.8188 43.9283 23.4946 43.6626 23.1876C43.3188 22.7874 41.8939 21.0777 41.5938 20.7271L41.3856 20.4787C40.9567 19.9981 41.1395 19.3244 41.0337 18.7449C40.6772 15.4324 37.77 12.7029 34.4546 12.5568C33.7565 12.5304 32.633 12.5488 31.9085 12.543C31.4255 12.5591 30.9367 12.4603 30.5089 12.2303C30.1306 12.0486 29.7488 11.6405 29.4498 11.3484L27.6144 9.54906C27.3556 9.29956 26.9566 8.89829 26.7001 8.65684C25.9469 7.95088 25.0729 7.37485 24.1276 6.96323C23.7055 6.77582 21.616 5.95604 21.1583 5.76403C20.7247 5.58697 20.3234 5.32827 19.9818 5.00748C19.6667 4.71774 19.3861 4.30498 19.132 3.9681C18.9457 3.7232 18.5627 3.1989 18.3661 2.94711C17.6128 1.98245 16.5284 1.30984 15.3508 1.00055C14.9011 0.879827 12.6011 0.148577 12.1515 0.0623439C10.8428 -0.190604 9.4363 0.340587 8.61405 1.39377C8.3047 1.77205 8.0931 2.2331 7.95625 2.69991C7.88725 2.98045 7.8332 3.31848 7.7964 3.60937C7.6584 4.60047 7.1202 5.52488 6.32785 6.1331L6.1864 6.23658C6.1726 6.24693 6.16455 6.25268 6.15995 6.25728L6.13925 6.27338C5.89315 6.46079 5.8483 6.85171 6.04955 7.08971C6.0576 7.10121 6.08175 7.1288 6.0967 7.1472L6.5084 7.64045L6.4877 7.6186C6.6188 7.74737 6.6579 7.95548 6.5843 8.12335C6.51415 8.26592 6.3773 8.54071 6.306 8.68558C6.1404 9.01901 5.80575 9.69163 5.64015 10.0239C5.2572 10.7598 5.6574 11.7497 6.44975 11.9992L7.15355 12.2349C7.3548 12.2958 7.5296 12.4419 7.62965 12.6281L7.80215 12.9719L7.8861 13.1398C8.07355 13.5433 8.50825 13.7825 8.9464 13.7514C9.0844 13.7537 11.4822 13.7503 12.1492 13.7514C12.2354 13.7514 12.3056 13.8216 12.3056 13.9078C12.3056 13.9825 12.2527 14.0469 12.1802 14.0619L11.0302 14.2907C10.8658 14.324 10.7462 14.4689 10.7462 14.6368V14.9288C10.7462 15.8452 10.3517 16.7178 9.664 17.3215L5.78045 20.7305C3.94505 22.3413 2.56735 24.4201 1.79685 26.7415L0.0856521 31.8786C-0.0776479 32.3707 -0.00864793 32.9203 0.303002 33.3342C0.593952 33.7183 1.0344 33.939 1.5174 33.939H6.42215C6.74645 33.939 7.00865 33.6757 7.00865 33.3503V32.7984C7.00865 32.6421 6.94655 32.4926 6.8373 32.3822L6.5912 32.1362C6.4348 31.9787 6.36235 31.7476 6.4256 31.5337C6.5015 31.2808 6.73035 31.1129 6.98795 31.1129H8.29895C8.62325 31.1129 8.88545 30.8496 8.88545 30.5242V29.5826C8.88545 28.8789 9.2155 28.2155 9.7767 27.7935L9.88825 27.7096C11.5615 26.4506 12.5862 24.4776 12.5643 22.3781C12.5528 21.3364 13.0151 20.366 13.827 19.721L14.8356 18.9196C14.931 18.8438 14.9828 18.7242 14.9667 18.6023C14.9103 18.155 14.8091 17.7135 14.6631 17.2881C14.5573 16.9777 14.3399 16.3338 14.2364 16.0268C13.5959 14.2608 13.7925 12.1993 14.7804 10.6045C15.4048 9.5847 16.3363 8.76492 17.4047 8.29811C17.4806 8.26477 17.5703 8.29811 17.6082 8.374C17.645 8.44758 17.6186 8.53611 17.5484 8.5798C15.1622 10.0653 13.9696 13.1248 14.9414 15.7923C15.0403 16.0981 15.2599 16.7684 15.3542 17.0582C15.7924 18.3873 15.8499 19.8394 15.5152 21.1973L13.6534 28.0603L13.5947 28.2741C13.3348 29.118 13.451 30.0482 13.8811 30.8151C13.8983 30.8576 13.9892 31.0267 14.0053 31.0635C14.2019 31.4233 14.164 31.8671 14.1651 32.2558V33.1434C14.1594 33.3411 14.1594 33.5872 14.3123 33.739C14.4434 33.893 14.6435 33.9528 14.8413 33.939H18.381H20.1509C20.2038 33.9413 20.3958 33.939 20.4464 33.9356C20.7627 33.9057 21.0007 33.6021 20.9708 33.2871V32.8433C20.9731 32.7444 20.9605 32.6467 20.9191 32.557C20.8811 32.4639 20.7983 32.3788 20.7259 32.3098L20.4108 31.9925C20.1313 31.72 20.1014 31.2359 20.3349 30.9301C20.4131 30.8163 20.888 30.1551 20.9777 30.0264C21.4366 29.3572 22.3175 28.1649 22.7591 27.5015C23.7596 25.9734 24.0781 24.0292 23.6446 22.2574C23.5457 21.7653 23.2513 21.0996 23.0891 20.6213C22.8821 20.0338 22.3554 18.6782 22.1898 18.0838C21.9288 17.195 21.9311 16.2614 21.9909 15.3473C22.0196 14.8046 22.0518 14.2608 22.1013 13.7181C22.1093 13.6353 22.1783 13.5709 22.2623 13.5709C22.3451 13.5709 22.4152 13.6342 22.4233 13.717C22.5003 14.5482 22.5325 15.3979 22.5751 16.2269C22.6314 17.0869 22.8304 17.8963 23.157 18.6977C23.3743 19.26 23.901 20.6443 24.1057 21.1858C24.2725 21.6273 24.3967 22.0872 24.476 22.554C24.5358 22.9047 24.7716 23.2037 25.0993 23.3393C25.5892 23.5428 26.1044 23.7211 26.6438 23.8728C27.1992 24.0292 27.7823 23.7659 28.033 23.2439C28.0755 23.1554 28.1204 23.0668 28.1664 22.9795C28.5252 22.2815 29.007 21.6584 29.4877 21.0456C29.927 20.4776 30.3836 19.9234 30.8574 19.3807C30.9114 19.3186 31.0046 19.3083 31.0713 19.3554C31.1391 19.4037 31.1598 19.4968 31.1173 19.5681C30.5722 20.4799 29.9224 21.4675 29.3348 22.3367C28.6356 23.4198 28.1445 24.6409 27.9341 25.9148C27.7719 26.9335 27.4718 28.8467 27.3085 29.8838C27.2418 30.2678 27.2084 30.7829 26.9991 31.1209C26.8163 31.482 26.3919 31.7706 26.0918 32.0224L25.8698 32.204L25.8422 32.227L25.825 32.2431C25.6594 32.3857 25.595 32.6225 25.6605 32.8318C25.7226 33.0525 25.8123 33.4216 25.8756 33.6263C25.9526 33.839 26.1688 33.9862 26.3965 33.9816L27.5419 33.9781C28.4895 33.9747 29.4567 33.9827 30.4054 33.9839C30.448 33.9839 30.5768 33.985 30.6193 33.9839C31.0379 33.9816 31.4554 33.847 31.79 33.5929C32.2155 33.2859 32.4214 32.8548 32.587 32.3523C32.7135 32.0063 33.438 30.0471 33.5806 29.6584C33.7094 29.2974 33.8635 28.9076 34.0302 28.5639C34.5512 27.4854 35.2837 26.5081 36.1968 25.7297C37.3031 24.8214 38.1219 23.6463 38.6762 22.3045C38.7084 22.2264 38.7924 22.185 38.8729 22.208C38.9534 22.231 39.0051 22.3103 38.9925 22.3931C38.8096 23.5198 38.2668 24.5707 37.5205 25.4319C37.2226 25.7757 37.049 26.2103 37.049 26.6656V27.0462C37.0455 27.229 37.0467 27.4463 37.08 27.628C37.1571 28.0844 37.402 28.5041 37.7493 28.8076L37.9851 29.0249L38.9304 29.8953L39.403 30.331C39.533 30.4414 39.6365 30.5886 39.6802 30.7542C39.7802 31.0945 39.6238 31.4728 39.3329 31.6682C39.2087 31.7706 38.958 31.9718 38.8338 32.0729C38.7774 32.1247 38.6716 32.1971 38.621 32.2523C38.4773 32.3983 38.4232 32.6214 38.475 32.8191L38.5566 33.1307L38.5612 33.1319Z", fill: "white" }) })] }) } }, 60080: function(e, t, i) { "use strict"; i.d(t, { SectionDiscoverApps: function() { return p } }); var r = i(81785), s = i(24978), n = i(50584), o = i(50995), a = i(32422), l = i(47679), c = i(41206), d = i(61692), h = i(24552), u = i.n(h); function p(e) { let { className: t, categories: i, ctaLabel: n } = e, o = (0, s.useRef)(null), [h, p] = (0, s.useState)(!1), f = Array.from({ length: 2 }, () => []); return (0, l.V)(() => { o.current && a.i.create({ trigger: o.current, toggleClass: u()["is-visible"] }) }, { scope: o }), (0, s.useLayoutEffect)(() => { let e = () => { p(window.matchMedia("(min-width: 1024px)").matches) }; return e(), window.addEventListener("resize", e), () => { window.removeEventListener("resize", e) } }, []), i.forEach((e, t) => { f[t % 2].push(e) }), (0, r.jsx)("section", { ref: o, className: (0, c.cn)("SectionDiscoverApps relative flex flex-col gap-64 py-96", t), children: (0, r.jsxs)("div", { className: (0, c.cn)("col-start-1 col-span-12 my-auto flex flex-col gap-64 lg:gap-96"), children: [(0, r.jsx)("div", { className: (0, c.cn)("flex flex-col items-center", u().groups), children: f.map((e, t) => (0, r.jsx)("div", { className: (0, c.cn)("flex overflow-hidden my-4 lg:my-16", u().group), children: [...Array(h ? 4 : 1)].map((t, i) => (0, r.jsx)("div", { className: (0, c.cn)("flex-none flex flex-col lg:flex-row items-center lg:items-baseline justify-center lg:justify-start gap-8 lg:gap-0", u().duplicatedGroup), children: [...e].map((e, t) => { var i, s, n, o; null == e || null === (i = e.fields) || void 0 === i || i.label; let a = null == e ? void 0 : null === (s = e.fields) || void 0 === s ? void 0 : s.preview; return null == a || null === (o = a.fields.landscapeThumbnail) || void 0 === o || null === (n = o.fields.file) || void 0 === n || n.url, (0, r.jsx)(m, { entry: e }, t) }) }, i)) }, t)) }), n && (0, r.jsx)("div", { className: "flex justify-center", children: (0, r.jsx)(d.K4, { href: "/apps", variant: d.$e.SECONDARY, children: n }) })] }) }) } o.ZP.registerPlugin(a.i); let m = e => { var t, i, a, d, h; let { entry: p } = e, m = null == p ? void 0 : null === (t = p.fields) || void 0 === t ? void 0 : t.label, f = null == p ? void 0 : null === (i = p.fields) || void 0 === i ? void 0 : i.value, g = null == p ? void 0 : null === (a = p.fields) || void 0 === a ? void 0 : a.preview, v = (null == g ? void 0 : null === (h = g.fields.landscapeThumbnail) || void 0 === h ? void 0 : null === (d = h.fields.file) || void 0 === d ? void 0 : d.url) || "", x = (0, s.useRef)(null), { context: b } = (0, l.V)(() => { let e = o.ZP.timeline({ paused: !0 }); e.fromTo(".label__inner", { yPercent: 0 }, { yPercent: -100, ease: "quad.inOut", duration: .6 }), b.add("playHover", () => e.play()), b.add("pauseHover", () => e.reverse()) }, { scope: x }); return (0, r.jsxs)(n.default, { ref: x, className: (0, c.cn)("flex-none inline-flex flex-row items-center gap-16 lg:mr-48", u().categoryLabel), href: "/apps?f=".concat(f), onMouseEnter: () => { b.playHover() }, onMouseLeave: () => { b.pauseHover() }, children: [(0, r.jsxs)("span", { className: (0, c.cn)("block label relative overflow-hidden"), children: [(0, r.jsx)("span", { className: (0, c.cn)("label__inner label__inner--main block relative"), children: m }), (0, r.jsx)("span", { "aria-hidden": "true", className: (0, c.cn)("label__inner label__inner--clone block absolute top-full left-0 size-full text-ape-blue"), children: m })] }), (0, r.jsx)("span", { className: (0, c.cn)("relative hidden lg:block aspect-square rounded-16 bg-ape-blue overflow-hidden", u().thumb), children: v && (0, r.jsx)("img", { className: "absolute inset-0 size-full object-cover", src: v, alt: "", loading: "lazy" }) })] }) } }, 77883: function(e, t, i) { "use strict"; i.r(t), i.d(t, { HomepageHero: function() { return Y } }); var r, s, n, o, a, l, c = i(81785), d = i(41206), h = i(83599), u = i(2980), p = i(83420), m = i(61692), f = i(24978), g = i(50584), v = i(50995), x = i(3425), b = i(47679), w = i(793), C = i.n(w); v.ZP.registerPlugin(x.W), (r = o || (o = {})).SMALL = "small", r.BIG = "big", (s = a || (a = {})).PRIMARY = "primary", s.SECONDARY = "secondary", s.TERTIARY = "tertiary"; let y = (0, f.forwardRef)(function(e, t) { let { href: i, children: r, ...s } = e; return i ? (0, c.jsx)(g.default, { href: i, legacyBehavior: !0, children: (0, c.jsx)("a", { ref: t, ...s, children: r }) }) : null }), _ = (0, f.forwardRef)(function(e, t) { let { as: i = "button", href: r, size: s = "big", variant: n = "primary", icon: o, leftText: a, disabled: l, className: h, children: p, onClick: m, sound: g, ...x } = e, w = r ? y : i, _ = { ...x, href: r }; "button" === w && (_.disabled = l); let j = (0, f.useRef)(null), N = (0, f.useRef)(null), [k, P] = (0, f.useState)({ width: 0, height: 0 }), [T, E] = (0, f.useState)({ cx: 0, cy: 0, r: 0 }), { context: L } = (0, b.V)(() => { if (0 === k.width) return; let e = v.ZP.timeline({ paused: !0 }); return e.fromTo(["svg circle.hover-border", "svg circle.hover-effect"], { transformOrigin: "50% 50%", opacity: 0 }, { opacity: 1, duration: .6, ease: "quad.inOut" }), e.fromTo("svg circle.hover-border-effect", { opacity: 0 }, { opacity: 1, duration: .15, ease: "quint.out" }, 0).fromTo("svg circle.hover-border-effect", { drawSVG: "0% 0%" }, { drawSVG: "35% 65%", duration: .75, ease: "quint.in" }, 0).to("svg circle.hover-border-effect", { drawSVG: "110% 110%", duration: .25, ease: "quint.out" }).to("svg circle.hover-border-effect", { opacity: 0, duration: .15, ease: "quint.out" }, "<=+0.1"), e.addLabel("echo").fromTo("svg circle.echo-border", { transformOrigin: "50% 50%", opacity: 0, scale: v.ZP.utils.wrap([42 / 54, .875]) }, { opacity: v.ZP.utils.wrap([.1, .4]), scale: 1, duration: .6, stagger: -.05, ease: "quad.inOut" }).to("svg circle.echo-border", { transformOrigin: "50% 50%", opacity: 0, scale: v.ZP.utils.wrap([54 / 42, 48 / 42]), duration: .6, ease: "quad.inOut" }), L.add("playHover", () => e.timeScale(1).play().eventCallback("onComplete", () => { e.play("echo") })), L.add("pauseHover", () => e.timeScale(2).reverse("echo")), () => { null == e || e.clear() } }, { scope: j, dependencies: [k.width, k.height, T.cx, T.cy, T.r] }), S = () => { j.current && (P({ width: j.current.clientWidth, height: j.current.clientHeight }), E({ cx: j.current.clientWidth / 2 + 16, cy: j.current.clientHeight / 2 + 16, r: Math.min(j.current.clientWidth, j.current.clientHeight) / 2 })) }; (0, f.useEffect)(() => { if (!j.current) return; let e = new ResizeObserver(S); return e.observe(j.current), S(), () => { null == e || e.disconnect() } }, []); let I = (0, f.useCallback)(e => { m && m(e) }, [m]); return (0, c.jsx)(w, { ref: t, className: (0, d.cn)(C().root, C()[s], C()[n], { big: "font-mono font-medium text-12 uppercase leading-none tracking-widest", small: "font-mono font-medium text-10 uppercase leading-none tracking-widest" } [s], o && C()["has-icon"], o && !(p || a) && C()["icon-only"], l && C()["is-disabled"], "relative", h), ..._, onClick: I, onMouseEnter: () => { L.playHover() }, onMouseLeave: () => { L.pauseHover() }, children: (0, c.jsxs)("span", { ref: j, className: "relative block", children: [(0, c.jsxs)("svg", { ref: N, className: (0, d.cn)("absolute pointer-events-none", "-top-[16px]", "-left-[16px]", 0 === k.width ? "hidden" : ""), viewBox: "0 0 ".concat(k.width + 32, " ").concat(k.height + 32), width: k.width + 32, height: k.height + 32, children: [(0, c.jsxs)("defs", { children: [(0, c.jsx)("filter", { id: "blur-filter", children: (0, c.jsx)("feGaussianBlur", { stdDeviation: "4" }) }), (0, c.jsxs)("filter", { id: "drop-shadow-filter", children: [(0, c.jsx)("feGaussianBlur", { in: "SourceAlpha", stdDeviation: "20" }), (0, c.jsx)("feOffset", { dx: "0", dy: "0" }), (0, c.jsx)("feComponentTransfer", { children: (0, c.jsx)("feFuncA", { type: "linear", slope: "1" }) }), (0, c.jsx)("feFlood", { floodColor: "white", floodOpacity: "0.5" }), (0, c.jsx)("feComposite", { operator: "in", in2: "SourceAlpha" }), (0, c.jsxs)("feMerge", { children: [(0, c.jsx)("feMergeNode", {}), (0, c.jsx)("feMergeNode", { in: "SourceGraphic" })] })] }), (0, c.jsxs)("linearGradient", { id: "gradient", x1: "0%", y1: "0%", x2: "100%", y2: "100%", children: [(0, c.jsx)("stop", { offset: "10%", style: { stopColor: "#A281FF", stopOpacity: 1 } }), (0, c.jsx)("stop", { offset: "33%", style: { stopColor: "#EB8280", stopOpacity: 1 } }), (0, c.jsx)("stop", { offset: "66%", style: { stopColor: "#EBBF9A", stopOpacity: 1 } }), (0, c.jsx)("stop", { offset: "90%", style: { stopColor: "#89D0FF", stopOpacity: 1 } })] }), (0, c.jsxs)("radialGradient", { id: "rgradient", cx: "0", cy: "0", r: "1", gradientUnits: "userSpaceOnUse", gradientTransform: "translate(157.5 40.5) rotate(60.7945) scale(92.2239 67.8051)", children: [(0, c.jsx)("stop", { stopColor: "#00A7FA" }), (0, c.jsx)("stop", { offset: "1", stopColor: "#0054FA" })] })] }), (0, c.jsx)("circle", { className: C().background, cx: T.cx, cy: T.cy, r: T.r, stroke: "url(#gradient)", strokeWidth: "2", strokeOpacity: "tertiary" === n ? .2 : 1, fill: "tertiary" === n ? "currentColor" : "primary" === n ? "none" : "url(#rgradient)", fillOpacity: "tertiary" === n ? 0 : 1 }), (0, c.jsx)("circle", { className: "echo-border", cx: T.cx, cy: T.cy, r: T.r + 15, stroke: "url(#gradient)", strokeWidth: "2", fill: "none", opacity: .1 }), (0, c.jsx)("circle", { className: "echo-border", cx: T.cx, cy: T.cy, r: T.r + 8, stroke: "url(#gradient)", strokeWidth: "2", fill: "none", opacity: .4 }), (0, c.jsx)("circle", { className: "border", cx: T.cx, cy: T.cy, r: T.r, stroke: "tertiary" === n ? "currentColor" : "url(#gradient)", strokeWidth: "tertiary" === n ? "1" : "2", strokeOpacity: "tertiary" === n ? .2 : 1, fill: "none" }), (0, c.jsx)("circle", { className: "hover-effect", cx: T.cx, cy: T.cy, r: T.r, stroke: "tertiary" === n ? "currentColor" : "url(#gradient)", strokeWidth: "tertiary" === n ? "1" : "4", fill: "tertiary" === n ? "currentColor" : "url(#rgradient)", filter: "url(#drop-shadow-filter)", fillOpacity: "tertiary" === n ? .1 : 1 }), (0, c.jsx)("circle", { className: "hover-border", cx: T.cx, cy: T.cy, r: T.r, stroke: "url(#gradient)", strokeWidth: "4", fill: "none", filter: "url(#blur-filter)" }), (0, c.jsx)("circle", { className: "hover-border-effect", cx: T.cx, cy: T.cy, r: T.r, stroke: "white", strokeWidth: "3", fill: "none" })] }), (0, c.jsx)("span", { className: C().inner, children: o && (0, c.jsx)(u.J, { name: o, className: C().icon }) })] }) }) }); var j = i(72109), N = i(42278), k = i.n(N), P = i(71829), T = i(2961), E = i(63470), L = i(88696), S = i(72215), I = i(43117), F = i(86170), R = i(66293), z = i(20963), M = i(96289), A = i(43092); class D { render(e, t) { let i = 1 / (2 * Math.sin(Math.PI / this.cardCount)); this.node.z = -(2 * i) - .8, this.prg.use(), this.prg.uMVP(e.getMVP(this.node._wmatrix)), this.prg.uTextures(t), this.prg.uProgress(this.progress), this.prg.uRadius(i), this.vbuffer.attribPointer(this.prg), this.ibuffer.bind(), this.vbuffer.bind(); let r = this.gl; this.instanceBuffer.attribPointer(this.prg), r.vertexAttribDivisor(this.prg.aInstanceID(), 1), this.gl.drawElementsInstanced(r.TRIANGLES, this.icount, r.UNSIGNED_SHORT, 0, this.cardCount) } constructor(e, t = 5, i = .1) { this.gl = e, this.cardCount = t, this.margin = i, this.progress = 0, this.node = new R.Z, this.prg = function(e, t, i) { let r = "#version 300 es\n precision highp float;\n in vec2 aPosition;\n in vec2 aTexCoord;\n in vec2 aInstanceID;\n \n out vec3 vTexCoord;\n out vec2 vViewportPosition;\n \n uniform float uProgress;\n uniform float uRadius;\n uniform mat4 uMVP;\n \n #define PI 3.14159265359\n \n void main() {\n vec3 position = vec3(aPosition, 0.0);\n \n position.xy *= 1.0 - ".concat(i, ";\n \n // circle shape\n const float quarter = 1.0 / 4.0;\n float stride = 1.0 / (").concat(t, ".0);\n float circleProgress = -(aInstanceID.x + (position.x * stride)) + uProgress + quarter;\n \n float angle = circleProgress * 2.0 * PI;\n float radius = uRadius;\n \n position.x = cos(angle) * radius;\n position.z = sin(angle) * radius * 0.5;\n \n gl_Position = uMVP * vec4(position, 1.0);\n \n vTexCoord = vec3(aTexCoord, aInstanceID.y);\n \n vViewportPosition = gl_Position.xy / gl_Position.w;\n \n }\n "); return new M.Z(e, r, "#version 300 es\n precision highp float;\n \n uniform mediump sampler2DArray uTextures;\n \n in vec3 vTexCoord;\n in vec2 vViewportPosition;\n \n out vec4 fragColor;\n \n void main() {\n vec3 texcoords = vTexCoord;\n texcoords.x = gl_FrontFacing ? texcoords.x : 1.0 - texcoords.x;\n float isFront = gl_FrontFacing ? 0.0 : 1.0;\n\n vec4 color = texture(uTextures, texcoords);\n vec4 blur = texture(uTextures, texcoords, 1.0);\n fragColor = mix(blur, color, isFront);\n \n fragColor.rgb *= 0.5 + isFront * 0.5;\n fragColor.a *= clamp(smoothstep(-1.0, -0.8, vViewportPosition.y), 0.0, 1.0);\n\n }") }(this.gl, this.cardCount, this.margin), this.vbuffer = new z.Z(e), this.ibuffer = new A.Z(e), this.vbuffer.attrib("aPosition", 2, e.FLOAT).attrib("aTexCoord", 2, e.FLOAT); let r = 5 / 3; this.icount = 114; let s = new Float32Array(160), n = new Uint16Array(114), o = 0, a = 0; for (let e = 0; e < 2; e++) for (let t = 0; t < 20; t++) s[o++] = t / 19 - .5, s[o++] = (e / 1 - .5) * 1 / r, s[o++] = 1 - t / 19, s[o++] = e / 1; for (let e = 0; e < 1; e++) for (let t = 0; t < 19; t++) { let i = 20 * e + t, r = i + 1, s = i + 20, o = s + 1; n[a++] = i, n[a++] = s, n[a++] = r, n[a++] = r, n[a++] = s, n[a++] = o } this.vbuffer.data(s), this.ibuffer.data(n); let l = new Float32Array(2 * this.cardCount); for (let e = 0; e < this.cardCount; e++) l[2 * e + 0] = e / this.cardCount, l[2 * e + 1] = e; this.instanceBuffer = new z.Z(this.gl, l, this.gl.STATIC_DRAW), this.instanceBuffer.attrib("aInstanceID", 2, this.gl.FLOAT) } } var Z = i(59316), B = i(15202); class O extends Z.Z { size(e, t, i) { let r = this.gl; this.width = e, this.height = t, this.depth = i, r.bindTexture(35866, this.id), r.texStorage3D(35866, 8, this.internal, this.width, this.height, this.depth), r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL, 1) } fromImage(e, t) { let i = this.gl; this.width = e.width, this.height = e.height, this.depth = Math.max(t, this.depth), i.bindTexture(35866, this.id), i.texSubImage3D(35866, 0, 0, 0, t, this.width, this.height, 1, this.format, this.type, e) } fromData(e, t, i) { let r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : null, s = this.gl; this.width = e, this.height = t, this.depth = i, r = r || null, s.bindTexture(35866, this.id), s.texImage3D(35866, 0, this.internal, this.width, this.height, i, 0, this.format, this.type, r) } constructor(e, t, i, r) { if (super(e, t, i, r), this.textureType = Z.N.TEXTURE_2D_ARRAY, this._target = 35866, this.depth = 0, !(0, B.I)(e)) throw Error("Texture Array is only available in webgl2"); e.bindTexture(35866, this.id), this.setFilter(!0, !0, !0), this.clamp() } } var H = i(47945); (n = l || (l = {}))[n.Idle = 0] = "Idle", n[n.Transitionning = 1] = "Transitionning", n[n.Dragging = 2] = "Dragging"; class q extends L.Z { async load() { this._abortCtrl = new AbortController, await this.loadImages(), this._abortCtrl.signal.aborted || (this.texture.bind(), this.gl.generateMipmap(this.gl.TEXTURE_2D_ARRAY), this.canvas.addEventListener("pointerdown", this.onPointerDown), this.canvas.addEventListener("pointermove", this.onPointerMove), this.canvas.addEventListener("pointerup", this.onPointerUp), this._loaded = !0, this.start()) } async loadImages() { let e = this.cards.length; this.texture.size(1800, 1080, e); for (let o = 0; o < e; o++) { var t, i, r, s, n; let e = null === (i = this.cards[o].fields.heroImage) || void 0 === i ? void 0 : null === (t = i.fields.file) || void 0 === t ? void 0 : t.url; if (e || (e = null === (s = this.cards[o].fields.desktopHeroImage) || void 0 === s ? void 0 : null === (r = s.fields.file) || void 0 === r ? void 0 : r.url), !e) continue; let a = new Image; if (a.crossOrigin = "anonymous", a.src = e, await new Promise((e, t) => { a.onload = e, a.onerror = t }), 1800 !== a.width || 1080 !== a.height) { let e = function(e, t, i) { let r = document.createElement("canvas"); return r.width = 1800, r.height = 1080, r.getContext("2d").drawImage(e, 0, 0, 1800, 1080), r.toDataURL("image/jpeg", .8) }(a, 0, 0); a.src = e, await new Promise((e, t) => { a.onload = e, a.onerror = t }) } if (null === (n = this._abortCtrl) || void 0 === n ? void 0 : n.signal.aborted) return; this.texture.fromImage(a, o) } } unload() { var e; this.canvas.removeEventListener("pointerdown", this.onPointerDown), this.canvas.removeEventListener("pointermove", this.onPointerMove), this.canvas.removeEventListener("pointerup", this.onPointerUp), null === (e = this._abortCtrl) || void 0 === e || e.abort(), this._loaded = !1, super.unload() } cardIndexToProgress(e) { return this.stepSize * e } idle() { this.idleTime += this.dt, this.idleProgress = this.idleTime / this.sliderState.idleDuration, this.dispatch(e => ({ ...e, idleTime: this.idleTime })), this.progress = this.cardIndexToProgress(this.currentCard) + this.idleProgress * this.stepSize * .125, this.idleProgress >= 1 && (this.idleTime = 0, this.goTo((this.currentCard + 1) % this.cards.length)) } goToPrev() { let e = (this.targetCard - 1 + this.cards.length) % this.cards.length; this.goTo(e, .5) } goToNext() { let e = (this.targetCard + 1) % this.cards.length; this.goTo(e, .5) } goTo(e) { var t; let i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1.15; this.mode = 1, null === (t = this.tween) || void 0 === t || t.kill(); let r = this.cardIndexToProgress(this.targetCard), s = this.cardIndexToProgress(e); r >= 1 - (this.stepSize + .01) && 0 == e && (s += 1), r <= this.stepSize + .01 && e == this.cards.length - 1 && (s -= 1), this.idleTime = 0, this.targetCard = e, this.dispatch(t => ({ ...t, idleTime: 0, activeCard: e })), this.tween = v.ZP.to(this, { progress: s, duration: i, ease: "power2.inOut", onComplete: () => { this.mode = 0, this.currentCard = e, this.progress = this.cardIndexToProgress(e) } }) } render() { var e; this.gl.viewport(0, 0, this.width, this.height), this.gl.clearColor(0, 0, 0, 0), this.gl.clear(this.gl.COLOR_BUFFER_BIT | this.gl.DEPTH_BUFFER_BIT), 0 == this.mode && this.idle(), this.dragTime += 2 == this.mode ? 5 * this.dt : -(5 * this.dt), this.dragTime = Math.max(0, Math.min(1, this.dragTime)); let t = 1 - .02 * ((e = this.dragTime) < .5 ? 4 * e * e * e : (e - 1) * (2 * e - 2) * (2 * e - 2) + 1); this.smoothDragCoord[0] += (this.dragCoord[0] - this.smoothDragCoord[0]) * this.dt * 5, this.smoothDragCoord[1] += (this.dragCoord[1] - this.smoothDragCoord[1]) * this.dt * 5; let i = this.smoothDragCoord[0] / this.width * 2 - 1, r = this.smoothDragCoord[1] / this.height * 2 - 1; H.quat.rotateY(this.pointerRotation, this.idleRotation, -(.05 * i)), H.quat.rotateX(this.pointerRotation, this.pointerRotation, .05 * r), H.quat.slerp(this.wheel.node.rotation, this.pointerRotation, this.idleRotation, 0), this.wheel.node.setScale(t), this.wheel.node.z = -3 + .8 * Math.max(0, Math.cos(this.progress * 6.2832)), this.root.updateWorldMatrix(), this.camera.updateViewProjectionMatrix(this.width, this.height), this.drawConfig.apply(), this.wheel.progress = this.progress, this.wheel.render(this.camera, this.texture), this.glState.apply() } resize() { this.canvasWidth < 768 ? this.wheel.node.y = .5 : this.wheel.node.y = -.1 } constructor(e, t, i, r) { super(e, { alpha: !0, depth: !0, premult: !1, pixelRatio: -1 }), this.canvas = e, this.cards = t, this.sliderState = i, this.dispatch = r, this._abortCtrl = null, this._loaded = !1, this.targetCard = 0, this.currentCard = 0, this.stepSize = 0, this.progress = 0, this.idleTime = 0, this.idleProgress = 0, this.idleRotation = H.quat.create(), this.pointerRotation = H.quat.create(), this.mode = 0, this.dragStartProgress = 0, this.dragDelta = 0, this.dragTime = 0, this.dragStartCoord = [0, 0], this.dragCoord = [0, 0], this.smoothDragCoord = [0, 0], this.onPointerDown = e => { var t; 1 != this.mode && (null === (t = this.tween) || void 0 === t || t.kill(), this.mode = 2, this.dragStartCoord[0] = e.clientX, this.dragStartCoord[1] = e.clientY, this.dragStartProgress = this.progress, this.dragDelta = 0) }, this.onPointerMove = e => { this.dragCoord[0] = e.clientX, this.dragCoord[1] = e.clientY, 2 == this.mode && (this.dragDelta = (this.dragCoord[0] - this.dragStartCoord[0]) / this.width * .15, this.progress = this.dragStartProgress - this.dragDelta, this.progress = this.progress % 1) }, this.onPointerUp = e => { var t; if (2 === this.mode) { if (this.mode = 1, Math.abs(this.dragDelta) > .05 * this.stepSize) { 0 > Math.sign(this.dragDelta) ? this.goToNext() : this.goToPrev(); return } null === (t = this.tween) || void 0 === t || t.kill(), this.tween = v.ZP.to(this, { progress: this.dragStartProgress, duration: .3, onComplete: () => { this.mode = 0 } }) } }, this.glState = F.Z.get(this.gl), this.drawConfig = this.glState.config().enableDepthTest(!0).depthMask(!0).enableCullface(!1).enableBlend(!1), this.root = new R.Z, this.camera = new S.Z(new I.Z), this.camera.lens.setHorizontalFov(35 * Math.PI / 180), this.camera.lens.near = .1, this.camera.lens.far = 10, this.texture = new O(this.gl, this.gl.RGB, this.gl.UNSIGNED_BYTE, this.gl.RGB8), this.wheel = new D(this.gl, this.cards.length), this.wheel.node.z = -3, this.wheel.node.y = -.1, this.wheel.node.rotateX(-.18), this.wheel.node.rotateZ(.12), this.idleRotation.set(this.wheel.node.rotation), this.stepSize = 1 / this.cards.length, this.currentCard = this.sliderState.activeCard, this.targetCard = this.currentCard, this.progress = this.stepSize * this.currentCard, this.root.add(this.wheel.node), this.root.add(this.camera) } } var U = (0, f.forwardRef)(function(e, t) { let i = (0, f.useRef)(null), [r, s] = (0, f.useState)(null); return (0, f.useEffect)(() => { if (!i.current) { console.error("Canvas not found"); return } let t = new q(i.current, _w.__heroEntries || e.cards, e.state, e.updater); return (0, E._8)(t.load()), s(t), () => { s(null), t.unload() } }, []), (0, f.useImperativeHandle)(t, () => ({ goTo(e) { null == r || r.goTo(e) } }), [r]), (0, c.jsx)("canvas", { className: e.className, ref: i }) }), G = i(36934), V = i(36096); function Y(e) { let { title: t, tag: i, entries: r } = e, s = (0, f.useRef)(null), n = (0, f.useCallback)(e => { var t; null === (t = s.current) || void 0 === t || t.goTo(e) }, [s]), [o, a] = (0, f.useState)({ activeCard: 0, idleTime: 0, idleDuration: 5 }), l = (0, f.useMemo)(() => o.activeCard % r.length, [r, o.activeCard]), g = (0, f.useMemo)(() => o.idleTime / o.idleDuration, [o.idleTime, o.idleDuration]), { setHeroColors: v } = (0, G.f)(); (0, f.useEffect)(() => { var e, t; v({ color1: (null === (e = r[l].fields.colorMain) || void 0 === e ? void 0 : e.value) || "", color2: (null === (t = r[l].fields.colorSecondary) || void 0 === t ? void 0 : t.value) || "" }) }, [l, v, r]); let x = (0, f.useMemo)(() => { var e, t; return { c1: (null === (e = r[l].fields.colorMain) || void 0 === e ? void 0 : e.value) || "", c2: (null === (t = r[l].fields.colorSecondary) || void 0 === t ? void 0 : t.value) || "" } }, [l, r]), b = (0, f.useMemo)(() => { var e; return (null === (e = r[l].fields.categories) || void 0 === e ? void 0 : e.length) ? r[l].fields.categories.map(e => { var t; return null !== (t = null == e ? void 0 : e.fields.label) && void 0 !== t ? t : "" }).join(", ") : "" }, [l, r]); return (0, c.jsxs)("div", { className: (0, d.cn)("SectionHomepageHero relative min-h-svh text-white grid grid-cols-6 md:grid-cols-12 gap-x-12 md:gap-x-48 px-container pb-44 items-end overflow-visible", k().homepageHero), children: [(0, c.jsx)(V.default, { color1: x.c1, color2: x.c2, className: "absolute top-0" }), (0, c.jsxs)("div", { className: "absolute w-full h-full", children: [(0, c.jsx)(h.default, { type: "ape_bg", className: "pointer-events-none touch-none absolute w-full h-full" }), (0, c.jsx)(U, { ref: s, cards: r, state: o, updater: a, className: "absolute h-full w-full cursor-move select-none touch-pan-y" })] }), (0, c.jsxs)("div", { className: "hidden absolute inset-y-32 right-32 h-full md:flex flex-col gap-16 items-center justify-center", children: [(0, c.jsx)(_, { icon: "arrowRight", onClick: () => n(l + 1 >= r.length ? 0 : l + 1) }), (0, c.jsx)(_, { icon: "arrowLeft", onClick: () => n(l - 1 < 0 ? r.length - 1 : l - 1) })] }), (0, c.jsxs)("div", { className: "relative pointer-events-none col-start-1 col-span-6 md:col-span-12 grid grid-cols-6 md:grid-cols-12 md:place-items-baseline gap-x-8 gap-y-16 md:gap-x-24", children: [(0, c.jsxs)("div", { className: "pointer-events-auto col-start-1 col-span-6 md:col-start-2 md:col-span-6 flex flex-row justify-center md:justify-start items-center gap-8", children: [(0, c.jsx)(u.J, { className: "text-32", name: "fire" }), (0, c.jsx)("h1", { className: "font-manuka text-32 uppercase leading-tight mr-8", children: t }), (0, c.jsx)(P.M, { children: (0, c.jsx)("div", { className: "overflow-hidden relative", children: (0, c.jsx)(T.E.span, { className: "block", initial: { y: 100 }, animate: { y: 0 }, exit: { y: -100 }, transition: { duration: .2, ease: "easeOut" }, layout: !0, children: (0, c.jsx)(j.d, { children: b || i }) }, "home-hero-tag-".concat(l)) }) })] }), (0, c.jsx)("div", { className: "pointer-events-auto col-start-1 col-span-6 md:col-start-2 md:col-span-6 flex flex-row justify-center items-baseline", children: (0, c.jsx)(P.M, { children: (0, c.jsx)("h2", { className: "overflow-hidden relative", children: (0, c.jsx)(T.E.span, { className: "block text-56 md:text-120 font-normal font-manuka uppercase leading-tighter", initial: { y: 100 }, animate: { y: 0 }, exit: { y: -100 }, transition: { duration: .2, delay: .1, ease: "easeOut" }, layout: !0, children: r[l].fields.name }, "home-hero-title-".concat(l)) }) }) }), (0, c.jsxs)("div", { className: "pointer-events-auto col-start-1 col-span-6 md:col-start-2 md:col-span-6 flex flex-col gap-16 items-center md:items-baseline", children: [(0, c.jsx)(P.M, { children: (0, c.jsx)("p", { className: "overflow-hidden relative", children: (0, c.jsx)(T.E.span, { className: "block md:max-w-[300px] min-h-32 uppercase font-sans text-12 leading-snug tracking-[0.24px]", initial: { y: 100 }, animate: { y: 0 }, exit: { y: -100 }, transition: { duration: .2, ease: "easeOut" }, layout: !0, children: r[l].fields.excerpt }, "home-hero-title-".concat(l)) }) }), (0, c.jsx)(m.K4, { className: "min-w-[156px] flex-none flex-shrink self-start m-auto md:m-0", href: "/apps/".concat(r[l].fields.slug), children: "Launch" })] }), (0, c.jsxs)("div", { className: "pointer-events-auto col-start-1 md:col-start-8 col-span-8 md:col-span-4 w-full flex flex-col gap-16 items-center md:items-end justify-end text-right pb-4 md:pb-0 mt-48 md:mt-0", children: [(0, c.jsx)(p.UILink, { icon: "arrowLink", className: "pointer-events-auto font-mono leading-tight tracking-widest text-12 uppercase", href: "/apps/", children: "See All Targets" }), (0, c.jsx)("div", { className: "flex gap-8", children: null == r ? void 0 : r.map((e, t) => { var i, r; let s = (null == e ? void 0 : null === (r = e.fields.landscapeThumbnail) || void 0 === r ? void 0 : null === (i = r.fields.file) || void 0 === i ? void 0 : i.url) || ""; return (0, c.jsxs)("button", { type: "button", className: "transition-all duration-300 ease-in-out relative rounded-8 overflow-hidden size-48 border-2 ".concat(l === t ? "border-white shadow-[0_0_24px_0_rgba(255,255,255,0.70)]" : "border-transparent shadow-[0_0_0_0_rgba(255,255,255,0.70)]"), onClick: () => n(t), children: [(0, c.jsxs)("div", { className: (0, d.cn)("absolute inset-0 size-full"), children: [s ? (0, c.jsx)("img", { className: (0, d.cn)("absolute inset-0 size-full object-cover"), src: s, alt: e.fields.name, loading: "lazy" }) : null, (0, c.jsx)("span", { className: "transition-all duration-300 ease-in-out absolute inset-0 bg-gradient-to-b ".concat(l === t ? "from-transparent via-transparent" : "opacity-50 from-black via-black", " to-black") })] }), (0, c.jsxs)("div", { className: "".concat(l === t ? "opacity-100" : "opacity-0", " transition-all duration-300 ease-in-out absolute bottom-6 left-8 right-8 translate-x-0"), children: [(0, c.jsx)("span", { className: "absolute left-0 w-full h-2 rounded-2 bg-black opacity-20" }), (0, c.jsx)("span", { className: "absolute left-0 w-full h-2 rounded-2 bg-white origin-left ".concat(l !== t && "hidden"), style: { transform: "scaleX(".concat(g, ")") } })] })] }, "hero-img-".concat(t)) }) })] })] })] }) } }, 19332: function(e, t, i) { "use strict"; i.d(t, { SectionSpotlightBackground: function() { return b } }); var r = i(81785), s = i(24978), n = i(50995), o = i(32422), a = i(47679), l = i(41206), c = i(163), d = i(45305), h = i(20825), u = i(83603), p = i(2961), m = i(86843), f = i.n(m); function g(e) { var t, i; let { className: n, entry: o } = e, a = (null == o ? void 0 : null === (i = o.fields.landscapeThumbnail) || void 0 === i ? void 0 : null === (t = i.fields.file) || void 0 === t ? void 0 : t.url) || "", m = (0, s.useRef)(null), g = { damping: 100, stiffness: 400 }, [v, x] = (0, s.useState)(!1); (0, s.useLayoutEffect)(() => { let e = () => { x(window.matchMedia("(min-width: 1024px)").matches) }; return e(), window.addEventListener("resize", e), () => { window.removeEventListener("resize", e) } }, []); let b = (0, c.c)(-300), w = (0, c.c)(-150), C = (0, s.useRef)(null), y = (0, d.H)(w, [-300, 300], [15, -15]), _ = (0, d.H)(b, [-300, 300], [-15, 15]), j = (0, h.q)(y, g), N = (0, h.q)(_, g), k = (0, u.Y)(C); return (0, s.useEffect)(() => { k || (b.set(-300), w.set(-150)) }, [k]), (0, s.useEffect)(() => { let e = e => { if (C.current && v && k) { let t = C.current.getBoundingClientRect(), i = t.left + t.width / 2, r = t.top + t.height / 2, s = e.clientX - i, n = e.clientY - r; b.set(s), w.set(n) } }; return document.addEventListener("mousemove", e), () => { document.removeEventListener("mousemove", e) } }, [C, v, k]), (0, r.jsx)("div", { ref: m, className: (0, l.cn)("relative", f().root, n), children: (0, r.jsx)("div", { className: (0, l.cn)("relative size-full", f().preview), children: (0, r.jsx)("div", { className: (0, l.cn)("absolute inset-0 size-full"), children: a && (0, r.jsx)(p.E.div, { ref: C, className: (0, l.cn)("relative size-full rounded-8 overflow-hidden"), style: { transformPerspective: "800px", rotateX: j, rotateY: N, rotateZ: 2.5 }, children: (0, r.jsx)("img", { className: (0, l.cn)("absolute inset-0 size-full object-cover"), src: a, alt: o.fields.name, loading: "lazy" }) }) }) }) }) } var v = i(47257), x = i.n(v); function b(e) { let { className: t, entries: i } = e, o = s.createRef(); (0, a.V)(() => { let e = o.current, t = e.querySelector(".grid-wrap"), i = e.querySelectorAll(".grid__item"), r = n.ZP.timeline({ defaults: { ease: "none" }, scrollTrigger: { trigger: t, start: "top bottom+=50%", end: "top+=".concat(window.innerHeight, " top-=5%"), scrub: !0 } }); e.style.setProperty("--perspective", "1000px"), r.set(i, { transformOrigin: "50% 50%", xPercent: n.ZP.utils.wrap([-100, 0, c ? -100 : -20, c ? 80 : 0]), z: n.ZP.utils.wrap([-500, -350, -250, -150]), opacity: n.ZP.utils.wrap([.2, .4, .25, .4]) }).fromTo(i, { yPercent: n.ZP.utils.wrap([0, 0, 0, 0]), rotateY: n.ZP.utils.wrap([-15, -25, 50, -60]) }, { yPercent: n.ZP.utils.wrap([-100, -40, -25, 0]), rotateY: n.ZP.utils.wrap([20, -25, 50, -60]), duration: 3 }) }, { scope: o }); let [c, d] = (0, s.useState)(!1); return (0, s.useLayoutEffect)(() => { let e = () => { d(window.matchMedia("(min-width: 1024px)").matches) }; return e(), window.addEventListener("resize", e), () => { window.removeEventListener("resize", e) } }, []), (0, r.jsx)("div", { ref: o, className: (0, l.cn)("SectionSpotlightBackground relative px-container", x().root, x().grid, t), children: (0, r.jsx)("div", { className: (0, l.cn)("grid-wrap", x()["grid-wrap"]), children: i && i.slice(0, 4).map((e, t) => e && (0, r.jsx)(g, { className: (0, l.cn)("grid__item", x().grid__item), entry: e }, t)) }) }) } n.ZP.registerPlugin(o.i) }, 46418: function(e, t, i) { "use strict"; i.d(t, { Z: function() { return h } }); var r = i(81785), s = i(24978), n = i(163), o = i(45305), a = i(20825), l = i(83603), c = i(2961), d = i(41206); function h(e) { let { className: t, img: i, rotate: h = 7.27 } = e, u = { damping: 100, stiffness: 400 }, [p, m] = (0, s.useState)(!1); (0, s.useLayoutEffect)(() => { let e = () => { m(window.matchMedia("(min-width: 1024px)").matches) }; return e(), window.addEventListener("resize", e), () => { window.removeEventListener("resize", e) } }, []); let f = (0, n.c)(-300), g = (0, n.c)(-150), v = (0, s.useRef)(null), x = (0, o.H)(g, [-300, 300], [15, -15]), b = (0, o.H)(f, [-300, 300], [-15, 15]), w = (0, a.q)(x, u), C = (0, a.q)(b, u), y = (0, l.Y)(v); return (0, s.useEffect)(() => { y || (f.set(-300), g.set(-150)) }, [y]), (0, s.useEffect)(() => { let e = e => { if (v.current && p && y) { let t = v.current.getBoundingClientRect(), i = t.left + t.width / 2, r = t.top + t.height / 2, s = e.clientX - i, n = e.clientY - r; f.set(s), g.set(n) } }; return document.addEventListener("mousemove", e), () => { document.removeEventListener("mousemove", e) } }, [v, p, y]), (0, r.jsxs)(c.E.div, { ref: v, className: (0, d.cn)("max-w-[600px] stroke-1 md:stroke-2", t), style: { transformPerspective: "800px", rotateX: w, rotateY: C, rotateZ: h, scale: 1.5 }, children: [(0, r.jsx)("div", { className: "absolute inset-0 rounded-16 overflow-hidden", style: { background: "linear-gradient(45deg, #A281FF 10%, #EB8280 33%, #EBBF9A 66%, #89D0FF 90%)" } }), (0, r.jsx)("div", { className: "absolute inset-px md:inset-2 z-10 rounded-16 overflow-hidden", style: { background: "linear-gradient(182deg, rgba(24, 83, 117, 0.00) 39.56%, rgba(24, 83, 117, 0.80) 93.99%), transparent -246.895px 1.668px / 131.996% 100% no-repeat" } }), (0, r.jsx)("img", { className: "relative h-auto rounded-16 overflow-hidden", src: i, alt: "" })] }) } }, 61437: function(e, t, i) { "use strict"; i.d(t, { default: function() { return u } }); var r = i(81785), s = i(24978), n = i(53541), o = i(26445), a = i(24003), l = i(41206), c = i(61692), d = i(83420), h = i(46418); function u(e) { let { className: t, title: i, description: u, ctaLabel: p, ctaLink: m, ctaLabel2: f, ctaLink2: g, spotlightTitle: v, spotlightDescription: x, spotlightCtaLabel: b, spotlightCtaLink: w, spotlightImage: C } = e, [y, _] = (0, s.useState)(null); return (0, s.useEffect)(() => { (async () => { _(await (0, n.C)(u)) })() }, [u]), (0, r.jsxs)("div", { className: (0, l.cn)("grid grid-cols-6 lg:grid-cols-12 gap-x-16 md:gap-x-16 px-container items-center min-h-svh", t), children: [(0, r.jsxs)("div", { className: "col-span-6 lg:col-start-2 lg:col-span-6 max-w-[800px] flex flex-col gap-12 md:gap-24", children: [(0, r.jsx)("img", { src: "/maxum-spotlight.png?v=1", alt: "MAXUM Spotlight", className: "w-[213px] h-[38px]" }), (0, r.jsx)("h2", { className: "text-56 md:text-120 font-normal font-manuka uppercase leading-tighter", children: i }), (0, r.jsx)("div", { className: "md:w-10/12 font-sans text-14 md:text-16 leading-snug tracking-[0.24px]", children: y && (0, o.h)(y, { renderNode: { [a.INLINES.HYPERLINK]: (e, t) => (0, r.jsx)(d.UILink, { href: e.data.uri, variant: "secondary", children: t }), [a.BLOCKS.PARAGRAPH]: (e, t) => (0, r.jsx)("p", { className: (0, l.cn)("mb-em"), children: t }) } }) }), (0, r.jsxs)("div", { className: "flex gap-24", children: [m && p && (0, r.jsx)(c.K4, { className: "flex-none flex-shrink self-start bg-black/10", href: m, children: p }), g && f && (0, r.jsx)(c.K4, { className: "flex-none flex-shrink self-start bg-black/10", href: g, children: f })] })] }), (0, r.jsxs)("div", { className: "relative py-32 md:py-0 col-start-3 col-span-4 lg:col-start-9 lg:col-span-4 text-white", children: [(0, r.jsx)(h.Z, { className: "absolute md:relative p-px md:p-0.5 top-[30%] left-[10%] -right-[50%] md:left-auto md:top-auto md:right-auto", img: C }), (0, r.jsxs)("div", { className: "relative flex flex-col gap-8 z-1 pt-120 pb-70 md:pt-0 md:pb-0 md:absolute bottom-0 left-0", children: [(0, r.jsx)("h2", { className: "text-32 md:text-48 font-normal font-manuka uppercase leading-tighter", children: v }), (0, r.jsx)("p", { className: "max-w-[160px] md:max-w-[305px] font-mono text-10 md:text-12 leading-snug tracking-wide uppercase", children: x }), w && b && (0, r.jsx)(c.K4, { className: "flex-none flex-shrink self-start", href: w, children: b })] })] })] }) } }, 69188: function(e) { e.exports = { embla: "embla_embla__3JWx0", embla__viewport: "embla_embla__viewport__dA8qK", embla__container: "embla_embla__container__rxieP", embla__slide: "embla_embla__slide__RemXN", section: "embla_section__ZGZqf", children: "embla_children__Fn_Ez" } }, 14172: function(e) { e.exports = { root: "SimpleSlider_root__Y8oel", track: "SimpleSlider_track__4r_YU" } }, 24552: function(e) { e.exports = { categoryLabel: "discover-apps_categoryLabel__f1AE8", thumb: "discover-apps_thumb__NmNb_", background: "discover-apps_background__HSKv_", backgroundTop: "discover-apps_backgroundTop__xdmas", backgroundBottom: "discover-apps_backgroundBottom__4C7KI", groups: "discover-apps_groups__0fVIb", group: "discover-apps_group__lWuTT", duplicatedGroup: "discover-apps_duplicatedGroup__agvX_", marquee: "discover-apps_marquee__JQmXO", "is-visible": "discover-apps_is-visible__KhNQS" } }, 42278: function(e) { e.exports = { homepageHero: "homepage-hero_homepageHero__cYqEt", placeholder: "homepage-hero_placeholder__ebQ4Y", FluidTitle: "homepage-hero_FluidTitle__yb2qi" } }, 47257: function(e) { e.exports = { root: "Background_root__gicac", grid: "Background_grid__B6Ncz", "grid-wrap": "Background_grid-wrap__MIDDp", grid__item: "Background_grid__item__ltaIx", "grid__item-inner": "Background_grid__item-inner__5m4AD" } }, 86843: function(e) { e.exports = { root: "BackgroundCard_root__HmYr7" } }, 793: function(e) { e.exports = { root: "UIBtnIcon_root__adPQp", "is-disabled": "UIBtnIcon_is-disabled__8Sa1L", inner: "UIBtnIcon_inner__xY0wg", primary: "UIBtnIcon_primary__V_cjy", secondary: "UIBtnIcon_secondary__qHaIC" } } }, function(e) { e.O(0, [1195, 8248, 9434, 7495, 7542, 4182, 6367, 2961, 8256, 5063, 3901, 8290, 6917, 6836, 169, 9210, 1744], function() { return e(e.s = 90913) }), _N_E = e.O() } ]);