@retinalabsllc/zairusjs 9.0.80 → 9.0.90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -779,6 +779,7 @@ var Banner = ({
779
779
  // src/components/UniversalOrganizationPage.tsx
780
780
  import { HugeiconsIcon as HugeiconsIcon5 } from "@hugeicons/react";
781
781
  import {
782
+ ArrowLeft01Icon,
782
783
  CircleLock02Icon
783
784
  } from "@hugeicons/core-free-icons";
784
785
  var InputSpinner2 = () => /* @__PURE__ */ React11.createElement("svg", { className: "animate-spin h-4 w-4 text-neutral-400", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }, /* @__PURE__ */ React11.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), /* @__PURE__ */ React11.createElement("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" }));
@@ -791,8 +792,12 @@ var UniversalOrganizationPage = ({
791
792
  slugPrefixUrl = ".aeona.eth",
792
793
  bannerProps,
793
794
  onSaveConfiguration,
794
- onCheckSlugAvailability
795
+ onCheckSlugAvailability,
796
+ onBack
795
797
  }) => {
798
+ const onBackHandler = onBack ?? (() => {
799
+ if (typeof window !== "undefined") window.history.back();
800
+ });
796
801
  const resolvedInitialUsername = initialUsername || initialSlug;
797
802
  const [web3Name, setWeb3Name] = useState6(initialOrgName);
798
803
  const [username, setUsername] = useState6(resolvedInitialUsername);
@@ -869,7 +874,15 @@ var UniversalOrganizationPage = ({
869
874
  };
870
875
  const hasChanges = web3Name !== initialOrgName || slug !== initialSlug || username !== resolvedInitialUsername;
871
876
  const isSaveDisabled = isSubmitting || isReadOnly || isCheckingSlug || !hasChanges || web3Name.length < 3 || slug.length < 3 || username.length < 3 || slug !== initialSlug && slugAvailable === false;
872
- return /* @__PURE__ */ React11.createElement("div", { className: "flex flex-col gap-8 animate-in max-w-3xl w-full mx-auto rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ React11.createElement(ManagedToaster, null), /* @__PURE__ */ React11.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ React11.createElement("div", null, /* @__PURE__ */ React11.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Public Profile"), /* @__PURE__ */ React11.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your financial payment handle identifiers and global public cryptographic signature identity details.")), isReadOnly && /* @__PURE__ */ React11.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ React11.createElement(HugeiconsIcon5, { icon: CircleLock02Icon, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ React11.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ React11.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ React11.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ React11.createElement(
877
+ return /* @__PURE__ */ React11.createElement("div", null, /* @__PURE__ */ React11.createElement("div", { className: "mb-3 flex max-w-3xl w-full mx-auto items-center px-1" }, /* @__PURE__ */ React11.createElement(
878
+ "button",
879
+ {
880
+ onClick: onBackHandler,
881
+ className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] font-medium outline-none"
882
+ },
883
+ /* @__PURE__ */ React11.createElement(HugeiconsIcon5, { icon: ArrowLeft01Icon, size: 16 }),
884
+ " Back"
885
+ )), /* @__PURE__ */ React11.createElement("div", { className: "flex flex-col gap-8 animate-in max-w-3xl w-full mx-auto rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ React11.createElement(ManagedToaster, null), /* @__PURE__ */ React11.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ React11.createElement("div", null, /* @__PURE__ */ React11.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Public Profile"), /* @__PURE__ */ React11.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your financial payment handle identifiers and global public cryptographic signature identity details.")), isReadOnly && /* @__PURE__ */ React11.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ React11.createElement(HugeiconsIcon5, { icon: CircleLock02Icon, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ React11.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ React11.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ React11.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ React11.createElement(
873
886
  TextInput,
874
887
  {
875
888
  label: "Display Name",
@@ -922,7 +935,7 @@ var UniversalOrganizationPage = ({
922
935
  className: "text-[11px] tracking-widest text-neutral-400 hover:text-black transition-colors outline-none"
923
936
  },
924
937
  "Cancel"
925
- )))));
938
+ ))))));
926
939
  };
927
940
 
928
941
  // src/components/UniversalProfileSettings.tsx
@@ -933,7 +946,8 @@ import {
933
946
  CircleLock02Icon as CircleLock02Icon2,
934
947
  CancelCircleIcon,
935
948
  Loading03Icon as Loading03Icon2,
936
- LockKeyIcon
949
+ LockKeyIcon,
950
+ ArrowLeft01Icon as ArrowLeft01Icon2
937
951
  } from "@hugeicons/core-free-icons";
938
952
  var UniversalProfileSettings = ({
939
953
  initialFirstName,
@@ -946,8 +960,12 @@ var UniversalProfileSettings = ({
946
960
  hasPin = false,
947
961
  isPinLoading = false,
948
962
  onSavePin,
949
- onSaveProfile
963
+ onSaveProfile,
964
+ onBack
950
965
  }) => {
966
+ const onBackHandler = onBack ?? (() => {
967
+ if (typeof window !== "undefined") window.history.back();
968
+ });
951
969
  const [firstName, setFirstName] = useState7(initialFirstName);
952
970
  const [lastName, setLastName] = useState7(initialLastName);
953
971
  const [isSubmitting, setIsSubmitting] = useState7(false);
@@ -1022,7 +1040,15 @@ var UniversalProfileSettings = ({
1022
1040
  };
1023
1041
  const hasChanges = firstName !== initialFirstName || lastName !== initialLastName;
1024
1042
  const isSaveDisabled = isSubmitting || isReadOnly || !hasChanges || firstName.trim().length === 0 || lastName.trim().length === 0;
1025
- return /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col max-w-3xl w-full mx-auto rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ React12.createElement(ManagedToaster, null), /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ React12.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ React12.createElement("h1", { className: "text-black text-xl mb-1 truncate tracking-tight" }, "Personal Settings"), /* @__PURE__ */ React12.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your personal account profile.")), isReadOnly && /* @__PURE__ */ React12.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ React12.createElement(HugeiconsIcon6, { icon: CircleLock02Icon2, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ React12.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ React12.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ React12.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col sm:flex-row gap-6" }, /* @__PURE__ */ React12.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React12.createElement(
1043
+ return /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement("div", { className: "mb-3 flex max-w-3xl w-full mx-auto items-center px-1" }, /* @__PURE__ */ React12.createElement(
1044
+ "button",
1045
+ {
1046
+ onClick: onBackHandler,
1047
+ className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] font-medium outline-none"
1048
+ },
1049
+ /* @__PURE__ */ React12.createElement(HugeiconsIcon6, { icon: ArrowLeft01Icon2, size: 16 }),
1050
+ " Back"
1051
+ )), /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col max-w-3xl w-full mx-auto rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ React12.createElement(ManagedToaster, null), /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ React12.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ React12.createElement("h1", { className: "text-black text-xl mb-1 truncate tracking-tight" }, "Personal Settings"), /* @__PURE__ */ React12.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your personal account profile.")), isReadOnly && /* @__PURE__ */ React12.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ React12.createElement(HugeiconsIcon6, { icon: CircleLock02Icon2, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ React12.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ React12.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ React12.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ React12.createElement("div", { className: "flex flex-col sm:flex-row gap-6" }, /* @__PURE__ */ React12.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React12.createElement(
1026
1052
  TextInput,
1027
1053
  {
1028
1054
  label: "First Name",
@@ -1120,7 +1146,7 @@ var UniversalProfileSettings = ({
1120
1146
  className: "w-full py-3"
1121
1147
  },
1122
1148
  hasPin ? "Update PIN" : "Set PIN"
1123
- )))))));
1149
+ ))))))));
1124
1150
  };
1125
1151
 
1126
1152
  // src/components/UniversalErrorView.tsx
@@ -1216,7 +1242,7 @@ import React15, { useState as useState8, useEffect as useEffect6, useRef as useR
1216
1242
  import { HugeiconsIcon as HugeiconsIcon9 } from "@hugeicons/react";
1217
1243
  import toast4 from "react-hot-toast";
1218
1244
  import {
1219
- ArrowLeft01Icon,
1245
+ ArrowLeft01Icon as ArrowLeft01Icon3,
1220
1246
  ArrowRight01Icon,
1221
1247
  Loading03Icon as Loading03Icon4,
1222
1248
  ArrowDownRight01Icon,
@@ -1363,7 +1389,7 @@ var UniversalTransactionPage = ({
1363
1389
  disabled: currentPage <= 1 || isListLoading,
1364
1390
  className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
1365
1391
  },
1366
- /* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: ArrowLeft01Icon, size: 14 })
1392
+ /* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: ArrowLeft01Icon3, size: 14 })
1367
1393
  ), /* @__PURE__ */ React15.createElement(
1368
1394
  "button",
1369
1395
  {
@@ -2601,15 +2627,294 @@ var AppBento2 = ({ tagline, headline, features }) => {
2601
2627
  })))));
2602
2628
  };
2603
2629
 
2630
+ // src/components/UniversalSecurityPage.tsx
2631
+ import React27, { useState as useState18, useRef as useRef6 } from "react";
2632
+ import toast7 from "react-hot-toast";
2633
+ import { HugeiconsIcon as HugeiconsIcon19 } from "@hugeicons/react";
2634
+ import {
2635
+ CancelCircleIcon as CancelCircleIcon6,
2636
+ Loading03Icon as Loading03Icon10,
2637
+ Copy01Icon as Copy01Icon3,
2638
+ ArrowLeft01Icon as ArrowLeft01Icon4,
2639
+ Shield02Icon,
2640
+ Key01Icon,
2641
+ ArrowRight01Icon as ArrowRight01Icon4
2642
+ } from "@hugeicons/core-free-icons";
2643
+ var UniversalSecurityPage = ({
2644
+ has2FA,
2645
+ hasPasskey,
2646
+ userEmail = "your account",
2647
+ is2FALoading = false,
2648
+ isPasskeyLoading = false,
2649
+ onBack,
2650
+ onRequest2FASetup,
2651
+ onVerifyAndEnable2FA,
2652
+ onVerifyAndDisable2FA,
2653
+ onEnablePasskey,
2654
+ onDisablePasskey
2655
+ }) => {
2656
+ const [show2FASetupModal, setShow2FASetupModal] = useState18(false);
2657
+ const [show2FADisableModal, setShow2FADisableModal] = useState18(false);
2658
+ const [showPasskeyModal, setShowPasskeyModal] = useState18(false);
2659
+ const [twoFaSecret, setTwoFaSecret] = useState18("");
2660
+ const [twoFaQr, setTwoFaQr] = useState18("");
2661
+ const [isFetchingSetup, setIsFetchingSetup] = useState18(false);
2662
+ const [otp, setOtp] = useState18(Array(6).fill(""));
2663
+ const [isSubmitting, setIsSubmitting] = useState18(false);
2664
+ const inputRefs = useRef6([]);
2665
+ const resetOtp = () => {
2666
+ setOtp(Array(6).fill(""));
2667
+ setIsSubmitting(false);
2668
+ };
2669
+ const handleOtpChange = (index, value) => {
2670
+ const sanitizedValue = value.replace(/\D/g, "").slice(-1);
2671
+ const newOtp = [...otp];
2672
+ newOtp[index] = sanitizedValue;
2673
+ setOtp(newOtp);
2674
+ if (sanitizedValue && index < 5) {
2675
+ inputRefs.current[index + 1]?.focus();
2676
+ }
2677
+ };
2678
+ const handlePaste = (e) => {
2679
+ e.preventDefault();
2680
+ const pastedData = e.clipboardData.getData("text").replace(/\D/g, "").slice(0, 6);
2681
+ if (!pastedData) return;
2682
+ const newOtp = [...otp];
2683
+ for (let i = 0; i < pastedData.length; i++) {
2684
+ newOtp[i] = pastedData[i];
2685
+ }
2686
+ setOtp(newOtp);
2687
+ const focusIndex = Math.min(pastedData.length, 5);
2688
+ inputRefs.current[focusIndex]?.focus();
2689
+ };
2690
+ const handleCopySecret = async (secret) => {
2691
+ try {
2692
+ await navigator.clipboard.writeText(secret);
2693
+ toast7.success("Secret copied to clipboard");
2694
+ } catch {
2695
+ toast7.error("Failed to copy");
2696
+ }
2697
+ };
2698
+ const handleToggle2FA = async () => {
2699
+ if (is2FALoading) return;
2700
+ if (has2FA) {
2701
+ resetOtp();
2702
+ setShow2FADisableModal(true);
2703
+ } else {
2704
+ if (!onRequest2FASetup) return;
2705
+ setIsFetchingSetup(true);
2706
+ try {
2707
+ const data = await onRequest2FASetup();
2708
+ setTwoFaSecret(data.secret);
2709
+ setTwoFaQr(data.qrCodeUrl);
2710
+ resetOtp();
2711
+ setShow2FASetupModal(true);
2712
+ } catch (error) {
2713
+ toast7.error("Failed to initialize 2FA setup");
2714
+ } finally {
2715
+ setIsFetchingSetup(false);
2716
+ }
2717
+ }
2718
+ };
2719
+ const handleTogglePasskey = () => {
2720
+ if (isPasskeyLoading) return;
2721
+ if (hasPasskey) {
2722
+ if (onDisablePasskey) onDisablePasskey();
2723
+ } else {
2724
+ setShowPasskeyModal(true);
2725
+ }
2726
+ };
2727
+ const submitEnable2FA = async (code) => {
2728
+ if (!onVerifyAndEnable2FA) return;
2729
+ setIsSubmitting(true);
2730
+ try {
2731
+ const res = await onVerifyAndEnable2FA(code);
2732
+ if (res.success) {
2733
+ toast7.success("2FA Enabled Successfully");
2734
+ setShow2FASetupModal(false);
2735
+ } else {
2736
+ toast7.error("Invalid verification code");
2737
+ }
2738
+ } catch (error) {
2739
+ toast7.error("Verification failed");
2740
+ } finally {
2741
+ setIsSubmitting(false);
2742
+ }
2743
+ };
2744
+ const submitDisable2FA = async (code) => {
2745
+ if (!onVerifyAndDisable2FA) return;
2746
+ setIsSubmitting(true);
2747
+ try {
2748
+ const res = await onVerifyAndDisable2FA(code);
2749
+ if (res.success) {
2750
+ toast7.success("2FA Disabled");
2751
+ setShow2FADisableModal(false);
2752
+ } else {
2753
+ toast7.error("Invalid verification code");
2754
+ }
2755
+ } catch (error) {
2756
+ toast7.error("Verification failed");
2757
+ } finally {
2758
+ setIsSubmitting(false);
2759
+ }
2760
+ };
2761
+ const submitEnablePasskey = async () => {
2762
+ if (!onEnablePasskey) return;
2763
+ setIsSubmitting(true);
2764
+ try {
2765
+ const res = await onEnablePasskey();
2766
+ if (res.success) {
2767
+ toast7.success("Passkey Created Successfully");
2768
+ setShowPasskeyModal(false);
2769
+ }
2770
+ } catch (error) {
2771
+ toast7.error("Passkey setup failed or was canceled");
2772
+ } finally {
2773
+ setIsSubmitting(false);
2774
+ }
2775
+ };
2776
+ return /* @__PURE__ */ React27.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ React27.createElement(ManagedToaster, null), /* @__PURE__ */ React27.createElement("div", { className: "mb-6 flex items-center px-1" }, /* @__PURE__ */ React27.createElement(
2777
+ "button",
2778
+ {
2779
+ onClick: onBack,
2780
+ className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] font-medium outline-none"
2781
+ },
2782
+ /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowLeft01Icon4, size: 16 }),
2783
+ " Back"
2784
+ )), /* @__PURE__ */ React27.createElement("div", { className: "w-full flex flex-col gap-4" }, /* @__PURE__ */ React27.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React27.createElement(
2785
+ MenuRow3,
2786
+ {
2787
+ icon: Shield02Icon,
2788
+ title: "Authenticator App",
2789
+ subtitle: "Secure your account with 2FA",
2790
+ onClick: handleToggle2FA,
2791
+ isToggle: true,
2792
+ toggleState: has2FA,
2793
+ toggleLoading: is2FALoading || isFetchingSetup
2794
+ }
2795
+ ), /* @__PURE__ */ React27.createElement(
2796
+ MenuRow3,
2797
+ {
2798
+ icon: Key01Icon,
2799
+ title: "Passkeys",
2800
+ subtitle: "Sign in quickly with biometrics",
2801
+ onClick: handleTogglePasskey,
2802
+ isToggle: true,
2803
+ toggleState: hasPasskey,
2804
+ toggleLoading: isPasskeyLoading,
2805
+ isLast: true
2806
+ }
2807
+ ))), show2FASetupModal && /* @__PURE__ */ React27.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React27.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => !isSubmitting && setShow2FASetupModal(false) }), /* @__PURE__ */ React27.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ React27.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ React27.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Enable 2FA"), /* @__PURE__ */ React27.createElement("button", { onClick: () => !isSubmitting && setShow2FASetupModal(false), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: CancelCircleIcon6, size: 18 }))), /* @__PURE__ */ React27.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 pt-2" }, /* @__PURE__ */ React27.createElement("div", { className: "w-full flex justify-center mb-6 mix-blend-multiply" }, twoFaQr ? /* @__PURE__ */ React27.createElement("img", { src: twoFaQr, alt: "2FA QR Code", className: "w-40 h-40 object-contain rounded-xl border border-neutral-100 p-2" }) : /* @__PURE__ */ React27.createElement("div", { className: "w-40 h-40 bg-neutral-100 rounded-xl flex items-center justify-center animate-pulse" })), /* @__PURE__ */ React27.createElement("div", { className: "grid grid-cols-1 gap-y-6 gap-x-4 mb-8" }, /* @__PURE__ */ React27.createElement("div", null, /* @__PURE__ */ React27.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2 uppercase" }, "Setup Key"), /* @__PURE__ */ React27.createElement("div", { className: "flex items-center gap-2 min-w-0 bg-neutral-50 px-3 py-2.5 rounded-xl border border-neutral-100" }, /* @__PURE__ */ React27.createElement("span", { className: "text-[13px] font-mono tracking-widest text-black truncate min-w-0 block flex-1" }, twoFaSecret), /* @__PURE__ */ React27.createElement(
2808
+ "button",
2809
+ {
2810
+ onClick: () => handleCopySecret(twoFaSecret),
2811
+ className: "text-neutral-400 hover:text-black transition-colors outline-none shrink-0 ml-2"
2812
+ },
2813
+ /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: Copy01Icon3, size: 16 })
2814
+ )))), /* @__PURE__ */ React27.createElement("div", { className: "text-center mb-8 mt-2" }, /* @__PURE__ */ React27.createElement("h2", { className: "text-xl text-black mb-2 tracking-tight" }, "Security Check"), /* @__PURE__ */ React27.createElement("p", { className: "text-[13px] text-neutral-500" }, "Enter the 6-digit code from your app")), /* @__PURE__ */ React27.createElement("form", { className: "space-y-8", autoComplete: "off", onSubmit: (e) => {
2815
+ e.preventDefault();
2816
+ submitEnable2FA(otp.join(""));
2817
+ } }, /* @__PURE__ */ React27.createElement("div", { className: "flex justify-between gap-2", onPaste: handlePaste }, otp.map((digit, index) => /* @__PURE__ */ React27.createElement(
2818
+ "input",
2819
+ {
2820
+ key: index,
2821
+ ref: (el) => {
2822
+ inputRefs.current[index] = el;
2823
+ },
2824
+ type: "text",
2825
+ inputMode: "numeric",
2826
+ maxLength: 1,
2827
+ value: digit,
2828
+ onChange: (e) => handleOtpChange(index, e.target.value),
2829
+ onKeyDown: (e) => {
2830
+ if (e.key === "Backspace" && !otp[index] && index > 0) {
2831
+ inputRefs.current[index - 1]?.focus();
2832
+ }
2833
+ },
2834
+ className: "w-10 h-12 text-center text-lg bg-transparent border-b-2 border-neutral-100 text-black outline-none focus:border-black transition-all duration-300"
2835
+ }
2836
+ ))), /* @__PURE__ */ React27.createElement(
2837
+ ThreeDActionButton,
2838
+ {
2839
+ type: "submit",
2840
+ disabled: otp.join("").length < 6,
2841
+ isLoading: isSubmitting,
2842
+ className: "w-full py-3.5"
2843
+ },
2844
+ "Verify & Enable"
2845
+ ))))), show2FADisableModal && /* @__PURE__ */ React27.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React27.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => !isSubmitting && setShow2FADisableModal(false) }), /* @__PURE__ */ React27.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React27.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 border-b border-neutral-50" }, /* @__PURE__ */ React27.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Disable 2FA"), /* @__PURE__ */ React27.createElement("button", { onClick: () => !isSubmitting && setShow2FADisableModal(false), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: CancelCircleIcon6, size: 18 }))), /* @__PURE__ */ React27.createElement("div", { className: "p-6" }, /* @__PURE__ */ React27.createElement("div", { className: "text-center mb-8 mt-2" }, /* @__PURE__ */ React27.createElement("h2", { className: "text-xl text-black mb-2 tracking-tight" }, "Security Check"), /* @__PURE__ */ React27.createElement("p", { className: "text-[13px] text-neutral-500" }, "Enter the code from your authenticator app to disable 2FA.")), /* @__PURE__ */ React27.createElement("form", { className: "space-y-8", autoComplete: "off", onSubmit: (e) => {
2846
+ e.preventDefault();
2847
+ submitDisable2FA(otp.join(""));
2848
+ } }, /* @__PURE__ */ React27.createElement("div", { className: "flex justify-between gap-2", onPaste: handlePaste }, otp.map((digit, index) => /* @__PURE__ */ React27.createElement(
2849
+ "input",
2850
+ {
2851
+ key: index,
2852
+ ref: (el) => {
2853
+ inputRefs.current[index] = el;
2854
+ },
2855
+ type: "text",
2856
+ inputMode: "numeric",
2857
+ maxLength: 1,
2858
+ value: digit,
2859
+ onChange: (e) => handleOtpChange(index, e.target.value),
2860
+ onKeyDown: (e) => {
2861
+ if (e.key === "Backspace" && !otp[index] && index > 0) {
2862
+ inputRefs.current[index - 1]?.focus();
2863
+ }
2864
+ },
2865
+ className: "w-10 h-12 text-center text-lg bg-transparent border-b-2 border-neutral-100 text-black outline-none focus:border-black transition-all duration-300"
2866
+ }
2867
+ ))), /* @__PURE__ */ React27.createElement(
2868
+ ThreeDActionButton,
2869
+ {
2870
+ type: "submit",
2871
+ disabled: otp.join("").length < 6,
2872
+ isLoading: isSubmitting,
2873
+ className: "w-full py-3.5"
2874
+ },
2875
+ "Verify & Disable"
2876
+ ))))), showPasskeyModal && /* @__PURE__ */ React27.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React27.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => !isSubmitting && setShowPasskeyModal(false) }), /* @__PURE__ */ React27.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React27.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 border-b border-neutral-50" }, /* @__PURE__ */ React27.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Enable Passkey"), /* @__PURE__ */ React27.createElement("button", { onClick: () => !isSubmitting && setShowPasskeyModal(false), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: CancelCircleIcon6, size: 18 }))), /* @__PURE__ */ React27.createElement("div", { className: "p-6 text-center" }, /* @__PURE__ */ React27.createElement("div", { className: "w-16 h-16 bg-neutral-100 rounded-full flex items-center justify-center mx-auto mb-4 text-black" }, /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: Key01Icon, size: 28 })), /* @__PURE__ */ React27.createElement("h2", { className: "text-lg text-black mb-2 tracking-tight" }, "Simplify your Sign In"), /* @__PURE__ */ React27.createElement("p", { className: "text-[13px] text-neutral-500 mb-8 leading-relaxed" }, "Use your device's biometrics (Face ID, Touch ID, or PIN) to securely sign into your account without needing a password."), /* @__PURE__ */ React27.createElement(
2877
+ ThreeDActionButton,
2878
+ {
2879
+ onClick: submitEnablePasskey,
2880
+ isLoading: isSubmitting,
2881
+ className: "w-full py-3.5"
2882
+ },
2883
+ "Create Passkey"
2884
+ )))));
2885
+ };
2886
+ var MenuRow3 = ({
2887
+ icon,
2888
+ title,
2889
+ subtitle,
2890
+ onClick,
2891
+ iconColor = "text-black",
2892
+ titleColor = "text-black",
2893
+ isLast = false,
2894
+ isToggle = false,
2895
+ toggleState = false,
2896
+ toggleLoading = false,
2897
+ disabled = false
2898
+ }) => /* @__PURE__ */ React27.createElement(
2899
+ "div",
2900
+ {
2901
+ onClick: disabled ? void 0 : onClick,
2902
+ className: `flex items-center p-4 transition-colors ${!isLast ? "border-b border-neutral-50" : ""} ${disabled ? "opacity-40 cursor-not-allowed" : "cursor-pointer hover:bg-neutral-50"}`
2903
+ },
2904
+ /* @__PURE__ */ React27.createElement("div", { className: "w-10 h-10 rounded-full border border-neutral-100 bg-neutral-50 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon, size: 18, className: iconColor })),
2905
+ /* @__PURE__ */ React27.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React27.createElement("p", { className: `text-[14px] font-medium truncate ${titleColor}` }, title), /* @__PURE__ */ React27.createElement("p", { className: "text-[12px] text-neutral-500 truncate" }, subtitle)),
2906
+ isToggle ? /* @__PURE__ */ React27.createElement("div", { className: `relative w-11 h-6 rounded-full transition-colors duration-300 ml-2 shrink-0 ${toggleState ? "bg-black" : "bg-neutral-200"} ${disabled ? "opacity-50" : ""}` }, /* @__PURE__ */ React27.createElement("div", { className: `absolute top-1 left-1 w-4 h-4 rounded-full bg-white shadow-sm transition-transform duration-300 flex items-center justify-center ${toggleState ? "translate-x-5" : "translate-x-0"}` }, toggleLoading && /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: Loading03Icon10, size: 10, className: "animate-spin text-black" }))) : /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowRight01Icon4, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
2907
+ );
2908
+
2604
2909
  // src/components/FeatureScroll.tsx
2605
- import React27, { useRef as useRef6, useState as useState18, useEffect as useEffect12 } from "react";
2910
+ import React28, { useRef as useRef7, useState as useState19, useEffect as useEffect12 } from "react";
2606
2911
  import Image4 from "next/image";
2607
- import { HugeiconsIcon as HugeiconsIcon19 } from "@hugeicons/react";
2608
- import { ArrowLeft01Icon as ArrowLeft01Icon2, ArrowRight01Icon as ArrowRight01Icon4, Loading03Icon as Loading03Icon10 } from "@hugeicons/core-free-icons";
2912
+ import { HugeiconsIcon as HugeiconsIcon20 } from "@hugeicons/react";
2913
+ import { ArrowLeft01Icon as ArrowLeft01Icon5, ArrowRight01Icon as ArrowRight01Icon5, Loading03Icon as Loading03Icon11 } from "@hugeicons/core-free-icons";
2609
2914
  var FeatureCard = ({ feature, bgImage }) => {
2610
- const [isBgLoading, setIsBgLoading] = useState18(true);
2611
- const [isFgLoading, setIsFgLoading] = useState18(!!feature.image);
2612
- return /* @__PURE__ */ React27.createElement("div", { className: "flex flex-col shrink-0 w-[90vw] sm:w-150 snap-center md:snap-start group cursor-grab active:cursor-grabbing" }, /* @__PURE__ */ React27.createElement("div", { className: "relative w-full aspect-16/10 bg-neutral-100 rounded-2xl overflow-hidden mb-6 flex items-center justify-center" }, /* @__PURE__ */ React27.createElement(
2915
+ const [isBgLoading, setIsBgLoading] = useState19(true);
2916
+ const [isFgLoading, setIsFgLoading] = useState19(!!feature.image);
2917
+ return /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col shrink-0 w-[90vw] sm:w-150 snap-center md:snap-start group cursor-grab active:cursor-grabbing" }, /* @__PURE__ */ React28.createElement("div", { className: "relative w-full aspect-16/10 bg-neutral-100 rounded-2xl overflow-hidden mb-6 flex items-center justify-center" }, /* @__PURE__ */ React28.createElement(
2613
2918
  Image4,
2614
2919
  {
2615
2920
  src: bgImage,
@@ -2622,7 +2927,7 @@ var FeatureCard = ({ feature, bgImage }) => {
2622
2927
  ${isBgLoading ? "blur-xl scale-110" : "blur-0 scale-100"}
2623
2928
  `
2624
2929
  }
2625
- ), /* @__PURE__ */ React27.createElement(
2930
+ ), /* @__PURE__ */ React28.createElement(
2626
2931
  "div",
2627
2932
  {
2628
2933
  className: "absolute inset-0 w-full h-full pointer-events-none z-0 opacity-[0.25] mix-blend-overlay",
@@ -2630,7 +2935,7 @@ var FeatureCard = ({ feature, bgImage }) => {
2630
2935
  backgroundImage: `url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")`
2631
2936
  }
2632
2937
  }
2633
- ), isFgLoading && feature.image && /* @__PURE__ */ React27.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-50/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: Loading03Icon10, size: 32, className: "animate-spin text-neutral-400" })), feature.image && /* @__PURE__ */ React27.createElement("div", { className: "absolute -bottom-6 -right-6 w-[85%] h-[85%] z-10 transition-transform duration-700 ease-out group-hover:-translate-x-2 group-hover:-translate-y-2" }, /* @__PURE__ */ React27.createElement(
2938
+ ), isFgLoading && feature.image && /* @__PURE__ */ React28.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-50/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: Loading03Icon11, size: 32, className: "animate-spin text-neutral-400" })), feature.image && /* @__PURE__ */ React28.createElement("div", { className: "absolute -bottom-6 -right-6 w-[85%] h-[85%] z-10 transition-transform duration-700 ease-out group-hover:-translate-x-2 group-hover:-translate-y-2" }, /* @__PURE__ */ React28.createElement(
2634
2939
  Image4,
2635
2940
  {
2636
2941
  src: feature.image,
@@ -2643,12 +2948,12 @@ var FeatureCard = ({ feature, bgImage }) => {
2643
2948
  ${isFgLoading ? "opacity-0 blur-xl" : "opacity-100 blur-0"}
2644
2949
  `
2645
2950
  }
2646
- ))), /* @__PURE__ */ React27.createElement("div", { className: "flex flex-col text-left pr-4" }, /* @__PURE__ */ React27.createElement("h3", { className: " text-xl tracking-tight text-black mb-2" }, feature.title), /* @__PURE__ */ React27.createElement("p", { className: "text-[13px] leading-relaxed text-neutral-600 max-w-[90%]" }, feature.desc)));
2951
+ ))), /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col text-left pr-4" }, /* @__PURE__ */ React28.createElement("h3", { className: " text-xl tracking-tight text-black mb-2" }, feature.title), /* @__PURE__ */ React28.createElement("p", { className: "text-[13px] leading-relaxed text-neutral-600 max-w-[90%]" }, feature.desc)));
2647
2952
  };
2648
2953
  var FeatureScroll = ({ tagline, headline, features }) => {
2649
- const scrollRef = useRef6(null);
2650
- const [canScrollLeft, setCanScrollLeft] = useState18(false);
2651
- const [canScrollRight, setCanScrollRight] = useState18(true);
2954
+ const scrollRef = useRef7(null);
2955
+ const [canScrollLeft, setCanScrollLeft] = useState19(false);
2956
+ const [canScrollRight, setCanScrollRight] = useState19(true);
2652
2957
  const checkScroll = () => {
2653
2958
  if (scrollRef.current) {
2654
2959
  const { scrollLeft, scrollWidth, clientWidth } = scrollRef.current;
@@ -2672,72 +2977,72 @@ var FeatureScroll = ({ tagline, headline, features }) => {
2672
2977
  "https://retinalabs.company/assets/images/bg_6.avif",
2673
2978
  "https://retinalabs.company/assets/images/bg_1.avif"
2674
2979
  ];
2675
- return /* @__PURE__ */ React27.createElement("section", { className: "py-24 w-full flex justify-center relative z-10 overflow-hidden" }, /* @__PURE__ */ React27.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React27.createElement("div", { className: "flex flex-col md:flex-row md:items-end justify-between gap-6 mb-12" }, /* @__PURE__ */ React27.createElement("div", { className: "relative z-10 text-left" }, /* @__PURE__ */ React27.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React27.createElement("h2", { className: " text-3xl tracking-tight text-black leading-[1.05]" }, headline)), /* @__PURE__ */ React27.createElement("div", { className: "hidden md:flex items-center gap-3" }, /* @__PURE__ */ React27.createElement(
2980
+ return /* @__PURE__ */ React28.createElement("section", { className: "py-24 w-full flex justify-center relative z-10 overflow-hidden" }, /* @__PURE__ */ React28.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col md:flex-row md:items-end justify-between gap-6 mb-12" }, /* @__PURE__ */ React28.createElement("div", { className: "relative z-10 text-left" }, /* @__PURE__ */ React28.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React28.createElement("h2", { className: " text-3xl tracking-tight text-black leading-[1.05]" }, headline)), /* @__PURE__ */ React28.createElement("div", { className: "hidden md:flex items-center gap-3" }, /* @__PURE__ */ React28.createElement(
2676
2981
  "button",
2677
2982
  {
2678
2983
  onClick: () => scroll("left"),
2679
2984
  disabled: !canScrollLeft,
2680
2985
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 disabled:hover:border-neutral-200 disabled:hover:text-neutral-500 disabled:cursor-not-allowed transition-all outline-none"
2681
2986
  },
2682
- /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowLeft01Icon2, size: 20 })
2683
- ), /* @__PURE__ */ React27.createElement(
2987
+ /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: ArrowLeft01Icon5, size: 20 })
2988
+ ), /* @__PURE__ */ React28.createElement(
2684
2989
  "button",
2685
2990
  {
2686
2991
  onClick: () => scroll("right"),
2687
2992
  disabled: !canScrollRight,
2688
2993
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 disabled:hover:border-neutral-200 disabled:hover:text-neutral-500 disabled:cursor-not-allowed transition-all outline-none"
2689
2994
  },
2690
- /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowRight01Icon4, size: 20 })
2691
- ))), /* @__PURE__ */ React27.createElement(
2995
+ /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: ArrowRight01Icon5, size: 20 })
2996
+ ))), /* @__PURE__ */ React28.createElement(
2692
2997
  "div",
2693
2998
  {
2694
2999
  ref: scrollRef,
2695
3000
  onScroll: checkScroll,
2696
3001
  className: "flex gap-6 overflow-x-auto snap-x snap-mandatory [&::-webkit-scrollbar]:hidden [-ms-overflow-style:none] scrollbar-none pb-8 -mx-4 px-4 md:mx-0 md:px-0"
2697
3002
  },
2698
- features.slice(0, 3).map((feature, idx) => /* @__PURE__ */ React27.createElement(FeatureCard, { key: idx, feature, bgImage: bgImages[idx] }))
2699
- ), /* @__PURE__ */ React27.createElement("div", { className: "flex md:hidden items-center justify-center gap-4 mt-2" }, /* @__PURE__ */ React27.createElement(
3003
+ features.slice(0, 3).map((feature, idx) => /* @__PURE__ */ React28.createElement(FeatureCard, { key: idx, feature, bgImage: bgImages[idx] }))
3004
+ ), /* @__PURE__ */ React28.createElement("div", { className: "flex md:hidden items-center justify-center gap-4 mt-2" }, /* @__PURE__ */ React28.createElement(
2700
3005
  "button",
2701
3006
  {
2702
3007
  onClick: () => scroll("left"),
2703
3008
  disabled: !canScrollLeft,
2704
3009
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 transition-all outline-none"
2705
3010
  },
2706
- /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowLeft01Icon2, size: 20 })
2707
- ), /* @__PURE__ */ React27.createElement(
3011
+ /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: ArrowLeft01Icon5, size: 20 })
3012
+ ), /* @__PURE__ */ React28.createElement(
2708
3013
  "button",
2709
3014
  {
2710
3015
  onClick: () => scroll("right"),
2711
3016
  disabled: !canScrollRight,
2712
3017
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 transition-all outline-none"
2713
3018
  },
2714
- /* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowRight01Icon4, size: 20 })
3019
+ /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: ArrowRight01Icon5, size: 20 })
2715
3020
  ))));
2716
3021
  };
2717
3022
 
2718
3023
  // src/components/PlatformFeatures.tsx
2719
- import React28 from "react";
2720
- import { HugeiconsIcon as HugeiconsIcon20 } from "@hugeicons/react";
3024
+ import React29 from "react";
3025
+ import { HugeiconsIcon as HugeiconsIcon21 } from "@hugeicons/react";
2721
3026
  var PlatformFeatures = ({
2722
3027
  tagline,
2723
3028
  headline,
2724
3029
  description,
2725
3030
  features
2726
3031
  }) => {
2727
- return /* @__PURE__ */ React28.createElement("section", { className: "w-full flex justify-center mb-15 relative z-10" }, /* @__PURE__ */ React28.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col items-start mb-16 relative z-10" }, /* @__PURE__ */ React28.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React28.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.05] mb-6" }, headline), /* @__PURE__ */ React28.createElement("p", { className: "text-[15px] leading-[1.8] text-neutral-600 max-w-2xl" }, description)), /* @__PURE__ */ React28.createElement("div", { className: "w-full h-px bg-neutral-100 mb-16", "aria-hidden": "true" }), /* @__PURE__ */ React28.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-x-8 gap-y-12" }, features.map((feature, idx) => /* @__PURE__ */ React28.createElement(
3032
+ return /* @__PURE__ */ React29.createElement("section", { className: "w-full flex justify-center mb-15 relative z-10" }, /* @__PURE__ */ React29.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React29.createElement("div", { className: "flex flex-col items-start mb-16 relative z-10" }, /* @__PURE__ */ React29.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React29.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.05] mb-6" }, headline), /* @__PURE__ */ React29.createElement("p", { className: "text-[15px] leading-[1.8] text-neutral-600 max-w-2xl" }, description)), /* @__PURE__ */ React29.createElement("div", { className: "w-full h-px bg-neutral-100 mb-16", "aria-hidden": "true" }), /* @__PURE__ */ React29.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-x-8 gap-y-12" }, features.map((feature, idx) => /* @__PURE__ */ React29.createElement(
2728
3033
  "div",
2729
3034
  {
2730
3035
  key: idx,
2731
3036
  className: "flex flex-col group animate-in fade-in slide-in-from-bottom-4 duration-700 fill-mode-both",
2732
3037
  style: { animationDelay: feature.delay || "0ms" }
2733
3038
  },
2734
- /* @__PURE__ */ React28.createElement("div", { className: "flex flex-row items-center gap-4 mb-4" }, /* @__PURE__ */ React28.createElement("div", { className: "w-14 h-14 shrink-0 rounded-xl border border-neutral-200 flex items-center justify-center text-neutral-600 transition-colors duration-300" }, /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: feature.icon, size: 24 })), /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col justify-center" }, /* @__PURE__ */ React28.createElement("span", { className: "text-[11px] tracking-widest text-neutral-400 mb-0.5" }, feature.label || "CAPABILITY"), /* @__PURE__ */ React28.createElement("h3", { className: "text-xl tracking-tight text-black" }, feature.title))),
2735
- /* @__PURE__ */ React28.createElement("div", null, /* @__PURE__ */ React28.createElement("p", { className: "text-[13px] leading-relaxed text-neutral-600 pr-4" }, feature.desc))
3039
+ /* @__PURE__ */ React29.createElement("div", { className: "flex flex-row items-center gap-4 mb-4" }, /* @__PURE__ */ React29.createElement("div", { className: "w-14 h-14 shrink-0 rounded-xl border border-neutral-200 flex items-center justify-center text-neutral-600 transition-colors duration-300" }, /* @__PURE__ */ React29.createElement(HugeiconsIcon21, { icon: feature.icon, size: 24 })), /* @__PURE__ */ React29.createElement("div", { className: "flex flex-col justify-center" }, /* @__PURE__ */ React29.createElement("span", { className: "text-[11px] tracking-widest text-neutral-400 mb-0.5" }, feature.label || "CAPABILITY"), /* @__PURE__ */ React29.createElement("h3", { className: "text-xl tracking-tight text-black" }, feature.title))),
3040
+ /* @__PURE__ */ React29.createElement("div", null, /* @__PURE__ */ React29.createElement("p", { className: "text-[13px] leading-relaxed text-neutral-600 pr-4" }, feature.desc))
2736
3041
  )))));
2737
3042
  };
2738
3043
 
2739
3044
  // src/components/ManagedDocument.tsx
2740
- import React29, { useState as useState19, useEffect as useEffect13, useRef as useRef7 } from "react";
3045
+ import React30, { useState as useState20, useEffect as useEffect13, useRef as useRef8 } from "react";
2741
3046
  var ManagedDocument = ({
2742
3047
  tagline,
2743
3048
  title,
@@ -2745,8 +3050,8 @@ var ManagedDocument = ({
2745
3050
  contactText,
2746
3051
  contactEmail
2747
3052
  }) => {
2748
- const [isAnimating, setIsAnimating] = useState19(false);
2749
- const titleRef = useRef7(null);
3053
+ const [isAnimating, setIsAnimating] = useState20(false);
3054
+ const titleRef = useRef8(null);
2750
3055
  useEffect13(() => {
2751
3056
  const observer = new IntersectionObserver(
2752
3057
  ([entry]) => {
@@ -2767,7 +3072,7 @@ var ManagedDocument = ({
2767
3072
  }, []);
2768
3073
  return (
2769
3074
  // Outer layout wrapper (takes up available space, adds padding)
2770
- /* @__PURE__ */ React29.createElement("div", { className: "grow pt-4 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React29.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ React29.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React29.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10" }, tagline && /* @__PURE__ */ React29.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React29.createElement(
3075
+ /* @__PURE__ */ React30.createElement("div", { className: "grow pt-4 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React30.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ React30.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React30.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10" }, tagline && /* @__PURE__ */ React30.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React30.createElement(
2771
3076
  "h1",
2772
3077
  {
2773
3078
  ref: titleRef,
@@ -2775,7 +3080,7 @@ var ManagedDocument = ({
2775
3080
  style: isAnimating ? { animationIterationCount: 1 } : {}
2776
3081
  },
2777
3082
  title
2778
- )), sections.map((section, index) => /* @__PURE__ */ React29.createElement("div", { key: index, className: "relative px-5 md:px-12 py-8 md:py-10" }, section.heading && /* @__PURE__ */ React29.createElement("p", { className: " text-[11px] tracking-[0.2em] text-black mb-4 text-left " }, section.heading), section.paragraphs && section.paragraphs.length > 0 && /* @__PURE__ */ React29.createElement("div", { className: "text-[14px] leading-[1.8] text-neutral-700 space-y-4 text-left " }, section.paragraphs.map((text, pIndex) => /* @__PURE__ */ React29.createElement("p", { key: pIndex }, text))), section.quote && /* @__PURE__ */ React29.createElement("div", { className: `border-neutral-100 border rounded-xl p-6 ${section.paragraphs && section.paragraphs.length > 0 ? "mt-6" : ""}` }, /* @__PURE__ */ React29.createElement("p", { className: "text-neutral-900 text-[14px] md:text-[14px] leading-relaxed" }, '"', section.quote, '"')))), (contactText || contactEmail) && /* @__PURE__ */ React29.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10 pb-12 md:pb-14" }, /* @__PURE__ */ React29.createElement("p", { className: "text-[11px] text-neutral-600 text-left" }, contactText, contactEmail && /* @__PURE__ */ React29.createElement(
3083
+ )), sections.map((section, index) => /* @__PURE__ */ React30.createElement("div", { key: index, className: "relative px-5 md:px-12 py-8 md:py-10" }, section.heading && /* @__PURE__ */ React30.createElement("p", { className: " text-[11px] tracking-[0.2em] text-black mb-4 text-left " }, section.heading), section.paragraphs && section.paragraphs.length > 0 && /* @__PURE__ */ React30.createElement("div", { className: "text-[14px] leading-[1.8] text-neutral-700 space-y-4 text-left " }, section.paragraphs.map((text, pIndex) => /* @__PURE__ */ React30.createElement("p", { key: pIndex }, text))), section.quote && /* @__PURE__ */ React30.createElement("div", { className: `border-neutral-100 border rounded-xl p-6 ${section.paragraphs && section.paragraphs.length > 0 ? "mt-6" : ""}` }, /* @__PURE__ */ React30.createElement("p", { className: "text-neutral-900 text-[14px] md:text-[14px] leading-relaxed" }, '"', section.quote, '"')))), (contactText || contactEmail) && /* @__PURE__ */ React30.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10 pb-12 md:pb-14" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] text-neutral-600 text-left" }, contactText, contactEmail && /* @__PURE__ */ React30.createElement(
2779
3084
  "a",
2780
3085
  {
2781
3086
  href: `mailto:${contactEmail}`,
@@ -2787,18 +3092,18 @@ var ManagedDocument = ({
2787
3092
  };
2788
3093
 
2789
3094
  // src/components/ManagedContactBlock.tsx
2790
- import React30, { useState as useState20, useEffect as useEffect14 } from "react";
2791
- import { HugeiconsIcon as HugeiconsIcon21 } from "@hugeicons/react";
3095
+ import React31, { useState as useState21, useEffect as useEffect14 } from "react";
3096
+ import { HugeiconsIcon as HugeiconsIcon22 } from "@hugeicons/react";
2792
3097
  var SecureEmail = ({ user, domain, className }) => {
2793
- const [isMounted, setIsMounted] = useState20(false);
3098
+ const [isMounted, setIsMounted] = useState21(false);
2794
3099
  useEffect14(() => {
2795
3100
  setIsMounted(true);
2796
3101
  }, []);
2797
3102
  if (!isMounted) {
2798
- return /* @__PURE__ */ React30.createElement("span", { className, style: { opacity: 0 } }, "Loading");
3103
+ return /* @__PURE__ */ React31.createElement("span", { className, style: { opacity: 0 } }, "Loading");
2799
3104
  }
2800
3105
  const email = `${user}@${domain}`;
2801
- return /* @__PURE__ */ React30.createElement("a", { href: `mailto:${email}`, className }, email);
3106
+ return /* @__PURE__ */ React31.createElement("a", { href: `mailto:${email}`, className }, email);
2802
3107
  };
2803
3108
  var ManagedContactBlock = ({
2804
3109
  tagline,
@@ -2807,7 +3112,7 @@ var ManagedContactBlock = ({
2807
3112
  emails,
2808
3113
  socials
2809
3114
  }) => {
2810
- return /* @__PURE__ */ React30.createElement("div", { className: "grow pt-4 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React30.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ React30.createElement(
3115
+ return /* @__PURE__ */ React31.createElement("div", { className: "grow pt-4 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React31.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ React31.createElement(
2811
3116
  "div",
2812
3117
  {
2813
3118
  className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
@@ -2816,21 +3121,21 @@ var ManagedContactBlock = ({
2816
3121
  backgroundRepeat: "repeat"
2817
3122
  }
2818
3123
  }
2819
- ), /* @__PURE__ */ React30.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React30.createElement("div", { className: "relative px-8 md:px-12 py-10" }, tagline && /* @__PURE__ */ React30.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React30.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ React30.createElement("div", { className: "relative px-8 md:px-12 py-8 pb-14" }, /* @__PURE__ */ React30.createElement("div", { className: "flex flex-wrap gap-12 lg:gap-16 w-full" }, company && /* @__PURE__ */ React30.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Contact Details"), /* @__PURE__ */ React30.createElement("div", { className: "space-y-3 text-[13px] text-neutral-600 leading-[1.8]" }, company.name && /* @__PURE__ */ React30.createElement("p", { className: "text-black" }, company.name), company.lines && company.lines.map((line, idx) => /* @__PURE__ */ React30.createElement("p", { key: idx }, line)), company.phone && /* @__PURE__ */ React30.createElement("p", { className: "pt-2" }, /* @__PURE__ */ React30.createElement(
3124
+ ), /* @__PURE__ */ React31.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React31.createElement("div", { className: "relative px-8 md:px-12 py-10" }, tagline && /* @__PURE__ */ React31.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React31.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ React31.createElement("div", { className: "relative px-8 md:px-12 py-8 pb-14" }, /* @__PURE__ */ React31.createElement("div", { className: "flex flex-wrap gap-12 lg:gap-16 w-full" }, company && /* @__PURE__ */ React31.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React31.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Contact Details"), /* @__PURE__ */ React31.createElement("div", { className: "space-y-3 text-[13px] text-neutral-600 leading-[1.8]" }, company.name && /* @__PURE__ */ React31.createElement("p", { className: "text-black" }, company.name), company.lines && company.lines.map((line, idx) => /* @__PURE__ */ React31.createElement("p", { key: idx }, line)), company.phone && /* @__PURE__ */ React31.createElement("p", { className: "pt-2" }, /* @__PURE__ */ React31.createElement(
2820
3125
  "a",
2821
3126
  {
2822
3127
  href: `tel:${company.phone.replace(/\s+/g, "")}`,
2823
3128
  className: "transition-colors hover:text-black"
2824
3129
  },
2825
3130
  company.phone
2826
- )))), emails && emails.length > 0 && /* @__PURE__ */ React30.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Email Directory"), /* @__PURE__ */ React30.createElement("div", { className: "space-y-6 text-[13px]" }, emails.map((email, idx) => /* @__PURE__ */ React30.createElement("div", { key: idx }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] mb-1.5 text-neutral-500 " }, email.label), /* @__PURE__ */ React30.createElement(
3131
+ )))), emails && emails.length > 0 && /* @__PURE__ */ React31.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React31.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Email Directory"), /* @__PURE__ */ React31.createElement("div", { className: "space-y-6 text-[13px]" }, emails.map((email, idx) => /* @__PURE__ */ React31.createElement("div", { key: idx }, /* @__PURE__ */ React31.createElement("p", { className: "text-[11px] tracking-[0.2em] mb-1.5 text-neutral-500 " }, email.label), /* @__PURE__ */ React31.createElement(
2827
3132
  SecureEmail,
2828
3133
  {
2829
3134
  user: email.user,
2830
3135
  domain: email.domain,
2831
3136
  className: "text-neutral-600 transition-colors hover:text-black"
2832
3137
  }
2833
- ))))), socials && socials.length > 0 && /* @__PURE__ */ React30.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Find Us Online"), /* @__PURE__ */ React30.createElement("div", { className: "flex flex-col space-y-5 pt-1" }, socials.map((social, idx) => /* @__PURE__ */ React30.createElement(
3138
+ ))))), socials && socials.length > 0 && /* @__PURE__ */ React31.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React31.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Find Us Online"), /* @__PURE__ */ React31.createElement("div", { className: "flex flex-col space-y-5 pt-1" }, socials.map((social, idx) => /* @__PURE__ */ React31.createElement(
2834
3139
  "a",
2835
3140
  {
2836
3141
  key: idx,
@@ -2839,26 +3144,26 @@ var ManagedContactBlock = ({
2839
3144
  rel: "noopener noreferrer",
2840
3145
  className: "flex items-center gap-3 transition-colors group text-neutral-600 hover:text-black"
2841
3146
  },
2842
- /* @__PURE__ */ React30.createElement(HugeiconsIcon21, { icon: social.icon, size: 18 }),
2843
- /* @__PURE__ */ React30.createElement("span", { className: "text-[13px]" }, social.label)
3147
+ /* @__PURE__ */ React31.createElement(HugeiconsIcon22, { icon: social.icon, size: 18 }),
3148
+ /* @__PURE__ */ React31.createElement("span", { className: "text-[13px]" }, social.label)
2844
3149
  )))))))));
2845
3150
  };
2846
3151
 
2847
3152
  // src/components/ManagedPricingBlock.tsx
2848
- import React31, { useState as useState21, useEffect as useEffect15, useRef as useRef8 } from "react";
3153
+ import React32, { useState as useState22, useEffect as useEffect15, useRef as useRef9 } from "react";
2849
3154
  import Link7 from "next/link";
2850
3155
  import Image5 from "next/image";
2851
- var CheckIcon = ({ className = "" }) => /* @__PURE__ */ React31.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React31.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "black" }), /* @__PURE__ */ React31.createElement("path", { d: "M8 12L11 15L16 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
2852
- var CrossIcon = ({ className = "" }) => /* @__PURE__ */ React31.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React31.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "#F5F5F5" }), /* @__PURE__ */ React31.createElement("path", { d: "M15 9L9 15M9 9l6 6", stroke: "#D4D4D4", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
3156
+ var CheckIcon = ({ className = "" }) => /* @__PURE__ */ React32.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React32.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "black" }), /* @__PURE__ */ React32.createElement("path", { d: "M8 12L11 15L16 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
3157
+ var CrossIcon = ({ className = "" }) => /* @__PURE__ */ React32.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React32.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "#F5F5F5" }), /* @__PURE__ */ React32.createElement("path", { d: "M15 9L9 15M9 9l6 6", stroke: "#D4D4D4", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
2853
3158
  var ManagedPricingBlock = ({
2854
3159
  tagline,
2855
3160
  title,
2856
3161
  plans = [],
2857
3162
  tabs
2858
3163
  }) => {
2859
- const [isAnimating, setIsAnimating] = useState21(false);
2860
- const [activeTabIndex, setActiveTabIndex] = useState21(0);
2861
- const titleRef = useRef8(null);
3164
+ const [isAnimating, setIsAnimating] = useState22(false);
3165
+ const [activeTabIndex, setActiveTabIndex] = useState22(0);
3166
+ const titleRef = useRef9(null);
2862
3167
  useEffect15(() => {
2863
3168
  const observer = new IntersectionObserver(
2864
3169
  ([entry]) => {
@@ -2879,7 +3184,7 @@ var ManagedPricingBlock = ({
2879
3184
  }, []);
2880
3185
  const hasTabs = tabs && tabs.length > 0;
2881
3186
  const currentPlans = hasTabs ? tabs[activeTabIndex].plans : plans;
2882
- return /* @__PURE__ */ React31.createElement("div", { className: "grow pt-10 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React31.createElement("div", { className: "w-full max-w-5xl mx-auto flex flex-col items-center" }, /* @__PURE__ */ React31.createElement("div", { className: "w-full flex flex-col items-center text-center mb-10 sm:mb-12" }, tagline && /* @__PURE__ */ React31.createElement("span", { className: "text-[9px] tracking-[0.4em] text-black block " }, tagline), /* @__PURE__ */ React31.createElement(
3187
+ return /* @__PURE__ */ React32.createElement("div", { className: "grow pt-10 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React32.createElement("div", { className: "w-full max-w-5xl mx-auto flex flex-col items-center" }, /* @__PURE__ */ React32.createElement("div", { className: "w-full flex flex-col items-center text-center mb-10 sm:mb-12" }, tagline && /* @__PURE__ */ React32.createElement("span", { className: "text-[9px] tracking-[0.4em] text-black block " }, tagline), /* @__PURE__ */ React32.createElement(
2883
3188
  "h1",
2884
3189
  {
2885
3190
  ref: titleRef,
@@ -2887,9 +3192,9 @@ var ManagedPricingBlock = ({
2887
3192
  style: isAnimating ? { animationIterationCount: 1 } : {}
2888
3193
  },
2889
3194
  title
2890
- )), hasTabs && /* @__PURE__ */ React31.createElement("div", { className: "flex items-center justify-center mb-8 sm:mb-10 w-full animate-in fade-in duration-300 px-2" }, /* @__PURE__ */ React31.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar" }, tabs.map((tab, idx) => {
3195
+ )), hasTabs && /* @__PURE__ */ React32.createElement("div", { className: "flex items-center justify-center mb-8 sm:mb-10 w-full animate-in fade-in duration-300 px-2" }, /* @__PURE__ */ React32.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar" }, tabs.map((tab, idx) => {
2891
3196
  const isActive = activeTabIndex === idx;
2892
- return /* @__PURE__ */ React31.createElement(
3197
+ return /* @__PURE__ */ React32.createElement(
2893
3198
  "button",
2894
3199
  {
2895
3200
  key: idx,
@@ -2898,19 +3203,19 @@ var ManagedPricingBlock = ({
2898
3203
  },
2899
3204
  tab.label
2900
3205
  );
2901
- }))), /* @__PURE__ */ React31.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5 w-full max-w-3xl animate-in slide-in-from-bottom-2 fade-in duration-500" }, currentPlans.map((plan, planIdx) => /* @__PURE__ */ React31.createElement(
3206
+ }))), /* @__PURE__ */ React32.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5 w-full max-w-3xl animate-in slide-in-from-bottom-2 fade-in duration-500" }, currentPlans.map((plan, planIdx) => /* @__PURE__ */ React32.createElement(
2902
3207
  "div",
2903
3208
  {
2904
3209
  key: `${activeTabIndex}-${planIdx}`,
2905
3210
  className: `bg-white rounded-3xl p-6 flex flex-col relative overflow-hidden transition-all duration-300 ${plan.isPremium ? "" : ""}`
2906
3211
  },
2907
- /* @__PURE__ */ React31.createElement("div", { className: "mb-6" }, /* @__PURE__ */ React31.createElement("span", { className: "text-black text-base block mb-1" }, plan.name), /* @__PURE__ */ React31.createElement("div", { className: "flex items-baseline gap-1" }, /* @__PURE__ */ React31.createElement("h3", { className: "text-3xl font-light text-black" }, plan.price), plan.period && /* @__PURE__ */ React31.createElement("span", { className: "text-xs text-neutral-500" }, plan.period)), /* @__PURE__ */ React31.createElement("p", { className: "text-xs text-neutral-500 mt-2 min-h-8" }, plan.description), plan.showApps && plan.appLogos && plan.appLogos.length > 0 && /* @__PURE__ */ React31.createElement("div", { className: "flex items-center gap-2 mt-4" }, plan.appLogos.map((logo, logoIdx) => /* @__PURE__ */ React31.createElement(
3212
+ /* @__PURE__ */ React32.createElement("div", { className: "mb-6" }, /* @__PURE__ */ React32.createElement("span", { className: "text-black text-base block mb-1" }, plan.name), /* @__PURE__ */ React32.createElement("div", { className: "flex items-baseline gap-1" }, /* @__PURE__ */ React32.createElement("h3", { className: "text-3xl font-light text-black" }, plan.price), plan.period && /* @__PURE__ */ React32.createElement("span", { className: "text-xs text-neutral-500" }, plan.period)), /* @__PURE__ */ React32.createElement("p", { className: "text-xs text-neutral-500 mt-2 min-h-8" }, plan.description), plan.showApps && plan.appLogos && plan.appLogos.length > 0 && /* @__PURE__ */ React32.createElement("div", { className: "flex items-center gap-2 mt-4" }, plan.appLogos.map((logo, logoIdx) => /* @__PURE__ */ React32.createElement(
2908
3213
  "div",
2909
3214
  {
2910
3215
  key: logoIdx,
2911
3216
  className: "relative w-5 h-5 overflow-hidden flex items-center justify-center shrink-0"
2912
3217
  },
2913
- /* @__PURE__ */ React31.createElement(
3218
+ /* @__PURE__ */ React32.createElement(
2914
3219
  Image5,
2915
3220
  {
2916
3221
  src: logo.src,
@@ -2921,7 +3226,7 @@ var ManagedPricingBlock = ({
2921
3226
  }
2922
3227
  )
2923
3228
  )))),
2924
- plan.isPremium ? /* @__PURE__ */ React31.createElement(ThreeDButton, { href: plan.ctaHref, className: "mb-6 w-full" }, plan.ctaText) : /* @__PURE__ */ React31.createElement(
3229
+ plan.isPremium ? /* @__PURE__ */ React32.createElement(ThreeDButton, { href: plan.ctaHref, className: "mb-6 w-full" }, plan.ctaText) : /* @__PURE__ */ React32.createElement(
2925
3230
  Link7,
2926
3231
  {
2927
3232
  href: plan.ctaHref,
@@ -2929,20 +3234,20 @@ var ManagedPricingBlock = ({
2929
3234
  },
2930
3235
  plan.ctaText
2931
3236
  ),
2932
- /* @__PURE__ */ React31.createElement("div", { className: "flex flex-col gap-3" }, plan.features.map((feature, featureIdx) => {
3237
+ /* @__PURE__ */ React32.createElement("div", { className: "flex flex-col gap-3" }, plan.features.map((feature, featureIdx) => {
2933
3238
  const isAvailable = feature.value !== false;
2934
3239
  const valueText = typeof feature.value === "string" ? feature.value : "";
2935
- return /* @__PURE__ */ React31.createElement("div", { key: featureIdx, className: "flex items-center gap-2.5" }, isAvailable ? /* @__PURE__ */ React31.createElement(CheckIcon, null) : /* @__PURE__ */ React31.createElement(CrossIcon, null), /* @__PURE__ */ React31.createElement("span", { className: `text-xs truncate ${isAvailable ? "text-neutral-800" : "text-neutral-400"}` }, feature.name, valueText && /* @__PURE__ */ React31.createElement("span", { className: "text-neutral-500 ml-1" }, "(", valueText, ")")));
3240
+ return /* @__PURE__ */ React32.createElement("div", { key: featureIdx, className: "flex items-center gap-2.5" }, isAvailable ? /* @__PURE__ */ React32.createElement(CheckIcon, null) : /* @__PURE__ */ React32.createElement(CrossIcon, null), /* @__PURE__ */ React32.createElement("span", { className: `text-xs truncate ${isAvailable ? "text-neutral-800" : "text-neutral-400"}` }, feature.name, valueText && /* @__PURE__ */ React32.createElement("span", { className: "text-neutral-500 ml-1" }, "(", valueText, ")")));
2936
3241
  }))
2937
3242
  )))));
2938
3243
  };
2939
3244
 
2940
3245
  // src/components/ManagedBoardBlock.tsx
2941
- import React32 from "react";
3246
+ import React33 from "react";
2942
3247
  import Image6 from "next/image";
2943
- import { HugeiconsIcon as HugeiconsIcon22 } from "@hugeicons/react";
3248
+ import { HugeiconsIcon as HugeiconsIcon23 } from "@hugeicons/react";
2944
3249
  import { TwitterIcon, LinkedinIcon } from "@hugeicons/core-free-icons";
2945
- var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ React32.createElement(
3250
+ var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ React33.createElement(
2946
3251
  "a",
2947
3252
  {
2948
3253
  href,
@@ -2950,7 +3255,7 @@ var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ React32.
2950
3255
  rel: "noopener noreferrer",
2951
3256
  className: "text-neutral-400 hover:text-black transition-colors"
2952
3257
  },
2953
- /* @__PURE__ */ React32.createElement(HugeiconsIcon22, { icon, size: 16 })
3258
+ /* @__PURE__ */ React33.createElement(HugeiconsIcon23, { icon, size: 16 })
2954
3259
  );
2955
3260
  var ManagedBoardBlock = ({
2956
3261
  tagline,
@@ -2959,7 +3264,7 @@ var ManagedBoardBlock = ({
2959
3264
  contactText,
2960
3265
  contactEmail
2961
3266
  }) => {
2962
- return /* @__PURE__ */ React32.createElement("div", { className: "grow pt-4 pb-20 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React32.createElement("div", { className: "relative w-full mx-auto overflow-hidden max-w-7xl" }, /* @__PURE__ */ React32.createElement(
3267
+ return /* @__PURE__ */ React33.createElement("div", { className: "grow pt-4 pb-20 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React33.createElement("div", { className: "relative w-full mx-auto overflow-hidden max-w-7xl" }, /* @__PURE__ */ React33.createElement(
2963
3268
  "div",
2964
3269
  {
2965
3270
  className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
@@ -2968,7 +3273,7 @@ var ManagedBoardBlock = ({
2968
3273
  backgroundRepeat: "repeat"
2969
3274
  }
2970
3275
  }
2971
- ), /* @__PURE__ */ React32.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React32.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10" }, tagline && /* @__PURE__ */ React32.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React32.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ React32.createElement("div", { className: "relative px-5 md:px-12 py-4 md:py-8" }, /* @__PURE__ */ React32.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-5 md:gap-8" }, members.map((member, idx) => /* @__PURE__ */ React32.createElement("div", { key: idx, className: "relative p-6 md:p-8 rounded-2xl bg-white flex flex-col transition-all group" }, /* @__PURE__ */ React32.createElement("div", { className: "flex items-start space-x-4 md:space-x-5 mb-5 md:mb-6" }, /* @__PURE__ */ React32.createElement("div", { className: "relative w-14 h-14 md:w-16 md:h-16 shrink-0 bg-white overflow-hidden rounded-xl" }, /* @__PURE__ */ React32.createElement(
3276
+ ), /* @__PURE__ */ React33.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React33.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10" }, tagline && /* @__PURE__ */ React33.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React33.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ React33.createElement("div", { className: "relative px-5 md:px-12 py-4 md:py-8" }, /* @__PURE__ */ React33.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-5 md:gap-8" }, members.map((member, idx) => /* @__PURE__ */ React33.createElement("div", { key: idx, className: "relative p-6 md:p-8 rounded-2xl bg-white flex flex-col transition-all group" }, /* @__PURE__ */ React33.createElement("div", { className: "flex items-start space-x-4 md:space-x-5 mb-5 md:mb-6" }, /* @__PURE__ */ React33.createElement("div", { className: "relative w-14 h-14 md:w-16 md:h-16 shrink-0 bg-white overflow-hidden rounded-xl" }, /* @__PURE__ */ React33.createElement(
2972
3277
  Image6,
2973
3278
  {
2974
3279
  src: member.imageSrc,
@@ -2977,7 +3282,7 @@ var ManagedBoardBlock = ({
2977
3282
  sizes: "(max-width: 768px) 56px, 64px",
2978
3283
  className: "object-cover grayscale opacity-100 transition-opacity"
2979
3284
  }
2980
- )), /* @__PURE__ */ React32.createElement("div", { className: "pt-1" }, /* @__PURE__ */ React32.createElement("h3", { className: " text-[14px] md:text-[15px] text-black tracking-tight" }, member.name), /* @__PURE__ */ React32.createElement("p", { className: "text-[11px] tracking-[0.2em] text-neutral-500 mt-1.5 " }, member.title))), /* @__PURE__ */ React32.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 text-left grow mb-8" }, member.bio), /* @__PURE__ */ React32.createElement("div", { className: "space-y-6 mt-auto" }, /* @__PURE__ */ React32.createElement("div", { className: "w-full *:w-full" }, /* @__PURE__ */ React32.createElement(ThreeDButton, { href: member.website }, "Visit Website")), /* @__PURE__ */ React32.createElement("div", { className: "flex space-x-4 pt-5" }, member.twitterHandle && member.twitterHandle.length > 0 && /* @__PURE__ */ React32.createElement(
3285
+ )), /* @__PURE__ */ React33.createElement("div", { className: "pt-1" }, /* @__PURE__ */ React33.createElement("h3", { className: " text-[14px] md:text-[15px] text-black tracking-tight" }, member.name), /* @__PURE__ */ React33.createElement("p", { className: "text-[11px] tracking-[0.2em] text-neutral-500 mt-1.5 " }, member.title))), /* @__PURE__ */ React33.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 text-left grow mb-8" }, member.bio), /* @__PURE__ */ React33.createElement("div", { className: "space-y-6 mt-auto" }, /* @__PURE__ */ React33.createElement("div", { className: "w-full *:w-full" }, /* @__PURE__ */ React33.createElement(ThreeDButton, { href: member.website }, "Visit Website")), /* @__PURE__ */ React33.createElement("div", { className: "flex space-x-4 pt-5" }, member.twitterHandle && member.twitterHandle.length > 0 && /* @__PURE__ */ React33.createElement(
2981
3286
  MemberSocialLink,
2982
3287
  {
2983
3288
  href: `https://x.com/${member.twitterHandle}`,
@@ -2985,7 +3290,7 @@ var ManagedBoardBlock = ({
2985
3290
  label: "X",
2986
3291
  name: member.name
2987
3292
  }
2988
- ), member.linkedinHandle && member.linkedinHandle.length > 0 && /* @__PURE__ */ React32.createElement(
3293
+ ), member.linkedinHandle && member.linkedinHandle.length > 0 && /* @__PURE__ */ React33.createElement(
2989
3294
  MemberSocialLink,
2990
3295
  {
2991
3296
  href: member.linkedinHandle,
@@ -2993,28 +3298,28 @@ var ManagedBoardBlock = ({
2993
3298
  label: "LinkedIn",
2994
3299
  name: member.name
2995
3300
  }
2996
- ))))))), (contactText || contactEmail) && /* @__PURE__ */ React32.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10 pb-12 md:pb-14" }, /* @__PURE__ */ React32.createElement("p", { className: "text-[11px] text-neutral-600 text-left" }, contactText, contactEmail && /* @__PURE__ */ React32.createElement("a", { href: `mailto:${contactEmail}`, className: "text-black decoration-black decoration-2 underline-offset-4 ml-1 transition-colors" }, contactEmail))))));
3301
+ ))))))), (contactText || contactEmail) && /* @__PURE__ */ React33.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10 pb-12 md:pb-14" }, /* @__PURE__ */ React33.createElement("p", { className: "text-[11px] text-neutral-600 text-left" }, contactText, contactEmail && /* @__PURE__ */ React33.createElement("a", { href: `mailto:${contactEmail}`, className: "text-black decoration-black decoration-2 underline-offset-4 ml-1 transition-colors" }, contactEmail))))));
2997
3302
  };
2998
3303
 
2999
3304
  // src/components/ManagedNotFoundBlock.tsx
3000
- import React33 from "react";
3305
+ import React34 from "react";
3001
3306
  var ManagedNotFoundBlock = ({
3002
3307
  title = "404 - Page Not Found",
3003
3308
  description = "The page you are looking for does not exist or has been moved."
3004
3309
  }) => {
3005
- return /* @__PURE__ */ React33.createElement("main", { className: "min-h-screen flex items-center justify-center relative z-20 bg-transparent" }, /* @__PURE__ */ React33.createElement("div", { className: "p-6 w-full max-w-md mx-auto text-center" }, /* @__PURE__ */ React33.createElement("div", { className: "mb-8 flex justify-center" }, /* @__PURE__ */ React33.createElement(
3310
+ return /* @__PURE__ */ React34.createElement("main", { className: "min-h-screen flex items-center justify-center relative z-20 bg-transparent" }, /* @__PURE__ */ React34.createElement("div", { className: "p-6 w-full max-w-md mx-auto text-center" }, /* @__PURE__ */ React34.createElement("div", { className: "mb-8 flex justify-center" }, /* @__PURE__ */ React34.createElement(
3006
3311
  "svg",
3007
3312
  {
3008
3313
  xmlns: "http://www.w3.org/2000/svg",
3009
3314
  viewBox: "0 0 24 24",
3010
3315
  className: "w-12 h-12 fill-neutral-100"
3011
3316
  },
3012
- /* @__PURE__ */ React33.createElement("path", { fillRule: "evenodd", d: "M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z", clipRule: "evenodd" })
3013
- )), /* @__PURE__ */ React33.createElement("h1", { className: " text-xl md:text-3xl text-black tracking-tight mb-4" }, title), /* @__PURE__ */ React33.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 mb-12" }, description)));
3317
+ /* @__PURE__ */ React34.createElement("path", { fillRule: "evenodd", d: "M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z", clipRule: "evenodd" })
3318
+ )), /* @__PURE__ */ React34.createElement("h1", { className: " text-xl md:text-3xl text-black tracking-tight mb-4" }, title), /* @__PURE__ */ React34.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 mb-12" }, description)));
3014
3319
  };
3015
3320
 
3016
3321
  // src/components/ManagedNewsletterSplitBlock.tsx
3017
- import React34 from "react";
3322
+ import React35 from "react";
3018
3323
  import Image7 from "next/image";
3019
3324
  var ManagedNewsletterSplitBlock = ({
3020
3325
  tagline,
@@ -3028,7 +3333,7 @@ var ManagedNewsletterSplitBlock = ({
3028
3333
  ctaHref = "/contact",
3029
3334
  children
3030
3335
  }) => {
3031
- return /* @__PURE__ */ React34.createElement("div", { className: "grow flex flex-col md:flex-row relative w-full pt-32 md:pt-0" }, /* @__PURE__ */ React34.createElement("div", { className: "hidden md:block md:w-1/2 relative min-h-screen overflow-hidden" }, /* @__PURE__ */ React34.createElement(
3336
+ return /* @__PURE__ */ React35.createElement("div", { className: "grow flex flex-col md:flex-row relative w-full pt-32 md:pt-0" }, /* @__PURE__ */ React35.createElement("div", { className: "hidden md:block md:w-1/2 relative min-h-screen overflow-hidden" }, /* @__PURE__ */ React35.createElement(
3032
3337
  Image7,
3033
3338
  {
3034
3339
  src: imageSrc,
@@ -3038,7 +3343,7 @@ var ManagedNewsletterSplitBlock = ({
3038
3343
  className: "object-cover object-top grayscale opacity-60",
3039
3344
  quality: 100
3040
3345
  }
3041
- ), /* @__PURE__ */ React34.createElement(
3346
+ ), /* @__PURE__ */ React35.createElement(
3042
3347
  "div",
3043
3348
  {
3044
3349
  className: "absolute inset-0 z-10 pointer-events-none",
@@ -3046,7 +3351,7 @@ var ManagedNewsletterSplitBlock = ({
3046
3351
  background: "linear-gradient(to right, rgba(255,255,255,0) 30%, #ffffff 100%)"
3047
3352
  }
3048
3353
  }
3049
- ), /* @__PURE__ */ React34.createElement(
3354
+ ), /* @__PURE__ */ React35.createElement(
3050
3355
  "div",
3051
3356
  {
3052
3357
  className: "absolute inset-x-0 bottom-0 h-40 z-10 pointer-events-none",
@@ -3054,7 +3359,7 @@ var ManagedNewsletterSplitBlock = ({
3054
3359
  background: "linear-gradient(to bottom, rgba(255,255,255,0) 0%, #ffffff 100%)"
3055
3360
  }
3056
3361
  }
3057
- )), /* @__PURE__ */ React34.createElement("div", { className: "w-full md:w-1/2 flex mt-22 flex-col items-center justify-center p-4 md:p-12 relative z-20" }, /* @__PURE__ */ React34.createElement("div", { className: "relative w-full max-w-lg p-8 md:p-12 text-center md:text-left transition-all duration-700 ease-out" }, /* @__PURE__ */ React34.createElement(
3362
+ )), /* @__PURE__ */ React35.createElement("div", { className: "w-full md:w-1/2 flex mt-22 flex-col items-center justify-center p-4 md:p-12 relative z-20" }, /* @__PURE__ */ React35.createElement("div", { className: "relative w-full max-w-lg p-8 md:p-12 text-center md:text-left transition-all duration-700 ease-out" }, /* @__PURE__ */ React35.createElement(
3058
3363
  "div",
3059
3364
  {
3060
3365
  className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
@@ -3063,7 +3368,7 @@ var ManagedNewsletterSplitBlock = ({
3063
3368
  backgroundRepeat: "repeat"
3064
3369
  }
3065
3370
  }
3066
- ), /* @__PURE__ */ React34.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React34.createElement("div", { className: "mb-10 border-b border-neutral-100 pb-8 text-center md:text-left" }, tagline && /* @__PURE__ */ React34.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 " }, tagline), /* @__PURE__ */ React34.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight mb-4" }, title), subtitle && /* @__PURE__ */ React34.createElement("p", { className: "text-[11px] tracking-[0.2em] text-neutral-500 " }, subtitle)), /* @__PURE__ */ React34.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 mb-10 text-center md:text-left" }, description), children && /* @__PURE__ */ React34.createElement("div", { className: "mb-8 text-left" }, children), /* @__PURE__ */ React34.createElement("div", { className: "text-center md:text-left mt-10 space-y-6" }, dividerText && /* @__PURE__ */ React34.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React34.createElement("div", { className: "grow h-px bg-neutral-100" }), /* @__PURE__ */ React34.createElement("span", { className: "shrink mx-4 text-[11px] tracking-[0.2em] text-neutral-400 " }, dividerText), /* @__PURE__ */ React34.createElement("div", { className: "grow h-px bg-neutral-100" })), ctaText && ctaHref && /* @__PURE__ */ React34.createElement("div", { className: "w-full *:w-full" }, /* @__PURE__ */ React34.createElement(
3371
+ ), /* @__PURE__ */ React35.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React35.createElement("div", { className: "mb-10 border-b border-neutral-100 pb-8 text-center md:text-left" }, tagline && /* @__PURE__ */ React35.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 " }, tagline), /* @__PURE__ */ React35.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight mb-4" }, title), subtitle && /* @__PURE__ */ React35.createElement("p", { className: "text-[11px] tracking-[0.2em] text-neutral-500 " }, subtitle)), /* @__PURE__ */ React35.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 mb-10 text-center md:text-left" }, description), children && /* @__PURE__ */ React35.createElement("div", { className: "mb-8 text-left" }, children), /* @__PURE__ */ React35.createElement("div", { className: "text-center md:text-left mt-10 space-y-6" }, dividerText && /* @__PURE__ */ React35.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React35.createElement("div", { className: "grow h-px bg-neutral-100" }), /* @__PURE__ */ React35.createElement("span", { className: "shrink mx-4 text-[11px] tracking-[0.2em] text-neutral-400 " }, dividerText), /* @__PURE__ */ React35.createElement("div", { className: "grow h-px bg-neutral-100" })), ctaText && ctaHref && /* @__PURE__ */ React35.createElement("div", { className: "w-full *:w-full" }, /* @__PURE__ */ React35.createElement(
3067
3372
  ThreeDButton,
3068
3373
  {
3069
3374
  href: ctaHref,
@@ -3074,13 +3379,13 @@ var ManagedNewsletterSplitBlock = ({
3074
3379
  };
3075
3380
 
3076
3381
  // src/components/PortfolioHero.tsx
3077
- import React35, { useEffect as useEffect16, useRef as useRef9 } from "react";
3382
+ import React36, { useEffect as useEffect16, useRef as useRef10 } from "react";
3078
3383
  import Link8 from "next/link";
3079
3384
  import Image8 from "next/image";
3080
- import { HugeiconsIcon as HugeiconsIcon23 } from "@hugeicons/react";
3081
- import { ArrowRight01Icon as ArrowRight01Icon5 } from "@hugeicons/core-free-icons";
3385
+ import { HugeiconsIcon as HugeiconsIcon24 } from "@hugeicons/react";
3386
+ import { ArrowRight01Icon as ArrowRight01Icon6 } from "@hugeicons/core-free-icons";
3082
3387
  var useScrollAnimation = () => {
3083
- const elementRef = useRef9(null);
3388
+ const elementRef = useRef10(null);
3084
3389
  useEffect16(() => {
3085
3390
  const el = elementRef.current;
3086
3391
  if (!el) return;
@@ -3117,13 +3422,13 @@ var PortfolioHero = ({
3117
3422
  secondaryCtaHref
3118
3423
  }) => {
3119
3424
  const heroContentRef = useScrollAnimation();
3120
- return /* @__PURE__ */ React35.createElement("section", { className: "pt-8 pb-16 px-6 md:px-12 flex flex-col relative overflow-hidden z-10 w-full" }, /* @__PURE__ */ React35.createElement(
3425
+ return /* @__PURE__ */ React36.createElement("section", { className: "pt-8 pb-16 px-6 md:px-12 flex flex-col relative overflow-hidden z-10 w-full" }, /* @__PURE__ */ React36.createElement(
3121
3426
  "div",
3122
3427
  {
3123
3428
  ref: heroContentRef,
3124
3429
  className: "w-full opacity-0 translate-y-5 transition-all duration-1000 ease-out relative z-10"
3125
3430
  },
3126
- /* @__PURE__ */ React35.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center gap-5 sm:gap-8 mb-10" }, /* @__PURE__ */ React35.createElement("div", { className: "relative w-20 h-20 sm:w-32 sm:h-32 rounded-full overflow-hidden border border-neutral-100 shrink-0 shadow-sm" }, /* @__PURE__ */ React35.createElement(
3431
+ /* @__PURE__ */ React36.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center gap-5 sm:gap-8 mb-10" }, /* @__PURE__ */ React36.createElement("div", { className: "relative w-20 h-20 sm:w-32 sm:h-32 rounded-full overflow-hidden border border-neutral-100 shrink-0 shadow-sm" }, /* @__PURE__ */ React36.createElement(
3127
3432
  Image8,
3128
3433
  {
3129
3434
  src: imageSrc,
@@ -3134,7 +3439,7 @@ var PortfolioHero = ({
3134
3439
  sizes: "(max-width: 640px) 80px, 128px",
3135
3440
  quality: 100
3136
3441
  }
3137
- )), /* @__PURE__ */ React35.createElement("div", { className: "flex flex-col text-left" }, /* @__PURE__ */ React35.createElement("h1", { className: " text-3xl sm:text-5xl lg:text-6xl tracking-tight text-black leading-none mb-3" }, name), socialLabel && /* @__PURE__ */ React35.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-500 " }, socialLabel), socialLinkText && socialLinkHref && /* @__PURE__ */ React35.createElement(
3442
+ )), /* @__PURE__ */ React36.createElement("div", { className: "flex flex-col text-left" }, /* @__PURE__ */ React36.createElement("h1", { className: " text-3xl sm:text-5xl lg:text-6xl tracking-tight text-black leading-none mb-3" }, name), socialLabel && /* @__PURE__ */ React36.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-500 " }, socialLabel), socialLinkText && socialLinkHref && /* @__PURE__ */ React36.createElement(
3138
3443
  "a",
3139
3444
  {
3140
3445
  href: socialLinkHref,
@@ -3144,31 +3449,31 @@ var PortfolioHero = ({
3144
3449
  },
3145
3450
  socialLinkText
3146
3451
  ))),
3147
- /* @__PURE__ */ React35.createElement("p", { className: "text-[13px] leading-[1.8] max-w-4xl mb-12 text-neutral-600" }, bio),
3148
- /* @__PURE__ */ React35.createElement("div", { className: "flex flex-col sm:flex-row gap-4 w-full sm:w-auto" }, primaryCtaText && primaryCtaHref && /* @__PURE__ */ React35.createElement("div", { className: "w-full sm:w-auto *:w-full" }, /* @__PURE__ */ React35.createElement(
3452
+ /* @__PURE__ */ React36.createElement("p", { className: "text-[13px] leading-[1.8] max-w-4xl mb-12 text-neutral-600" }, bio),
3453
+ /* @__PURE__ */ React36.createElement("div", { className: "flex flex-col sm:flex-row gap-4 w-full sm:w-auto" }, primaryCtaText && primaryCtaHref && /* @__PURE__ */ React36.createElement("div", { className: "w-full sm:w-auto *:w-full" }, /* @__PURE__ */ React36.createElement(
3149
3454
  ThreeDButton,
3150
3455
  {
3151
3456
  href: primaryCtaHref,
3152
3457
  className: "py-3 tracking-widest text-[11px]"
3153
3458
  },
3154
3459
  primaryCtaText
3155
- )), secondaryCtaText && secondaryCtaHref && /* @__PURE__ */ React35.createElement(
3460
+ )), secondaryCtaText && secondaryCtaHref && /* @__PURE__ */ React36.createElement(
3156
3461
  Link8,
3157
3462
  {
3158
3463
  href: secondaryCtaHref,
3159
3464
  className: "w-full sm:w-auto inline-flex items-center justify-center gap-3 text-[11px] tracking-[0.2em] rounded-full px-8 py-3.5 bg-neutral-200 transition-colors text-black hover:bg-neutral-200 outline-none"
3160
3465
  },
3161
3466
  secondaryCtaText,
3162
- /* @__PURE__ */ React35.createElement(HugeiconsIcon23, { icon: ArrowRight01Icon5, size: 16 })
3467
+ /* @__PURE__ */ React36.createElement(HugeiconsIcon24, { icon: ArrowRight01Icon6, size: 16 })
3163
3468
  ))
3164
3469
  ));
3165
3470
  };
3166
3471
 
3167
3472
  // src/components/GifFeatureCard.tsx
3168
- import React36, { useState as useState22 } from "react";
3473
+ import React37, { useState as useState23 } from "react";
3169
3474
  import Image9 from "next/image";
3170
- import { HugeiconsIcon as HugeiconsIcon24 } from "@hugeicons/react";
3171
- import { Loading03Icon as Loading03Icon11 } from "@hugeicons/core-free-icons";
3475
+ import { HugeiconsIcon as HugeiconsIcon25 } from "@hugeicons/react";
3476
+ import { Loading03Icon as Loading03Icon12 } from "@hugeicons/core-free-icons";
3172
3477
  var GifFeatureCard = ({
3173
3478
  gifSrc,
3174
3479
  title,
@@ -3176,20 +3481,20 @@ var GifFeatureCard = ({
3176
3481
  alt = "Feature animation",
3177
3482
  className = "aspect-video"
3178
3483
  }) => {
3179
- const [isLoading, setIsLoading] = useState22(true);
3180
- return /* @__PURE__ */ React36.createElement("div", { className: `relative w-full bg-black overflow-hidden shadow-2xl ${className}` }, isLoading && /* @__PURE__ */ React36.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-black" }, /* @__PURE__ */ React36.createElement(
3181
- HugeiconsIcon24,
3484
+ const [isLoading, setIsLoading] = useState23(true);
3485
+ return /* @__PURE__ */ React37.createElement("div", { className: `relative w-full bg-black overflow-hidden shadow-2xl ${className}` }, isLoading && /* @__PURE__ */ React37.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-black" }, /* @__PURE__ */ React37.createElement(
3486
+ HugeiconsIcon25,
3182
3487
  {
3183
- icon: Loading03Icon11,
3488
+ icon: Loading03Icon12,
3184
3489
  size: 32,
3185
3490
  className: "animate-spin text-white"
3186
3491
  }
3187
- )), /* @__PURE__ */ React36.createElement(
3492
+ )), /* @__PURE__ */ React37.createElement(
3188
3493
  "div",
3189
3494
  {
3190
3495
  className: `absolute inset-0 z-0 transition-all duration-1000 ease-out ${isLoading ? "scale-105 blur-2xl opacity-0" : "scale-100 blur-0 opacity-100"}`
3191
3496
  },
3192
- /* @__PURE__ */ React36.createElement(
3497
+ /* @__PURE__ */ React37.createElement(
3193
3498
  Image9,
3194
3499
  {
3195
3500
  src: gifSrc,
@@ -3200,16 +3505,16 @@ var GifFeatureCard = ({
3200
3505
  className: "object-cover object-center pointer-events-none"
3201
3506
  }
3202
3507
  )
3203
- ), /* @__PURE__ */ React36.createElement(
3508
+ ), /* @__PURE__ */ React37.createElement(
3204
3509
  "div",
3205
3510
  {
3206
3511
  className: "absolute inset-x-0 bottom-0 h-1/2 sm:h-2/3 bg-linear-to-t from-black/95 via-black/40 to-transparent z-10 pointer-events-none transition-opacity duration-700"
3207
3512
  }
3208
- ), /* @__PURE__ */ React36.createElement("div", { className: "absolute inset-x-0 bottom-0 p-6 sm:p-8 z-30 flex flex-col justify-end text-left pointer-events-none" }, title && /* @__PURE__ */ React36.createElement("h3", { className: " text-xl sm:text-2xl md:text-3xl text-white tracking-tight mb-2 sm:mb-3 drop-shadow-md" }, title), subtitle && /* @__PURE__ */ React36.createElement("p", { className: "text-[13px] sm:text-[15px] leading-relaxed text-neutral-300 max-w-2xl drop-shadow-sm" }, subtitle)));
3513
+ ), /* @__PURE__ */ React37.createElement("div", { className: "absolute inset-x-0 bottom-0 p-6 sm:p-8 z-30 flex flex-col justify-end text-left pointer-events-none" }, title && /* @__PURE__ */ React37.createElement("h3", { className: " text-xl sm:text-2xl md:text-3xl text-white tracking-tight mb-2 sm:mb-3 drop-shadow-md" }, title), subtitle && /* @__PURE__ */ React37.createElement("p", { className: "text-[13px] sm:text-[15px] leading-relaxed text-neutral-300 max-w-2xl drop-shadow-sm" }, subtitle)));
3209
3514
  };
3210
3515
 
3211
3516
  // src/components/MedicalFeatureStatsBlock.tsx
3212
- import React37, { useState as useState23, useEffect as useEffect17, useRef as useRef10 } from "react";
3517
+ import React38, { useState as useState24, useEffect as useEffect17, useRef as useRef11 } from "react";
3213
3518
  import Image10 from "next/image";
3214
3519
  var MedicalFeatureStatsBlock = ({
3215
3520
  bottomHeadline,
@@ -3218,8 +3523,8 @@ var MedicalFeatureStatsBlock = ({
3218
3523
  trustText,
3219
3524
  stats
3220
3525
  }) => {
3221
- const [isAnimating, setIsAnimating] = useState23(false);
3222
- const titleRef = useRef10(null);
3526
+ const [isAnimating, setIsAnimating] = useState24(false);
3527
+ const titleRef = useRef11(null);
3223
3528
  useEffect17(() => {
3224
3529
  const observer = new IntersectionObserver(
3225
3530
  ([entry]) => {
@@ -3238,7 +3543,7 @@ var MedicalFeatureStatsBlock = ({
3238
3543
  }
3239
3544
  return () => observer.disconnect();
3240
3545
  }, []);
3241
- return /* @__PURE__ */ React37.createElement("section", { className: "py-24 w-full flex justify-center relative z-10" }, /* @__PURE__ */ React37.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React37.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-10 mb-12" }, /* @__PURE__ */ React37.createElement("div", { className: "max-w-xl" }, /* @__PURE__ */ React37.createElement(
3546
+ return /* @__PURE__ */ React38.createElement("section", { className: "py-24 w-full flex justify-center relative z-10" }, /* @__PURE__ */ React38.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-10 mb-12" }, /* @__PURE__ */ React38.createElement("div", { className: "max-w-xl" }, /* @__PURE__ */ React38.createElement(
3242
3547
  "h2",
3243
3548
  {
3244
3549
  ref: titleRef,
@@ -3246,7 +3551,7 @@ var MedicalFeatureStatsBlock = ({
3246
3551
  style: isAnimating ? { animationIterationCount: 1 } : {}
3247
3552
  },
3248
3553
  bottomHeadline
3249
- ), /* @__PURE__ */ React37.createElement("p", { className: "text-[14px] leading-relaxed text-neutral-500" }, bottomDescription)), /* @__PURE__ */ React37.createElement("div", { className: "flex items-center gap-4 shrink-0" }, /* @__PURE__ */ React37.createElement("div", { className: "flex -space-x-3" }, avatars.map((src, i) => /* @__PURE__ */ React37.createElement("div", { key: i, className: "relative w-12 h-12 rounded-full border-[3px] border-white overflow-hidden bg-neutral-100 z-1 hover:z-10 transition-all" }, /* @__PURE__ */ React37.createElement(
3554
+ ), /* @__PURE__ */ React38.createElement("p", { className: "text-[14px] leading-relaxed text-neutral-500" }, bottomDescription)), /* @__PURE__ */ React38.createElement("div", { className: "flex items-center gap-4 shrink-0" }, /* @__PURE__ */ React38.createElement("div", { className: "flex -space-x-3" }, avatars.map((src, i) => /* @__PURE__ */ React38.createElement("div", { key: i, className: "relative w-12 h-12 rounded-full border-[3px] border-white overflow-hidden bg-neutral-100 z-1 hover:z-10 transition-all" }, /* @__PURE__ */ React38.createElement(
3250
3555
  Image10,
3251
3556
  {
3252
3557
  src,
@@ -3255,17 +3560,17 @@ var MedicalFeatureStatsBlock = ({
3255
3560
  sizes: "48px",
3256
3561
  className: "object-cover"
3257
3562
  }
3258
- )))), /* @__PURE__ */ React37.createElement("p", { className: "text-[11px] text-neutral-800 leading-[1.4] max-w-55" }, trustText))), /* @__PURE__ */ React37.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6" }, stats.map((stat, idx) => /* @__PURE__ */ React37.createElement("div", { key: idx, className: "bg-white rounded-4xl p-8 md:p-10 flex flex-col h-70" }, /* @__PURE__ */ React37.createElement("div", { className: "flex items-center p-0.5 mb-6" }, /* @__PURE__ */ React37.createElement("span", { className: "text-[14px] text-neutral-500 tracking-wide" }, stat.label)), /* @__PURE__ */ React37.createElement("h1", { className: "text-6xl gradient-text md:text-[80px] tracking-tighter text-black mt-auto leading-none" }, stat.value))))));
3563
+ )))), /* @__PURE__ */ React38.createElement("p", { className: "text-[11px] text-neutral-800 leading-[1.4] max-w-55" }, trustText))), /* @__PURE__ */ React38.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6" }, stats.map((stat, idx) => /* @__PURE__ */ React38.createElement("div", { key: idx, className: "bg-white rounded-4xl p-8 md:p-10 flex flex-col h-70" }, /* @__PURE__ */ React38.createElement("div", { className: "flex items-center p-0.5 mb-6" }, /* @__PURE__ */ React38.createElement("span", { className: "text-[14px] text-neutral-500 tracking-wide" }, stat.label)), /* @__PURE__ */ React38.createElement("h1", { className: "text-6xl gradient-text md:text-[80px] tracking-tighter text-black mt-auto leading-none" }, stat.value))))));
3259
3564
  };
3260
3565
 
3261
3566
  // src/components/ConsultantShowcase.tsx
3262
- import React38, { useState as useState24 } from "react";
3567
+ import React39, { useState as useState25 } from "react";
3263
3568
  import Image11 from "next/image";
3264
- import { HugeiconsIcon as HugeiconsIcon25 } from "@hugeicons/react";
3265
- import { Loading03Icon as Loading03Icon12 } from "@hugeicons/core-free-icons";
3569
+ import { HugeiconsIcon as HugeiconsIcon26 } from "@hugeicons/react";
3570
+ import { Loading03Icon as Loading03Icon13 } from "@hugeicons/core-free-icons";
3266
3571
  var ImageWithLoader = ({ src, alt, className, sizes, priority = false }) => {
3267
- const [isLoading, setIsLoading] = useState24(true);
3268
- return /* @__PURE__ */ React38.createElement("div", { className: `absolute inset-0 bg-neutral-800 ${className}` }, isLoading && /* @__PURE__ */ React38.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-800/50 backdrop-blur-md transition-opacity duration-300" }, /* @__PURE__ */ React38.createElement(HugeiconsIcon25, { icon: Loading03Icon12, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ React38.createElement(
3572
+ const [isLoading, setIsLoading] = useState25(true);
3573
+ return /* @__PURE__ */ React39.createElement("div", { className: `absolute inset-0 bg-neutral-800 ${className}` }, isLoading && /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-800/50 backdrop-blur-md transition-opacity duration-300" }, /* @__PURE__ */ React39.createElement(HugeiconsIcon26, { icon: Loading03Icon13, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ React39.createElement(
3269
3574
  Image11,
3270
3575
  {
3271
3576
  src,
@@ -3284,9 +3589,9 @@ var ImageWithLoader = ({ src, alt, className, sizes, priority = false }) => {
3284
3589
  var ConsultantShowcase = ({
3285
3590
  profiles
3286
3591
  }) => {
3287
- const [currentIndex, setCurrentIndex] = useState24(0);
3288
- const [touchStart, setTouchStart] = useState24(null);
3289
- const [touchEnd, setTouchEnd] = useState24(null);
3592
+ const [currentIndex, setCurrentIndex] = useState25(0);
3593
+ const [touchStart, setTouchStart] = useState25(null);
3594
+ const [touchEnd, setTouchEnd] = useState25(null);
3290
3595
  const nextSlide = () => {
3291
3596
  setCurrentIndex((prev) => prev === profiles.length - 1 ? 0 : prev + 1);
3292
3597
  };
@@ -3311,7 +3616,7 @@ var ConsultantShowcase = ({
3311
3616
  }
3312
3617
  };
3313
3618
  if (!profiles || profiles.length === 0) return null;
3314
- return /* @__PURE__ */ React38.createElement("section", { className: "py-24 w-full flex justify-center px-4 md:px-8 z-10 relative" }, /* @__PURE__ */ React38.createElement("div", { className: "max-w-6xl w-full" }, /* @__PURE__ */ React38.createElement(
3619
+ return /* @__PURE__ */ React39.createElement("section", { className: "py-24 w-full flex justify-center px-4 md:px-8 z-10 relative" }, /* @__PURE__ */ React39.createElement("div", { className: "max-w-6xl w-full" }, /* @__PURE__ */ React39.createElement(
3315
3620
  "div",
3316
3621
  {
3317
3622
  className: "relative w-full h-100 md:h-112.5 rounded-4xl overflow-hidden bg-neutral-900 group select-none",
@@ -3321,13 +3626,13 @@ var ConsultantShowcase = ({
3321
3626
  },
3322
3627
  profiles.map((profile, idx) => {
3323
3628
  const isActive = idx === currentIndex;
3324
- return /* @__PURE__ */ React38.createElement(
3629
+ return /* @__PURE__ */ React39.createElement(
3325
3630
  "div",
3326
3631
  {
3327
3632
  key: profile.id,
3328
3633
  className: `absolute inset-0 transition-opacity duration-700 ease-in-out ${isActive ? "opacity-100 z-10" : "opacity-0 z-0 pointer-events-none"}`
3329
3634
  },
3330
- /* @__PURE__ */ React38.createElement(
3635
+ /* @__PURE__ */ React39.createElement(
3331
3636
  ImageWithLoader,
3332
3637
  {
3333
3638
  src: profile.imageSrc,
@@ -3335,14 +3640,14 @@ var ConsultantShowcase = ({
3335
3640
  priority: idx === 0
3336
3641
  }
3337
3642
  ),
3338
- /* @__PURE__ */ React38.createElement("div", { className: "absolute inset-0 bg-black/20 z-10 pointer-events-none" }),
3339
- /* @__PURE__ */ React38.createElement("div", { className: "absolute top-0 left-0 w-full h-[60%] bg-linear-to-b from-black/80 via-black/30 to-transparent z-20 pointer-events-none" }),
3340
- /* @__PURE__ */ React38.createElement("div", { className: `absolute top-8 left-8 md:top-12 md:left-12 z-30 text-white max-w-lg transition-transform duration-700 ease-out ${isActive ? "translate-y-0" : "-translate-y-4"}` }, /* @__PURE__ */ React38.createElement("h2", { className: "text-[29px] tracking-tight mb-2 leading-none" }, profile.name), /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col gap-0.5" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[15px] text-white/80 tracking-wide" }, profile.role), profile.description && /* @__PURE__ */ React38.createElement("p", { className: "text-[15px] text-white/80 tracking-wide mt-1" }, profile.description)))
3643
+ /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 bg-black/20 z-10 pointer-events-none" }),
3644
+ /* @__PURE__ */ React39.createElement("div", { className: "absolute top-0 left-0 w-full h-[60%] bg-linear-to-b from-black/80 via-black/30 to-transparent z-20 pointer-events-none" }),
3645
+ /* @__PURE__ */ React39.createElement("div", { className: `absolute top-8 left-8 md:top-12 md:left-12 z-30 text-white max-w-lg transition-transform duration-700 ease-out ${isActive ? "translate-y-0" : "-translate-y-4"}` }, /* @__PURE__ */ React39.createElement("h2", { className: "text-[29px] tracking-tight mb-2 leading-none" }, profile.name), /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col gap-0.5" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[15px] text-white/80 tracking-wide" }, profile.role), profile.description && /* @__PURE__ */ React39.createElement("p", { className: "text-[15px] text-white/80 tracking-wide mt-1" }, profile.description)))
3341
3646
  );
3342
3647
  }),
3343
- /* @__PURE__ */ React38.createElement("div", { className: "absolute top-0 left-0 w-[20%] h-full z-40 cursor-w-resize hidden md:block", onClick: prevSlide }),
3344
- /* @__PURE__ */ React38.createElement("div", { className: "absolute top-0 right-0 w-[20%] h-full z-40 cursor-e-resize hidden md:block", onClick: nextSlide }),
3345
- /* @__PURE__ */ React38.createElement("div", { className: "absolute bottom-6 md:bottom-8 left-0 w-full px-4 z-30 flex justify-center items-center gap-2" }, profiles.map((_, idx) => /* @__PURE__ */ React38.createElement(
3648
+ /* @__PURE__ */ React39.createElement("div", { className: "absolute top-0 left-0 w-[20%] h-full z-40 cursor-w-resize hidden md:block", onClick: prevSlide }),
3649
+ /* @__PURE__ */ React39.createElement("div", { className: "absolute top-0 right-0 w-[20%] h-full z-40 cursor-e-resize hidden md:block", onClick: nextSlide }),
3650
+ /* @__PURE__ */ React39.createElement("div", { className: "absolute bottom-6 md:bottom-8 left-0 w-full px-4 z-30 flex justify-center items-center gap-2" }, profiles.map((_, idx) => /* @__PURE__ */ React39.createElement(
3346
3651
  "button",
3347
3652
  {
3348
3653
  key: idx,
@@ -3354,13 +3659,13 @@ var ConsultantShowcase = ({
3354
3659
  };
3355
3660
 
3356
3661
  // src/components/ContentGridBlock.tsx
3357
- import React39, { useState as useState25 } from "react";
3662
+ import React40, { useState as useState26 } from "react";
3358
3663
  import Image12 from "next/image";
3359
- import { HugeiconsIcon as HugeiconsIcon26 } from "@hugeicons/react";
3360
- import { Loading03Icon as Loading03Icon13 } from "@hugeicons/core-free-icons";
3664
+ import { HugeiconsIcon as HugeiconsIcon27 } from "@hugeicons/react";
3665
+ import { Loading03Icon as Loading03Icon14 } from "@hugeicons/core-free-icons";
3361
3666
  var ImageWithLoader2 = ({ src, alt, className, sizes }) => {
3362
- const [isLoading, setIsLoading] = useState25(true);
3363
- return /* @__PURE__ */ React39.createElement("div", { className: `relative overflow-hidden bg-neutral-100 ${className}` }, isLoading && /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-100/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ React39.createElement(HugeiconsIcon26, { icon: Loading03Icon13, size: 24, className: "animate-spin text-neutral-400" })), /* @__PURE__ */ React39.createElement(
3667
+ const [isLoading, setIsLoading] = useState26(true);
3668
+ return /* @__PURE__ */ React40.createElement("div", { className: `relative overflow-hidden bg-neutral-100 ${className}` }, isLoading && /* @__PURE__ */ React40.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-100/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ React40.createElement(HugeiconsIcon27, { icon: Loading03Icon14, size: 24, className: "animate-spin text-neutral-400" })), /* @__PURE__ */ React40.createElement(
3364
3669
  Image12,
3365
3670
  {
3366
3671
  src,
@@ -3382,30 +3687,30 @@ var ContentGridBlock = ({
3382
3687
  middleBottomCard,
3383
3688
  rightCards
3384
3689
  }) => {
3385
- return /* @__PURE__ */ React39.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React39.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ React39.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ React39.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ React39.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ React39.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ React39.createElement("span", { className: "mb-auto text-[11px] text-neutral-200 tracking-widest" }, leftCard.tag), /* @__PURE__ */ React39.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ React39.createElement("div", null, /* @__PURE__ */ React39.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ React39.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React39.createElement(Image12, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React39.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ React39.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ React39.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ React39.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React39.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ React39.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ React39.createElement(Image12, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ React39.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ React39.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ React39.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-100 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ React39.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ React39.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ React39.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React39.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ React39.createElement("div", null, /* @__PURE__ */ React39.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ React39.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React39.createElement(Image12, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ React39.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[16px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ React39.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => /* @__PURE__ */ React39.createElement("div", { key: idx, className: "relative w-full h-80 text-white rounded-3xl overflow-hidden group" }, /* @__PURE__ */ React39.createElement(
3690
+ return /* @__PURE__ */ React40.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React40.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ React40.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ React40.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ React40.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ React40.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ React40.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ React40.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React40.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ React40.createElement("span", { className: "mb-auto text-[11px] text-neutral-200 tracking-widest" }, leftCard.tag), /* @__PURE__ */ React40.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ React40.createElement("div", null, /* @__PURE__ */ React40.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ React40.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ React40.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React40.createElement(Image12, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ React40.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React40.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ React40.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ React40.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React40.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ React40.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ React40.createElement(Image12, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ React40.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ React40.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ React40.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-100 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ React40.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ React40.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React40.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ React40.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ React40.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React40.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ React40.createElement("div", null, /* @__PURE__ */ React40.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ React40.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ React40.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React40.createElement(Image12, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ React40.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React40.createElement("p", { className: "text-[16px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ React40.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => /* @__PURE__ */ React40.createElement("div", { key: idx, className: "relative w-full h-80 text-white rounded-3xl overflow-hidden group" }, /* @__PURE__ */ React40.createElement(
3386
3691
  ImageWithLoader2,
3387
3692
  {
3388
3693
  src: card.bgImageSrc,
3389
3694
  alt: card.title,
3390
3695
  className: "absolute inset-0 w-full h-full"
3391
3696
  }
3392
- ), /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 z-20 pointer-events-none" }), /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 z-30 p-6 flex flex-col justify-end text-white" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[14px] leading-snug mb-3 pr-2 text-white/90" }, card.mainText), card.tag && /* @__PURE__ */ React39.createElement("span", { className: "mb-4 text-[11px] text-white/50 tracking-widest" }, card.tag), /* @__PURE__ */ React39.createElement("div", { className: "pt-3" }, /* @__PURE__ */ React39.createElement("h4", { className: "text-[15px] text-white tracking-wide" }, card.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[13px] text-white/60" }, card.subtitle)))))))));
3697
+ ), /* @__PURE__ */ React40.createElement("div", { className: "absolute inset-0 z-20 pointer-events-none" }), /* @__PURE__ */ React40.createElement("div", { className: "absolute inset-0 z-30 p-6 flex flex-col justify-end text-white" }, /* @__PURE__ */ React40.createElement("p", { className: "text-[14px] leading-snug mb-3 pr-2 text-white/90" }, card.mainText), card.tag && /* @__PURE__ */ React40.createElement("span", { className: "mb-4 text-[11px] text-white/50 tracking-widest" }, card.tag), /* @__PURE__ */ React40.createElement("div", { className: "pt-3" }, /* @__PURE__ */ React40.createElement("h4", { className: "text-[15px] text-white tracking-wide" }, card.title), /* @__PURE__ */ React40.createElement("p", { className: "text-[13px] text-white/60" }, card.subtitle)))))))));
3393
3698
  };
3394
3699
 
3395
3700
  // src/components/ManagedProjectsBlock.tsx
3396
- import React40 from "react";
3701
+ import React41 from "react";
3397
3702
  import Link9 from "next/link";
3398
3703
  var GridSection = ({
3399
3704
  children,
3400
3705
  isLast = false,
3401
3706
  className = "py-8 md:py-10"
3402
- }) => /* @__PURE__ */ React40.createElement("div", { className: `relative px-5 md:px-12 ${className} ${!isLast ? "" : ""}` }, children);
3707
+ }) => /* @__PURE__ */ React41.createElement("div", { className: `relative px-5 md:px-12 ${className} ${!isLast ? "" : ""}` }, children);
3403
3708
  var ManagedProjectsBlock = ({
3404
3709
  tagline,
3405
3710
  title,
3406
3711
  projects
3407
3712
  }) => {
3408
- return /* @__PURE__ */ React40.createElement("div", { className: "grow pt-4 pb-20 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React40.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-5xl mx-auto overflow-hidden" }, /* @__PURE__ */ React40.createElement(
3713
+ return /* @__PURE__ */ React41.createElement("div", { className: "grow pt-4 pb-20 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React41.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-5xl mx-auto overflow-hidden" }, /* @__PURE__ */ React41.createElement(
3409
3714
  "div",
3410
3715
  {
3411
3716
  className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
@@ -3414,10 +3719,10 @@ var ManagedProjectsBlock = ({
3414
3719
  backgroundRepeat: "repeat"
3415
3720
  }
3416
3721
  }
3417
- ), /* @__PURE__ */ React40.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React40.createElement(GridSection, null, tagline && /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React40.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), projects.map((project, index) => {
3722
+ ), /* @__PURE__ */ React41.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React41.createElement(GridSection, null, tagline && /* @__PURE__ */ React41.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React41.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), projects.map((project, index) => {
3418
3723
  const isLast = index === projects.length - 1;
3419
- const projectContent = /* @__PURE__ */ React40.createElement("div", { className: "group block w-full" }, /* @__PURE__ */ React40.createElement("div", { className: "flex flex-col md:flex-row md:items-center justify-between gap-3 md:gap-4 mb-4 md:mb-5" }, /* @__PURE__ */ React40.createElement("div", { className: "flex items-center gap-3 md:gap-4" }, /* @__PURE__ */ React40.createElement("h2", { className: " text-[16px] text-black transition-all flex items-center gap-2" }, project.title, /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] opacity-0 -translate-x-2 group-hover:opacity-100 group-hover:translate-x-0 transition-all duration-300" }, project.isExternal ? "\u2197" : "\u2192")), /* @__PURE__ */ React40.createElement("span", { className: `text-[9px] px-2.5 py-1 rounded-full tracking-[0.15em] transition-colors ${project.status.toLowerCase() === "production" ? "bg-black text-white" : "bg-neutral-100 text-neutral-500 group-hover:bg-neutral-100 group-hover:text-black"}` }, project.status)), /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-500 shrink-0 " }, project.date)), /* @__PURE__ */ React40.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 max-w-4xl text-left transition-colors group-hover:text-black" }, project.description));
3420
- return /* @__PURE__ */ React40.createElement(GridSection, { key: project.id || index, isLast, className: isLast ? "py-8 md:py-10 pb-12 md:pb-14" : "py-8 md:py-10" }, project.isExternal ? /* @__PURE__ */ React40.createElement("a", { href: project.link, target: "_blank", rel: "noopener noreferrer", className: "block outline-none" }, projectContent) : /* @__PURE__ */ React40.createElement(Link9, { href: project.link, className: "block outline-none" }, projectContent));
3724
+ const projectContent = /* @__PURE__ */ React41.createElement("div", { className: "group block w-full" }, /* @__PURE__ */ React41.createElement("div", { className: "flex flex-col md:flex-row md:items-center justify-between gap-3 md:gap-4 mb-4 md:mb-5" }, /* @__PURE__ */ React41.createElement("div", { className: "flex items-center gap-3 md:gap-4" }, /* @__PURE__ */ React41.createElement("h2", { className: " text-[16px] text-black transition-all flex items-center gap-2" }, project.title, /* @__PURE__ */ React41.createElement("span", { className: "text-[11px] opacity-0 -translate-x-2 group-hover:opacity-100 group-hover:translate-x-0 transition-all duration-300" }, project.isExternal ? "\u2197" : "\u2192")), /* @__PURE__ */ React41.createElement("span", { className: `text-[9px] px-2.5 py-1 rounded-full tracking-[0.15em] transition-colors ${project.status.toLowerCase() === "production" ? "bg-black text-white" : "bg-neutral-100 text-neutral-500 group-hover:bg-neutral-100 group-hover:text-black"}` }, project.status)), /* @__PURE__ */ React41.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-500 shrink-0 " }, project.date)), /* @__PURE__ */ React41.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 max-w-4xl text-left transition-colors group-hover:text-black" }, project.description));
3725
+ return /* @__PURE__ */ React41.createElement(GridSection, { key: project.id || index, isLast, className: isLast ? "py-8 md:py-10 pb-12 md:pb-14" : "py-8 md:py-10" }, project.isExternal ? /* @__PURE__ */ React41.createElement("a", { href: project.link, target: "_blank", rel: "noopener noreferrer", className: "block outline-none" }, projectContent) : /* @__PURE__ */ React41.createElement(Link9, { href: project.link, className: "block outline-none" }, projectContent));
3421
3726
  }))));
3422
3727
  };
3423
3728
  export {
@@ -3454,6 +3759,7 @@ export {
3454
3759
  UniversalOrganizationPage,
3455
3760
  UniversalProfilePage,
3456
3761
  UniversalProfileSettings,
3762
+ UniversalSecurityPage,
3457
3763
  UniversalSidebar,
3458
3764
  UniversalTransactionPage,
3459
3765
  UniversalWalletPage,