property-practice-ui 0.1.4 → 0.2.0

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.
Files changed (37) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/{Textarea-u7ONHI5M.d.cts → Textarea-BNvLsAXP.d.cts} +1 -10
  3. package/dist/{Textarea-u7ONHI5M.d.ts → Textarea-BNvLsAXP.d.ts} +1 -10
  4. package/dist/atoms.cjs +5 -3
  5. package/dist/atoms.cjs.map +1 -1
  6. package/dist/atoms.d.cts +12 -3
  7. package/dist/atoms.d.ts +12 -3
  8. package/dist/atoms.js +5 -3
  9. package/dist/atoms.js.map +1 -1
  10. package/dist/index.cjs +794 -300
  11. package/dist/index.cjs.map +1 -1
  12. package/dist/index.d.cts +34 -17
  13. package/dist/index.d.ts +34 -17
  14. package/dist/index.js +790 -296
  15. package/dist/index.js.map +1 -1
  16. package/package.json +1 -1
  17. package/src/atoms/Chip/Chip.tsx +29 -0
  18. package/src/atoms/SecondaryInput/SecondaryInput.tsx +5 -3
  19. package/src/molecules/Address/Address.tsx +113 -26
  20. package/src/molecules/CTAContainer/CTAContainer.tsx +28 -2
  21. package/src/molecules/ContentCard/ContentCard.tsx +5 -0
  22. package/src/molecules/ExtendedButton/ExtendedButton.stories.tsx +31 -0
  23. package/src/molecules/ExtendedButton/ExtendedButton.tsx +29 -0
  24. package/src/molecules/ProductInfo/ProductInfo.tsx +18 -0
  25. package/src/molecules/SideNav/SideNav.stories.tsx +161 -11
  26. package/src/molecules/SideNav/SideNav.tsx +219 -44
  27. package/src/organism/ContactForm/ContactForm.tsx +13 -2
  28. package/src/organism/FeatureCarousel/FeatureCarousel.tsx +130 -45
  29. package/src/organism/Footer/Footer.tsx +2 -2
  30. package/src/organism/Header/Header.tsx +70 -0
  31. package/src/templates/AboutUs/AboutUs.tsx +2 -2
  32. package/src/templates/Contact/Contact.tsx +21 -6
  33. package/src/templates/FAQ/FAQ.tsx +0 -1
  34. package/src/templates/Features/Features.tsx +26 -18
  35. package/src/templates/Hero/Hero.tsx +34 -8
  36. package/src/templates/OtherProducts/OtherProducts.tsx +73 -22
  37. package/src/tokens/colors.ts +1 -0
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { createContext, useContext, useMemo, useState, useEffect, useRef, Fragment as Fragment$1 } from 'react';
2
- import styled39, { keyframes } from 'styled-components';
2
+ import styled40, { keyframes } from 'styled-components';
3
3
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
4
4
  import { HiArrowUpRight, HiMinus, HiPlus, HiArrowLeft, HiArrowRight } from 'react-icons/hi2';
5
5
  import { FaMinus, FaPlus as FaPlus$1, FaCheckCircle } from 'react-icons/fa';
@@ -33,7 +33,8 @@ var colors = {
33
33
  active: "#828282",
34
34
  error: "#F87171",
35
35
  focus: "#3B82F6",
36
- brand: "#1D3C77"
36
+ brand: "#1D3C77",
37
+ light: "#f3f3f3"
37
38
  },
38
39
  text: {
39
40
  brand: "#1D3C77",
@@ -82,12 +83,12 @@ var spaces = {
82
83
  9: "56px",
83
84
  20: "150px"
84
85
  };
85
- var StyledLabel = styled39.span`
86
+ var StyledLabel = styled40.span`
86
87
  color: ${(props) => colors.text[props?.color]};
87
88
  font-size: ${sizes.sm};
88
89
  font-weight: ${(props) => props.fontWeight};
89
90
  `;
90
- var StyledFloatingLabel = styled39(StyledLabel)`
91
+ var StyledFloatingLabel = styled40(StyledLabel)`
91
92
  position: absolute;
92
93
  left: 0;
93
94
  bottom: 100%;
@@ -112,7 +113,7 @@ var FloatingLabel = ({
112
113
  return /* @__PURE__ */ jsx(StyledFloatingLabel, { color, fontWeight, children: value });
113
114
  };
114
115
  var variants = ["brand", "teal", "blue"];
115
- var StyledContainer = styled39.button`
116
+ var StyledContainer = styled40.button`
116
117
  padding: 0.75rem;
117
118
  ${(props) => props.as === "button" ? `
118
119
  width: 2.5rem;
@@ -142,7 +143,7 @@ var StyledContainer = styled39.button`
142
143
  transform: rotate(45deg);
143
144
  }
144
145
  `;
145
- var StyledIcon = styled39(HiArrowUpRight)`
146
+ var StyledIcon = styled40(HiArrowUpRight)`
146
147
  width: 1rem;
147
148
  height: 1rem;
148
149
  color: ${colors.text.secondary};
@@ -175,7 +176,7 @@ var radii = {
175
176
  var spin = keyframes`
176
177
  to { transform: rotate(360deg); }
177
178
  `;
178
- var Ring = styled39.span`
179
+ var Ring = styled40.span`
179
180
  display: inline-block;
180
181
  width: ${({ size }) => typeof size === "number" ? `${size}px` : size};
181
182
  height: ${({ size }) => typeof size === "number" ? `${size}px` : size};
@@ -210,7 +211,7 @@ var Loader = ({
210
211
  );
211
212
  };
212
213
  var ButtonTypes = ["submit", "reset", "button"];
213
- var StyledButton = styled39.button`
214
+ var StyledButton = styled40.button`
214
215
  padding: ${spaces[2]} ${spaces[4]};
215
216
  background-color: ${(props) => props.variant === "light" ? colors.button.primary : colors.button.secondary};
216
217
  border-radius: ${radii.lg};
@@ -237,7 +238,7 @@ var StyledButton = styled39.button`
237
238
  color: ${colors.text.primary};
238
239
  }
239
240
  `;
240
- var ButtonText = styled39.span`
241
+ var ButtonText = styled40.span`
241
242
  font-size: 12px;
242
243
  font-weight: 700;
243
244
  `;
@@ -266,7 +267,7 @@ var Button = ({
266
267
  };
267
268
  Button.types = ButtonTypes;
268
269
  var variants2 = ["primary", "secondary", "subtle", "error"];
269
- var StyledDescription = styled39.p`
270
+ var StyledDescription = styled40.p`
270
271
  margin: 0;
271
272
  font-size: 1rem;
272
273
  line-height: 1.6;
@@ -292,7 +293,7 @@ var Description = ({
292
293
  return /* @__PURE__ */ jsx(StyledDescription, { variant, children });
293
294
  };
294
295
  Description.variants = variants2;
295
- var StyledButton2 = styled39.button`
296
+ var StyledButton2 = styled40.button`
296
297
  display: flex;
297
298
  align-items: center;
298
299
  height: 2.5rem;
@@ -318,12 +319,12 @@ var ExtendedButton = ({
318
319
  /* @__PURE__ */ jsx(TextButton, { asChild: true, text, bgVariant: textBgVariant, textVariant, uppercase: false })
319
320
  ] });
320
321
  };
321
- var Container = styled39.div`
322
+ var Container = styled40.div`
322
323
  display: flex;
323
324
  gap: 1rem;
324
325
  background-color: transparent;
325
326
  `;
326
- var ThumbnailWrapper = styled39.div`
327
+ var ThumbnailWrapper = styled40.div`
327
328
  width: ${(props) => props.$size || "3rem"};
328
329
  height: ${(props) => props.$size || "3rem"};
329
330
  border-radius: 50%;
@@ -333,18 +334,18 @@ var ThumbnailWrapper = styled39.div`
333
334
  justify-content: center;
334
335
  flex-shrink: 0;
335
336
  `;
336
- var Content = styled39.div`
337
+ var Content = styled40.div`
337
338
  display: flex;
338
339
  flex-direction: column;
339
340
  gap: 0.25rem;
340
341
  `;
341
- var Title = styled39.h3`
342
+ var Title = styled40.h3`
342
343
  margin: 0;
343
344
  font-size: 1rem;
344
345
  font-weight: 600;
345
346
  color: ${(props) => colors.text[props.titleColor]};
346
347
  `;
347
- var Description2 = styled39.p`
348
+ var Description2 = styled40.p`
348
349
  margin: 0;
349
350
  font-size: 0.875rem;
350
351
  line-height: 1.5;
@@ -386,12 +387,12 @@ var FeatureItem = ({
386
387
  var breakpoints = {
387
388
  sm: "640px",
388
389
  lg: "1024px"};
389
- styled39.div`
390
+ styled40.div`
390
391
  width: 100%;
391
392
  display: flex;
392
393
  justify-content: center;
393
394
  `;
394
- styled39.div`
395
+ styled40.div`
395
396
  display: flex;
396
397
  flex-direction: column;
397
398
  padding: ${spaces[4]};
@@ -419,7 +420,7 @@ var variants3 = {
419
420
  letterSpacing: "0.2px"
420
421
  }
421
422
  };
422
- var StyledText = styled39.h1`
423
+ var StyledText = styled40.h1`
423
424
  color: ${(props) => colors.text[props?.color]};
424
425
  font-size: ${(props) => variants3[props.variant].fontSize};
425
426
  font-weight: ${(props) => variants3[props.variant].fontWeight};
@@ -436,7 +437,7 @@ var Header = ({
436
437
 
437
438
  // src/types.ts
438
439
  var InputTypes = ["number", "text", "email", "date"];
439
- var StyledInput = styled39.input`
440
+ var StyledInput = styled40.input`
440
441
  display: block;
441
442
  height: 100%;
442
443
  width: 100%;
@@ -450,7 +451,7 @@ var Input = ({ name, onChange, ...rest }) => {
450
451
  };
451
452
  Input.types = InputTypes;
452
453
  var variants4 = ["primary", "secondary", "subtle", "error"];
453
- var StyledPill = styled39.span`
454
+ var StyledPill = styled40.span`
454
455
  display: inline-block;
455
456
  padding: 0.5rem 1rem;
456
457
  border-radius: 9999px;
@@ -512,7 +513,7 @@ var Pill = ({
512
513
  return /* @__PURE__ */ jsx(StyledPill, { variant, $inverse: inverse, children });
513
514
  };
514
515
  Pill.variants = variants4;
515
- var Container3 = styled39.div`
516
+ var Container3 = styled40.div`
516
517
  border-radius: ${radii.md};
517
518
  padding: ${spaces["3"]};
518
519
  display: flex;
@@ -538,7 +539,7 @@ var Container3 = styled39.div`
538
539
  background-color: rgba(255, 255, 255, 0.92);
539
540
  }
540
541
  `;
541
- var Label2 = styled39.span`
542
+ var Label2 = styled40.span`
542
543
  font-size: 16px;
543
544
  font-weight: ${(props) => props.isSelected ? "800" : "400"};
544
545
  text-align: center;
@@ -549,10 +550,10 @@ var RadioItem = ({ label, isSelected, onClick }) => {
549
550
  /* @__PURE__ */ jsx(Label2, { isSelected, children: label })
550
551
  ] });
551
552
  };
552
- var Container4 = styled39.div`
553
+ var Container4 = styled40.div`
553
554
  width: 100%;
554
555
  `;
555
- var Label3 = styled39.label`
556
+ var Label3 = styled40.label`
556
557
  display: block;
557
558
  font-size: 13px;
558
559
  font-weight: 600;
@@ -560,12 +561,13 @@ var Label3 = styled39.label`
560
561
  opacity: 0.8;
561
562
  margin-bottom: 0.5rem;
562
563
  `;
563
- var StyledInput2 = styled39.input`
564
+ var StyledInput2 = styled40.input`
565
+ box-sizing: border-box;
564
566
  height: 2.75rem;
565
567
  width: 100%;
566
568
  border-radius: 6px;
567
569
  border: 1px solid ${(props) => props.$borderColor || "#d1d5db"};
568
- background-color: ${(props) => props.$bgColor ? colors.background[props.$bgColor] : colors.background?.light};
570
+ background-color: ${(props) => props.$bgColor ? colors.background[props.$bgColor] : colors.background?.secondary};
569
571
  padding: 0 0.75rem;
570
572
  font-size: 15px;
571
573
  color: ${(props) => props.$textColor ? colors.text[props.$textColor] : colors.text.primary};
@@ -582,11 +584,12 @@ var StyledInput2 = styled39.input`
582
584
  }};
583
585
  }
584
586
  `;
585
- var StyledTextArea = styled39.textarea`
587
+ var StyledTextArea = styled40.textarea`
588
+ box-sizing: border-box;
586
589
  width: 100%;
587
590
  border-radius: 6px;
588
591
  border: 1px solid ${(props) => props.$borderColor || "#d1d5db"};
589
- background-color: ${(props) => props.$bgColor ? colors.background[props.$bgColor] : colors.background?.light};
592
+ background-color: ${(props) => props.$bgColor ? colors.background[props.$bgColor] : colors.background?.secondary};
590
593
  padding: 0.75rem;
591
594
  font-size: 15px;
592
595
  color: ${(props) => props.$textColor ? colors.text[props.$textColor] : colors.text.primary};
@@ -609,7 +612,7 @@ var SecondaryInput = ({
609
612
  labelColor = "brand",
610
613
  inputTextColor = "primary",
611
614
  placeholderColor = "subtle",
612
- backgroundColor = "light",
615
+ backgroundColor = "secondary",
613
616
  borderColor = "#d1d5db",
614
617
  focusRingColor = "brand",
615
618
  ...rest
@@ -641,7 +644,7 @@ var SecondaryInput = ({
641
644
  ] });
642
645
  };
643
646
  var variants5 = ["primary", "secondary", "inverse", "filled"];
644
- var StyledButton3 = styled39.button`
647
+ var StyledButton3 = styled40.button`
645
648
  width: 2.5rem;
646
649
  height: 2.5rem;
647
650
  display: flex;
@@ -717,7 +720,7 @@ var SocialButton = ({
717
720
  };
718
721
  SocialButton.variants = variants5;
719
722
  var variants6 = ["primary", "secondary", "subtle"];
720
- var CheckboxContainer = styled39.label`
723
+ var CheckboxContainer = styled40.label`
721
724
  display: flex;
722
725
  align-items: flex-start;
723
726
  gap: 0.75rem;
@@ -725,12 +728,12 @@ var CheckboxContainer = styled39.label`
725
728
  font-size: 0.875rem;
726
729
  line-height: 1.5;
727
730
  `;
728
- var HiddenCheckbox = styled39.input.attrs({ type: "checkbox" })`
731
+ var HiddenCheckbox = styled40.input.attrs({ type: "checkbox" })`
729
732
  position: absolute;
730
733
  opacity: 0;
731
734
  cursor: pointer;
732
735
  `;
733
- var StyledCheckbox = styled39.div`
736
+ var StyledCheckbox = styled40.div`
734
737
  width: 1.25rem;
735
738
  height: 1.25rem;
736
739
  border: 2px solid ${(props) => {
@@ -778,7 +781,7 @@ var StyledCheckbox = styled39.div`
778
781
  display: ${(props) => props.$checked ? "block" : "none"};
779
782
  }
780
783
  `;
781
- var Text = styled39.span`
784
+ var Text = styled40.span`
782
785
  color: ${(props) => {
783
786
  switch (props.variant) {
784
787
  case "primary":
@@ -792,7 +795,7 @@ var Text = styled39.span`
792
795
  }
793
796
  }};
794
797
  `;
795
- var Link = styled39.a`
798
+ var Link = styled40.a`
796
799
  color: ${(props) => {
797
800
  switch (props.variant) {
798
801
  case "primary":
@@ -859,7 +862,7 @@ var variants7 = {
859
862
  fontWeight: 500
860
863
  }
861
864
  };
862
- var StyledText2 = styled39.h1`
865
+ var StyledText2 = styled40.h1`
863
866
  color: ${(props) => colors.text[props?.color]};
864
867
  font-size: ${(props) => variants7[props.variant].fontSize};
865
868
  font-weight: ${(props) => variants7[props.variant].fontWeight};
@@ -872,7 +875,7 @@ var Text2 = ({
872
875
  return /* @__PURE__ */ jsx(StyledText2, { color, variant, children });
873
876
  };
874
877
  Text2.variants = sizes2;
875
- var StyledTextarea = styled39.textarea`
878
+ var StyledTextarea = styled40.textarea`
876
879
  display: block;
877
880
  width: 100%;
878
881
  height: 100%;
@@ -893,7 +896,7 @@ var Textarea = ({
893
896
  Textarea.types = InputTypes;
894
897
  var bgVariants = ["primary", "secondary", "tertiary", "subtle", "blue", "brand", "light", "transparent"];
895
898
  var textVariants = ["brand", "primary", "secondary", "tertiary", "subtle", "light", "error", "blue"];
896
- var StyledContainer2 = styled39.button`
899
+ var StyledContainer2 = styled40.button`
897
900
  padding: 0 1rem;
898
901
  height: 2.5rem;
899
902
  display: flex;
@@ -912,7 +915,7 @@ var StyledContainer2 = styled39.button`
912
915
  opacity: 0.9;
913
916
  }
914
917
  `;
915
- var StyledText3 = styled39.span`
918
+ var StyledText3 = styled40.span`
916
919
  color: ${(props) => colors.text[props.textVariant]};
917
920
  font-size: 0.75rem;
918
921
  letter-spacing: 0.05em;
@@ -940,7 +943,7 @@ var TextButton = ({
940
943
  };
941
944
  TextButton.bgVariants = bgVariants;
942
945
  TextButton.textVariants = textVariants;
943
- styled39.div`
946
+ styled40.div`
944
947
  display: inline-flex;
945
948
  background-color: ${(props) => {
946
949
  switch (props.variant) {
@@ -958,7 +961,7 @@ styled39.div`
958
961
  padding: 0.25rem;
959
962
  gap: 0.25rem;
960
963
  `;
961
- styled39.button`
964
+ styled40.button`
962
965
  padding: 0.5rem 1.5rem;
963
966
  border-radius: 9999px;
964
967
  border: none;
@@ -1003,10 +1006,10 @@ styled39.button`
1003
1006
  opacity: ${(props) => props.$isActive ? 1 : 0.7};
1004
1007
  }
1005
1008
  `;
1006
- var Container5 = styled39.div`
1009
+ var Container5 = styled40.div`
1007
1010
  width: 100%;
1008
1011
  `;
1009
- var InnerContainer2 = styled39.div`
1012
+ var InnerContainer2 = styled40.div`
1010
1013
  position: relative;
1011
1014
  width: 100%;
1012
1015
  min-height: 58px;
@@ -1039,7 +1042,7 @@ var InputContainer = ({
1039
1042
  typeof error === "string" && /* @__PURE__ */ jsx(Label, { value: error, color: "error" })
1040
1043
  ] });
1041
1044
  };
1042
- var Select = styled39.select`
1045
+ var Select = styled40.select`
1043
1046
  width: 100%;
1044
1047
  color: ${colors.text.subtle};
1045
1048
  background: transparent;
@@ -1061,7 +1064,7 @@ var Select = styled39.select`
1061
1064
  color: ${colors.text.subtle};
1062
1065
  }
1063
1066
  `;
1064
- var OptionItem = styled39.option`
1067
+ var OptionItem = styled40.option`
1065
1068
  color: ${(props) => props.disabled ? colors.text.light : colors.text.subtle};
1066
1069
  `;
1067
1070
  var Dropdown = ({
@@ -2015,20 +2018,20 @@ function TopMenu({ logoUrl, children }) {
2015
2018
  /* @__PURE__ */ jsx("div", { className: "space-x-4 text-sm font-medium ", children })
2016
2019
  ] }) });
2017
2020
  }
2018
- var Container6 = styled39.div`
2021
+ var Container6 = styled40.div`
2019
2022
  width: 100%;
2020
2023
  padding: ${spaces[4]};
2021
2024
  `;
2022
2025
  var AccordionContent = ({ children }) => {
2023
2026
  return /* @__PURE__ */ jsx(Container6, { children });
2024
2027
  };
2025
- var Container7 = styled39.div`
2028
+ var Container7 = styled40.div`
2026
2029
  display: flex;
2027
2030
  align-items: center;
2028
2031
  justify-content: space-between;
2029
2032
  width: 100%;
2030
2033
  `;
2031
- var HeaderContainer = styled39.div`
2034
+ var HeaderContainer = styled40.div`
2032
2035
  display: flex;
2033
2036
  align-items: center;
2034
2037
  gap: ${spaces[2]};
@@ -2060,7 +2063,7 @@ var AccordionHeader = ({
2060
2063
  )
2061
2064
  ] });
2062
2065
  };
2063
- var Container8 = styled39.div`
2066
+ var Container8 = styled40.div`
2064
2067
  border-radius: ${radii.lg};
2065
2068
  background-color: ${colors.background.secondary};
2066
2069
  padding: ${spaces[4]};
@@ -2089,19 +2092,88 @@ var Accordion = ({
2089
2092
  ] });
2090
2093
  };
2091
2094
  var variants9 = ["primary", "inverse", "subtle"];
2092
- var AddressContainer = styled39.div`
2095
+ var AddressContainer = styled40.div`
2093
2096
  display: flex;
2094
2097
  flex-direction: column;
2095
- gap: 1rem;
2096
2098
  background-color: transparent;
2097
2099
  padding: 2rem;
2100
+
2101
+ /* Desktop: normal spacing */
2102
+ @media (min-width: 768px) {
2103
+ gap: 1rem;
2104
+ }
2105
+
2106
+ /* Mobile: no gap, handled by collapse */
2107
+ @media (max-width: 767px) {
2108
+ padding: 1rem;
2109
+ gap: 0;
2110
+ }
2111
+ `;
2112
+ var HeaderWrapper = styled40.div`
2113
+ display: flex;
2114
+ justify-content: space-between;
2115
+ align-items: center;
2116
+
2117
+ /* Desktop: not clickable */
2118
+ @media (min-width: 768px) {
2119
+ cursor: default;
2120
+ }
2121
+
2122
+ /* Mobile: clickable */
2123
+ @media (max-width: 767px) {
2124
+ cursor: ${(props) => props.$isClickable ? "pointer" : "default"};
2125
+ padding: 0.5rem 0;
2126
+ user-select: none;
2127
+ }
2128
+ `;
2129
+ var ToggleIcon = styled40.div`
2130
+ display: none;
2131
+
2132
+ /* Only show on mobile */
2133
+ @media (max-width: 767px) {
2134
+ display: flex;
2135
+ align-items: center;
2136
+ font-size: 1.5rem;
2137
+
2138
+ color: ${(props) => {
2139
+ switch (props.variant) {
2140
+ case "primary":
2141
+ return colors.text.primary;
2142
+ case "inverse":
2143
+ return colors.text.secondary;
2144
+ case "subtle":
2145
+ return colors.text.subtle;
2146
+ default:
2147
+ return colors.text.primary;
2148
+ }
2149
+ }};
2150
+ }
2151
+ `;
2152
+ var CollapseContent = styled40.div`
2153
+ display: flex;
2154
+ flex-direction: column;
2155
+ gap: 1rem;
2156
+
2157
+ /* Desktop: always visible */
2158
+ @media (min-width: 768px) {
2159
+ display: flex;
2160
+ }
2161
+
2162
+ /* Mobile: collapsible */
2163
+ @media (max-width: 767px) {
2164
+ max-height: ${(props) => props.$isOpen ? "500px" : "0"};
2165
+ opacity: ${(props) => props.$isOpen ? "1" : "0"};
2166
+ overflow: hidden;
2167
+ transition: max-height 0.3s ease, opacity 0.3s ease;
2168
+ padding-top: ${(props) => props.$isOpen ? "1rem" : "0"};
2169
+ }
2098
2170
  `;
2099
- var InfoSection = styled39.div`
2171
+ var InfoSection = styled40.div`
2100
2172
  display: flex;
2101
2173
  flex-direction: column;
2102
2174
  gap: 0.5rem;
2103
2175
  `;
2104
- var InfoText = styled39.p`
2176
+ var InfoText = styled40.p`
2105
2177
  margin: 0;
2106
2178
  font-size: 0.875rem;
2107
2179
  line-height: 1.6;
@@ -2119,7 +2191,7 @@ var InfoText = styled39.p`
2119
2191
  }};
2120
2192
  font-weight: ${(props) => props.$bold ? 600 : 400};
2121
2193
  `;
2122
- var ButtonWrapper = styled39.div`
2194
+ var ButtonWrapper = styled40.div`
2123
2195
  margin-top: 0.5rem;
2124
2196
  `;
2125
2197
  var Address = ({
@@ -2131,6 +2203,7 @@ var Address = ({
2131
2203
  onDirectionsClick,
2132
2204
  variant = "primary"
2133
2205
  }) => {
2206
+ const [isOpen, setIsOpen] = useState(false);
2134
2207
  const handleDirectionsClick = () => {
2135
2208
  if (onDirectionsClick) {
2136
2209
  onDirectionsClick();
@@ -2169,26 +2242,38 @@ var Address = ({
2169
2242
  }
2170
2243
  };
2171
2244
  return /* @__PURE__ */ jsxs(AddressContainer, { children: [
2172
- /* @__PURE__ */ jsx(Header, { variant: "h1", color: getHeaderVariant(), children: title }),
2173
- /* @__PURE__ */ jsxs(InfoSection, { children: [
2174
- phone && /* @__PURE__ */ jsx(InfoText, { variant, children: phone }),
2175
- email && /* @__PURE__ */ jsx(InfoText, { variant, $bold: true, children: email.toUpperCase() }),
2176
- addressLines.map((line, index) => /* @__PURE__ */ jsx(InfoText, { variant, children: line }, index))
2177
- ] }),
2178
- /* @__PURE__ */ jsx(ButtonWrapper, { children: /* @__PURE__ */ jsx(
2179
- TextButton,
2245
+ /* @__PURE__ */ jsxs(
2246
+ HeaderWrapper,
2180
2247
  {
2181
- text: directionsText,
2182
- onClick: handleDirectionsClick,
2183
- bgVariant: getButtonBgVariant(),
2184
- textVariant: getButtonTextVariant(),
2185
- uppercase: true
2248
+ $isClickable: true,
2249
+ onClick: () => setIsOpen(!isOpen),
2250
+ children: [
2251
+ /* @__PURE__ */ jsx(Header, { variant: "h1", color: getHeaderVariant(), children: title }),
2252
+ /* @__PURE__ */ jsx(ToggleIcon, { variant, children: isOpen ? /* @__PURE__ */ jsx(HiMinus, {}) : /* @__PURE__ */ jsx(HiPlus, {}) })
2253
+ ]
2186
2254
  }
2187
- ) })
2255
+ ),
2256
+ /* @__PURE__ */ jsxs(CollapseContent, { $isOpen: isOpen, children: [
2257
+ /* @__PURE__ */ jsxs(InfoSection, { children: [
2258
+ phone && /* @__PURE__ */ jsx(InfoText, { variant, children: phone }),
2259
+ email && /* @__PURE__ */ jsx(InfoText, { variant, $bold: true, children: email.toUpperCase() }),
2260
+ addressLines.map((line, index) => /* @__PURE__ */ jsx(InfoText, { variant, children: line }, index))
2261
+ ] }),
2262
+ /* @__PURE__ */ jsx(ButtonWrapper, { children: /* @__PURE__ */ jsx(
2263
+ TextButton,
2264
+ {
2265
+ text: directionsText,
2266
+ onClick: handleDirectionsClick,
2267
+ bgVariant: getButtonBgVariant(),
2268
+ textVariant: getButtonTextVariant(),
2269
+ uppercase: true
2270
+ }
2271
+ ) })
2272
+ ] })
2188
2273
  ] });
2189
2274
  };
2190
2275
  Address.variants = variants9;
2191
- var CheckboxWrapper = styled39.label`
2276
+ var CheckboxWrapper = styled40.label`
2192
2277
  display: flex;
2193
2278
  align-items: center;
2194
2279
  gap: ${spaces[2]};
@@ -2196,10 +2281,10 @@ var CheckboxWrapper = styled39.label`
2196
2281
  font-size: 16px;
2197
2282
  color: ${colors.text.subtle};
2198
2283
  `;
2199
- var HiddenCheckbox2 = styled39.input.attrs({ type: "checkbox" })`
2284
+ var HiddenCheckbox2 = styled40.input.attrs({ type: "checkbox" })`
2200
2285
  display: none;
2201
2286
  `;
2202
- var StyledCheckbox2 = styled39.span`
2287
+ var StyledCheckbox2 = styled40.span`
2203
2288
  width: ${sizes.lg};
2204
2289
  height: ${sizes.lg};
2205
2290
  border: 1.5px solid ${colors.background.tertiary};
@@ -2218,11 +2303,11 @@ var CheckboxItem = ({
2218
2303
  label
2219
2304
  ] });
2220
2305
  };
2221
- var Container9 = styled39.div`
2306
+ var Container9 = styled40.div`
2222
2307
  display: flex;
2223
2308
  flex-direction: column;
2224
2309
  `;
2225
- var OptionsContainer = styled39.div`
2310
+ var OptionsContainer = styled40.div`
2226
2311
  display: flex;
2227
2312
  gap: ${spaces[4]};
2228
2313
  `;
@@ -2253,7 +2338,7 @@ var Checkbox = ({
2253
2338
  )) })
2254
2339
  ] });
2255
2340
  };
2256
- var Container10 = styled39.div`
2341
+ var Container10 = styled40.div`
2257
2342
  display: flex;
2258
2343
  flex-direction: column;
2259
2344
  gap: 1rem;
@@ -2263,8 +2348,13 @@ var Container10 = styled39.div`
2263
2348
  padding: 1.5rem;
2264
2349
  border-radius: 8px;
2265
2350
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
2351
+ flex-shrink: 0;
2352
+
2353
+ @media (max-width: 767px) {
2354
+ width: 70vw;
2355
+ }
2266
2356
  `;
2267
- var ThumbnailWrapper2 = styled39.div`
2357
+ var ThumbnailWrapper2 = styled40.div`
2268
2358
  width: 180px;
2269
2359
  height: 180px;
2270
2360
  border-radius: 50%;
@@ -2275,7 +2365,7 @@ var ThumbnailWrapper2 = styled39.div`
2275
2365
  flex-shrink: 0;
2276
2366
  align-self: center;
2277
2367
  `;
2278
- var ButtonWrapper2 = styled39.div`
2368
+ var ButtonWrapper2 = styled40.div`
2279
2369
  display: flex;
2280
2370
  justify-content: flex-start;
2281
2371
  margin-top: auto;
@@ -2305,31 +2395,57 @@ var ContentCard = ({
2305
2395
  ] });
2306
2396
  };
2307
2397
  var variants10 = ["primary", "secondary", "transparent"];
2308
- var Container11 = styled39.div`
2398
+ var Container11 = styled40.div`
2309
2399
  display: flex;
2310
2400
  flex-direction: column;
2311
2401
  gap: 1.5rem;
2312
2402
  padding: 3rem 2rem;
2313
-
2314
2403
  max-width: 500px;
2404
+
2405
+ /* Mobile adjustments */
2406
+ @media (max-width: 767px) {
2407
+ padding: 2rem 1rem;
2408
+ max-width: 100%;
2409
+ }
2315
2410
  `;
2316
- var Header2 = styled39.h1`
2411
+ var Header2 = styled40.h1`
2317
2412
  margin: 0;
2318
2413
  font-size: 2.5rem;
2319
2414
  font-weight: 700;
2320
2415
  line-height: 1.2;
2321
2416
  color: ${(props) => colors.text[props.textColor]};
2417
+
2418
+ /* Responsive font size */
2419
+ @media (max-width: 767px) {
2420
+ font-size: 2rem;
2421
+ }
2422
+
2423
+ @media (max-width: 480px) {
2424
+ font-size: 1.75rem;
2425
+ }
2322
2426
  `;
2323
- var Description3 = styled39.p`
2427
+ var Description3 = styled40.p`
2324
2428
  margin: 0;
2325
2429
  font-size: 1.125rem;
2326
2430
  line-height: 1.6;
2327
2431
  color: ${(props) => colors.text[props.textColor]};
2432
+
2433
+ /* Responsive font size */
2434
+ @media (max-width: 767px) {
2435
+ font-size: 1rem;
2436
+ }
2328
2437
  `;
2329
- var ButtonGroup = styled39.div`
2438
+ var ButtonGroup = styled40.div`
2330
2439
  display: flex;
2331
2440
  gap: 1rem;
2332
2441
  align-items: center;
2442
+
2443
+ /* Stack vertically on mobile */
2444
+ @media (max-width: 767px) {
2445
+ flex-direction: column;
2446
+ align-items: stretch;
2447
+ width: 100%;
2448
+ }
2333
2449
  `;
2334
2450
  var CTAContainer = ({
2335
2451
  header,
@@ -2374,11 +2490,11 @@ var CTAContainer = ({
2374
2490
  ] });
2375
2491
  };
2376
2492
  CTAContainer.variants = variants10;
2377
- var AccordionContainer = styled39.div`
2493
+ var AccordionContainer = styled40.div`
2378
2494
  border-bottom: 1px solid ${colors.text.light};
2379
2495
  padding: 1.5rem 0;
2380
2496
  `;
2381
- var AccordionHeader2 = styled39.button`
2497
+ var AccordionHeader2 = styled40.button`
2382
2498
  width: 100%;
2383
2499
  display: flex;
2384
2500
  align-items: center;
@@ -2389,23 +2505,23 @@ var AccordionHeader2 = styled39.button`
2389
2505
  text-align: left;
2390
2506
  padding: 0;
2391
2507
  `;
2392
- var NumberBadge = styled39.span`
2508
+ var NumberBadge = styled40.span`
2393
2509
  font-size: 1rem;
2394
2510
  font-weight: 600;
2395
2511
  color: ${(props) => colors.text[props.numberColor]};
2396
2512
  flex-shrink: 0;
2397
2513
  `;
2398
- var HeaderWrapper = styled39.div`
2514
+ var HeaderWrapper2 = styled40.div`
2399
2515
  flex-grow: 1;
2400
2516
  `;
2401
- var IconWrapper = styled39.div`
2517
+ var IconWrapper = styled40.div`
2402
2518
  color: ${(props) => colors.text[props.iconColor]};
2403
2519
  flex-shrink: 0;
2404
2520
  display: flex;
2405
2521
  align-items: center;
2406
2522
  justify-content: center;
2407
2523
  `;
2408
- var AccordionContent2 = styled39.div`
2524
+ var AccordionContent2 = styled40.div`
2409
2525
  max-height: ${(props) => props.$isOpen ? "1000px" : "0"};
2410
2526
  overflow: hidden;
2411
2527
  transition: max-height 0.3s ease-in-out;
@@ -2427,17 +2543,17 @@ var FAQAccordion = ({
2427
2543
  return /* @__PURE__ */ jsxs(AccordionContainer, { children: [
2428
2544
  /* @__PURE__ */ jsxs(AccordionHeader2, { onClick: () => setIsOpen(!isOpen), children: [
2429
2545
  /* @__PURE__ */ jsx(NumberBadge, { numberColor, children: number }),
2430
- /* @__PURE__ */ jsx(HeaderWrapper, { children: /* @__PURE__ */ jsx(Header, { variant: headerVariant, color: titleColor, children: title }) }),
2546
+ /* @__PURE__ */ jsx(HeaderWrapper2, { children: /* @__PURE__ */ jsx(Header, { variant: headerVariant, color: titleColor, children: title }) }),
2431
2547
  /* @__PURE__ */ jsx(IconWrapper, { iconColor, children: isOpen ? /* @__PURE__ */ jsx(HiMinus, { size: 24 }) : /* @__PURE__ */ jsx(HiPlus, { size: 24 }) })
2432
2548
  ] }),
2433
2549
  /* @__PURE__ */ jsx(AccordionContent2, { $isOpen: isOpen, children: /* @__PURE__ */ jsx(Description, { variant: contentVariant, children: content }) })
2434
2550
  ] });
2435
2551
  };
2436
- var Container12 = styled39.div`
2552
+ var Container12 = styled40.div`
2437
2553
  display: flex;
2438
2554
  flex-direction: column;
2439
2555
  `;
2440
- var FeatureWrapper = styled39.div`
2556
+ var FeatureWrapper = styled40.div`
2441
2557
  padding: 1rem 0;
2442
2558
  border-bottom: 1px solid #e5e7eb;
2443
2559
 
@@ -2530,7 +2646,7 @@ keyframes`
2530
2646
  from { transform: translateY(8px) scale(.98); opacity: 0 }
2531
2647
  to { transform: translateY(0) scale(1); opacity: 1 }
2532
2648
  `;
2533
- var Overlay = styled39.div`
2649
+ var Overlay = styled40.div`
2534
2650
  height: 100vh;
2535
2651
  width: 100vw;
2536
2652
  background-color: rgba(0, 0, 0, 0.4);
@@ -2542,7 +2658,7 @@ var Overlay = styled39.div`
2542
2658
  justify-content: center;
2543
2659
  animation: ${fadeIn} 160ms ease-out;
2544
2660
  `;
2545
- var ContentContainer = styled39.div`
2661
+ var ContentContainer = styled40.div`
2546
2662
  position: relative;
2547
2663
  width: min(${breakpoints.sm}, 92vw);
2548
2664
  max-height: 86vh;
@@ -2566,7 +2682,7 @@ var Modal = ({
2566
2682
  if (!visible) return /* @__PURE__ */ jsx(Fragment, {});
2567
2683
  return /* @__PURE__ */ jsx(Overlay, { contentPosition, onClick: onDismiss, children: /* @__PURE__ */ jsx(ContentContainer, { onClick: (e) => e.stopPropagation(), children }) });
2568
2684
  };
2569
- var Container13 = styled39.div`
2685
+ var Container13 = styled40.div`
2570
2686
  display: flex;
2571
2687
  align-items: center ;
2572
2688
  justify-content: space-between;
@@ -2574,7 +2690,7 @@ padding: ${spaces[2]} ${spaces[3]};
2574
2690
  background-color: ${(props) => props.isComplete ? colors.background.blue : colors.background.light};
2575
2691
  border-radius: ${radii.sm};
2576
2692
  `;
2577
- var Row = styled39.div`
2693
+ var Row = styled40.div`
2578
2694
  display: flex;
2579
2695
  align-items: center;
2580
2696
  gap: ${spaces[2]};
@@ -2588,21 +2704,21 @@ var OverviewRowItem = ({ isComplete, isMainHeader, title }) => {
2588
2704
  ] })
2589
2705
  ] });
2590
2706
  };
2591
- var Container14 = styled39.div`
2707
+ var Container14 = styled40.div`
2592
2708
  width: '100%';
2593
2709
  min-height: '100vh';
2594
2710
  padding-bottom: ${spaces[9]};
2595
2711
  `;
2596
- var HeaderContainer2 = styled39.div`
2712
+ var HeaderContainer2 = styled40.div`
2597
2713
  padding: ${spaces[4.5]} ${spaces[6]};
2598
2714
  display: flex;
2599
2715
  align-items: center;
2600
2716
  justify-content: space-between;
2601
2717
  `;
2602
- var ContentContainer2 = styled39.div`
2718
+ var ContentContainer2 = styled40.div`
2603
2719
  border-top: 1px solid ${colors.border.hover};
2604
2720
  `;
2605
- var SpinnerContainer = styled39.div`
2721
+ var SpinnerContainer = styled40.div`
2606
2722
  display: flex;
2607
2723
  width: 100%;
2608
2724
  padding: ${spaces[6]};
@@ -2625,7 +2741,7 @@ var PageLayout = ({
2625
2741
  ] });
2626
2742
  };
2627
2743
  var variants11 = ["documents", "properties"];
2628
- var Container15 = styled39.div`
2744
+ var Container15 = styled40.div`
2629
2745
  display: flex;
2630
2746
  flex-direction: column;
2631
2747
  align-items: center;
@@ -2651,7 +2767,7 @@ var EmptyState = ({ variant, message }) => {
2651
2767
  ] });
2652
2768
  };
2653
2769
  EmptyState.variants = variants11;
2654
- var Container16 = styled39.div`
2770
+ var Container16 = styled40.div`
2655
2771
  width: 100%;
2656
2772
  height: 100%;
2657
2773
  `;
@@ -2678,13 +2794,20 @@ var PDFPreviewer = ({ url }) => {
2678
2794
  }
2679
2795
  ) });
2680
2796
  };
2681
- var Container17 = styled39.div`
2797
+ var Container17 = styled40.div`
2682
2798
  display: flex;
2683
2799
  gap: 1.5rem;
2684
2800
  align-items: center;
2685
2801
  max-width: 600px;
2802
+
2803
+ /* Mobile: stack vertically */
2804
+ @media (max-width: 767px) {
2805
+ flex-direction: column;
2806
+ align-items: flex-start;
2807
+ max-width: 100%;
2808
+ }
2686
2809
  `;
2687
- var ImageWrapper = styled39.div`
2810
+ var ImageWrapper = styled40.div`
2688
2811
  flex-shrink: 0;
2689
2812
  width: 180px;
2690
2813
  height: 180px;
@@ -2696,13 +2819,24 @@ var ImageWrapper = styled39.div`
2696
2819
  height: 100%;
2697
2820
  object-fit: cover;
2698
2821
  }
2822
+
2823
+ /* Mobile: full width */
2824
+ @media (max-width: 767px) {
2825
+ width: 100%;
2826
+ height: 200px;
2827
+ }
2699
2828
  `;
2700
- var ContentWrapper = styled39.div`
2829
+ var ContentWrapper = styled40.div`
2701
2830
  display: flex;
2702
2831
  flex-direction: column;
2703
2832
  gap: 1rem;
2833
+
2834
+ /* Mobile: full width */
2835
+ @media (max-width: 767px) {
2836
+ width: 100%;
2837
+ }
2704
2838
  `;
2705
- var LogoWrapper = styled39.div`
2839
+ var LogoWrapper = styled40.div`
2706
2840
  max-width: 200px;
2707
2841
 
2708
2842
  img {
@@ -2740,15 +2874,15 @@ var ProductInfo = ({
2740
2874
  ] })
2741
2875
  ] });
2742
2876
  };
2743
- var Container18 = styled39.div``;
2744
- var OptionsContainer2 = styled39.div`
2877
+ var Container18 = styled40.div``;
2878
+ var OptionsContainer2 = styled40.div`
2745
2879
  margin-top: ${spaces[2]};
2746
2880
  display: flex;
2747
2881
  flex-direction: row;
2748
2882
  flex: 1;
2749
2883
  gap: ${spaces[2]};
2750
2884
  `;
2751
- var LabelContainer = styled39.div`
2885
+ var LabelContainer = styled40.div`
2752
2886
  padding-left: ${spaces[1]};
2753
2887
  `;
2754
2888
  var RadioGroup = ({
@@ -2773,7 +2907,7 @@ var RadioGroup = ({
2773
2907
  ] });
2774
2908
  };
2775
2909
  var variants12 = ["primary", "secondary", "subtle"];
2776
- var Overlay2 = styled39.div`
2910
+ var Overlay2 = styled40.div`
2777
2911
  position: fixed;
2778
2912
  top: 0;
2779
2913
  left: 0;
@@ -2785,7 +2919,7 @@ var Overlay2 = styled39.div`
2785
2919
  justify-content: center;
2786
2920
  z-index: 1000;
2787
2921
  `;
2788
- var ChartContainer = styled39.div`
2922
+ var ChartContainer = styled40.div`
2789
2923
  background-color: #ffffff;
2790
2924
  border-radius: 8px;
2791
2925
  padding: 2rem;
@@ -2793,13 +2927,13 @@ var ChartContainer = styled39.div`
2793
2927
  width: 90%;
2794
2928
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
2795
2929
  `;
2796
- var HeaderSection = styled39.div`
2930
+ var HeaderSection = styled40.div`
2797
2931
  display: flex;
2798
2932
  justify-content: space-between;
2799
2933
  align-items: center;
2800
2934
  margin-bottom: 1.5rem;
2801
2935
  `;
2802
- var CloseButton = styled39.button`
2936
+ var CloseButton = styled40.button`
2803
2937
  background-color: ${(props) => {
2804
2938
  switch (props.variant) {
2805
2939
  case "primary":
@@ -2827,14 +2961,14 @@ var CloseButton = styled39.button`
2827
2961
  opacity: 0.8;
2828
2962
  }
2829
2963
  `;
2830
- var Table2 = styled39.table`
2964
+ var Table2 = styled40.table`
2831
2965
  width: 100%;
2832
2966
  border-collapse: collapse;
2833
2967
  `;
2834
- var TableHeader2 = styled39.thead`
2968
+ var TableHeader2 = styled40.thead`
2835
2969
  border-bottom: 2px solid #e5e7eb;
2836
2970
  `;
2837
- var TableHeaderCell = styled39.th`
2971
+ var TableHeaderCell = styled40.th`
2838
2972
  text-align: left;
2839
2973
  padding: 0.75rem 0;
2840
2974
  font-size: 0.875rem;
@@ -2853,15 +2987,15 @@ var TableHeaderCell = styled39.th`
2853
2987
  }
2854
2988
  }};
2855
2989
  `;
2856
- var TableBody = styled39.tbody``;
2857
- var TableRow2 = styled39.tr`
2990
+ var TableBody = styled40.tbody``;
2991
+ var TableRow2 = styled40.tr`
2858
2992
  border-bottom: 1px solid #f3f4f6;
2859
2993
 
2860
2994
  &:last-child {
2861
2995
  border-bottom: none;
2862
2996
  }
2863
2997
  `;
2864
- var TableCell = styled39.td`
2998
+ var TableCell = styled40.td`
2865
2999
  padding: 0.75rem 0;
2866
3000
  font-size: 0.875rem;
2867
3001
  color: ${(props) => {
@@ -2912,27 +3046,97 @@ var RatesChart = ({
2912
3046
  ] }) });
2913
3047
  };
2914
3048
  RatesChart.variants = variants12;
2915
- var StyledNav = styled39.nav`
3049
+ var Backdrop = styled40.div`
3050
+ display: none;
3051
+
3052
+ @media (max-width: 767px) {
3053
+ display: ${(props) => props.$isOpen ? "block" : "none"};
3054
+ position: fixed;
3055
+ top: 0;
3056
+ left: 0;
3057
+ right: 0;
3058
+ bottom: 0;
3059
+ background-color: rgba(0, 0, 0, 0.5);
3060
+ z-index: 9998;
3061
+ }
3062
+ `;
3063
+ var BackToTopWrapper = styled40.div`
3064
+ @media (max-width: 767px) {
3065
+ display: none;
3066
+ }
3067
+ `;
3068
+ var StyledNav = styled40.nav`
2916
3069
  width: 195px;
2917
- background-color: #ffffff;
2918
- border-right: 1px solid #e5e7eb;
2919
3070
  display: flex;
2920
3071
  flex-direction: column;
2921
3072
  min-height: 500px;
2922
3073
  height: 100vh;
2923
3074
  padding-bottom: 15px;
3075
+
3076
+ @media (min-width: 768px) {
3077
+ position: relative;
3078
+ background-color: #ffffff;
3079
+ border-right: 1px solid #e5e7eb;
3080
+ }
3081
+
3082
+ @media (max-width: 767px) {
3083
+ position: fixed;
3084
+ top: 0;
3085
+ left: 0;
3086
+ width: 100%;
3087
+ z-index: 9999;
3088
+ background-color: ${(props) => colors.background[props.$mobileBgVariant]};
3089
+ border-right: 1px solid ${(props) => colors.border[props.$borderVariant]};
3090
+ transform: translateX(${(props) => props.$isOpen ? "0" : "-100%"});
3091
+ transition: transform 0.3s ease-in-out;
3092
+ box-shadow: ${(props) => props.$isOpen ? "2px 0 8px rgba(0, 0, 0, 0.15)" : "none"};
3093
+ }
3094
+ `;
3095
+ var CloseButton2 = styled40.button`
3096
+ background: none;
3097
+ border: none;
3098
+ font-size: 1.5rem;
3099
+ cursor: pointer;
3100
+ padding: 0.5rem;
3101
+ color: ${(props) => colors.border[props.$textVariant]};
3102
+
3103
+ &:hover {
3104
+ opacity: 0.7;
3105
+ }
2924
3106
  `;
2925
- var NavList = styled39.ul`
3107
+ var MobileHeader = styled40.div`
3108
+ display: none;
3109
+
3110
+ @media (max-width: 767px) {
3111
+ display: flex;
3112
+ justify-content: space-between;
3113
+ align-items: center;
3114
+ padding: 1rem;
3115
+ }
3116
+ `;
3117
+ var NavList = styled40.ul`
2926
3118
  display: flex;
2927
3119
  flex-direction: column;
2928
3120
  list-style: none;
2929
3121
  margin: 0;
2930
3122
  padding: 0;
2931
3123
  `;
2932
- var NavItem = styled39.li`
3124
+ var DesktopNavList = styled40(NavList)`
3125
+ @media (max-width: 767px) {
3126
+ display: none;
3127
+ }
3128
+ `;
3129
+ var MobileNavList = styled40(NavList)`
3130
+ display: none;
3131
+
3132
+ @media (max-width: 767px) {
3133
+ display: flex;
3134
+ }
3135
+ `;
3136
+ var NavItem = styled40.li`
2933
3137
  display: flex;
2934
3138
  `;
2935
- var NavLink = styled39.a`
3139
+ var NavLink = styled40.a`
2936
3140
  display: flex;
2937
3141
  align-items: center;
2938
3142
  text-decoration: none;
@@ -2945,7 +3149,7 @@ var NavLink = styled39.a`
2945
3149
  }
2946
3150
  `}
2947
3151
  `;
2948
- var ActiveTriangle = styled39.div`
3152
+ var ActiveTriangle = styled40.div`
2949
3153
  width: 0;
2950
3154
  height: 0;
2951
3155
  border-top: 4px solid transparent;
@@ -2954,25 +3158,53 @@ var ActiveTriangle = styled39.div`
2954
3158
  flex-shrink: 0;
2955
3159
  margin-left: 1.5rem;
2956
3160
  `;
2957
- var InactiveSpacer = styled39.span`
3161
+ var InactiveSpacer = styled40.span`
2958
3162
  width: 6px;
2959
3163
  margin-right: 0.5rem;
2960
3164
  flex-shrink: 0;
2961
3165
  `;
2962
- var Divider = styled39.div`
3166
+ var Divider = styled40.div`
2963
3167
  height: 1px;
2964
3168
  background-color: ${(props) => colors.border[props.dividerColor]};
2965
3169
  margin: 1rem;
2966
3170
  `;
2967
- var Spacer = styled39.div`
3171
+ var Spacer = styled40.div`
2968
3172
  flex-grow: 1;
2969
3173
  `;
3174
+ var DesktopOnlySpacer = styled40(Spacer)`
3175
+ @media (max-width: 767px) {
3176
+ display: none;
3177
+ }
3178
+ `;
3179
+ var MobileButtonsWrapper = styled40.div`
3180
+ display: none;
3181
+
3182
+ @media (max-width: 767px) {
3183
+ display: flex;
3184
+ flex-direction: row;
3185
+ gap: 0.5rem;
3186
+ padding: 0 1rem;
3187
+ margin-top: auto;
3188
+ margin-bottom: 20px;
3189
+ }
3190
+ `;
2970
3191
  var SideNav = ({
3192
+ logo,
2971
3193
  items,
2972
3194
  activeItem,
2973
3195
  onBackToTop,
3196
+ isOpen = true,
3197
+ onClose,
3198
+ mobileButtons = [],
3199
+ mobileBgVariant = "tertiary",
3200
+ borderVariant = "primary",
3201
+ closeButtonVariant = "light",
3202
+ mobileActiveTextBgVariant = "transparent",
3203
+ mobileActiveTextVariant = "light",
3204
+ mobileInactiveTextBgVariant = "transparent",
3205
+ mobileInactiveTextVariant = "light",
2974
3206
  triangleColor = "primary",
2975
- dividerColor = "primary",
3207
+ dividerColor = "light",
2976
3208
  activeTextBgVariant = "transparent",
2977
3209
  activeTextVariant = "brand",
2978
3210
  inactiveTextBgVariant = "transparent",
@@ -2980,40 +3212,71 @@ var SideNav = ({
2980
3212
  backToTopBgVariant = "transparent",
2981
3213
  backToTopTextVariant = "subtle"
2982
3214
  }) => {
2983
- return /* @__PURE__ */ jsxs(StyledNav, { children: [
2984
- /* @__PURE__ */ jsx(Spacer, {}),
2985
- /* @__PURE__ */ jsx(NavList, { children: items.map((item) => {
2986
- const isActive = activeItem === item.href;
2987
- return /* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs(NavLink, { href: item.href, $isActive: isActive, children: [
2988
- isActive ? /* @__PURE__ */ jsx(ActiveTriangle, { triangleColor }) : /* @__PURE__ */ jsx(InactiveSpacer, {}),
2989
- /* @__PURE__ */ jsx(
2990
- TextButton,
2991
- {
2992
- asChild: true,
2993
- text: item.label,
2994
- bgVariant: isActive ? activeTextBgVariant : inactiveTextBgVariant,
2995
- textVariant: isActive ? activeTextVariant : inactiveTextVariant,
2996
- uppercase: false,
2997
- bold: isActive
2998
- }
2999
- )
3000
- ] }) }, item.href);
3001
- }) }),
3002
- /* @__PURE__ */ jsx(Divider, { dividerColor }),
3003
- /* @__PURE__ */ jsx(Spacer, {}),
3004
- /* @__PURE__ */ jsx(
3005
- TextButton,
3215
+ const renderNavItems = (isMobile) => items.map((item) => {
3216
+ const isActive = activeItem === item.href;
3217
+ return /* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs(NavLink, { href: item.href, $isActive: isActive, children: [
3218
+ isActive ? /* @__PURE__ */ jsx(ActiveTriangle, { triangleColor }) : /* @__PURE__ */ jsx(InactiveSpacer, {}),
3219
+ /* @__PURE__ */ jsx(
3220
+ TextButton,
3221
+ {
3222
+ asChild: true,
3223
+ text: item.label,
3224
+ bgVariant: isActive ? isMobile && mobileActiveTextBgVariant ? mobileActiveTextBgVariant : activeTextBgVariant : isMobile && mobileInactiveTextBgVariant ? mobileInactiveTextBgVariant : inactiveTextBgVariant,
3225
+ textVariant: isActive ? isMobile && mobileActiveTextVariant ? mobileActiveTextVariant : activeTextVariant : isMobile && mobileInactiveTextVariant ? mobileInactiveTextVariant : inactiveTextVariant,
3226
+ uppercase: false,
3227
+ bold: isActive
3228
+ }
3229
+ )
3230
+ ] }) }, item.href);
3231
+ });
3232
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
3233
+ /* @__PURE__ */ jsx(Backdrop, { $isOpen: isOpen, onClick: onClose }),
3234
+ /* @__PURE__ */ jsxs(
3235
+ StyledNav,
3006
3236
  {
3007
- text: "Back to top",
3008
- onClick: onBackToTop,
3009
- bgVariant: backToTopBgVariant,
3010
- textVariant: backToTopTextVariant,
3011
- uppercase: false
3237
+ $isOpen: isOpen,
3238
+ $mobileBgVariant: mobileBgVariant,
3239
+ $borderVariant: borderVariant,
3240
+ children: [
3241
+ /* @__PURE__ */ jsxs(MobileHeader, { children: [
3242
+ logo,
3243
+ /* @__PURE__ */ jsx(CloseButton2, { onClick: onClose, "aria-label": "Close menu", $textVariant: closeButtonVariant, children: "\u2715" })
3244
+ ] }),
3245
+ /* @__PURE__ */ jsx(DesktopOnlySpacer, {}),
3246
+ /* @__PURE__ */ jsx(DesktopNavList, { children: renderNavItems(false) }),
3247
+ /* @__PURE__ */ jsx(MobileNavList, { children: renderNavItems(true) }),
3248
+ /* @__PURE__ */ jsx(Divider, { dividerColor }),
3249
+ /* @__PURE__ */ jsx(Spacer, {}),
3250
+ mobileButtons.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
3251
+ /* @__PURE__ */ jsx(Divider, { dividerColor }),
3252
+ /* @__PURE__ */ jsx(MobileButtonsWrapper, { children: mobileButtons.map((button, index) => /* @__PURE__ */ jsx(
3253
+ ExtendedButton,
3254
+ {
3255
+ text: button.text,
3256
+ onClick: button.onClick,
3257
+ textBgVariant: button.bgVariant || "transparent",
3258
+ textVariant: button.textVariant || "subtle",
3259
+ arrowVariant: button.arrowButton || "blue"
3260
+ },
3261
+ index
3262
+ )) })
3263
+ ] }),
3264
+ /* @__PURE__ */ jsx(BackToTopWrapper, { children: /* @__PURE__ */ jsx(
3265
+ TextButton,
3266
+ {
3267
+ text: "Back to top",
3268
+ onClick: onBackToTop,
3269
+ bgVariant: backToTopBgVariant,
3270
+ textVariant: backToTopTextVariant,
3271
+ uppercase: false
3272
+ }
3273
+ ) })
3274
+ ]
3012
3275
  }
3013
3276
  )
3014
3277
  ] });
3015
3278
  };
3016
- var Overlay3 = styled39.div`
3279
+ var Overlay3 = styled40.div`
3017
3280
  position: fixed;
3018
3281
  top: 0;
3019
3282
  left: 0;
@@ -3024,7 +3287,7 @@ var Overlay3 = styled39.div`
3024
3287
  justify-content: flex-end;
3025
3288
  z-index: 1000;
3026
3289
  `;
3027
- var PanelContainer = styled39.div`
3290
+ var PanelContainer = styled40.div`
3028
3291
  background-color: #ffffff;
3029
3292
  width: 100%;
3030
3293
  max-width: 400px;
@@ -3038,7 +3301,7 @@ var PanelContainer = styled39.div`
3038
3301
  transition: transform 0.3s ease-in-out;
3039
3302
  overflow-y: auto;
3040
3303
  `;
3041
- var CloseButton2 = styled39.button`
3304
+ var CloseButton3 = styled40.button`
3042
3305
  position: absolute;
3043
3306
  top: 1.5rem;
3044
3307
  right: 1.5rem;
@@ -3059,7 +3322,7 @@ var CloseButton2 = styled39.button`
3059
3322
  opacity: 0.8;
3060
3323
  }
3061
3324
  `;
3062
- var IconWrapper2 = styled39.div`
3325
+ var IconWrapper2 = styled40.div`
3063
3326
  width: 100%;
3064
3327
  display: flex;
3065
3328
  justify-content: center;
@@ -3076,7 +3339,7 @@ var IconWrapper2 = styled39.div`
3076
3339
  object-fit: contain;
3077
3340
  }
3078
3341
  `;
3079
- var ContentWrapper2 = styled39.div`
3342
+ var ContentWrapper2 = styled40.div`
3080
3343
  display: flex;
3081
3344
  flex-direction: column;
3082
3345
  gap: 1.5rem;
@@ -3097,7 +3360,7 @@ var SidePanel = ({
3097
3360
  buttonTextVariant = "secondary"
3098
3361
  }) => {
3099
3362
  return /* @__PURE__ */ jsx(Overlay3, { $isOpen: isOpen, onClick: onClose, children: /* @__PURE__ */ jsxs(PanelContainer, { $isOpen: isOpen, onClick: (e) => e.stopPropagation(), children: [
3100
- /* @__PURE__ */ jsx(CloseButton2, { onClick: onClose, closeButtonBgColor, children: /* @__PURE__ */ jsx(HiX, { size: 24 }) }),
3363
+ /* @__PURE__ */ jsx(CloseButton3, { onClick: onClose, closeButtonBgColor, children: /* @__PURE__ */ jsx(HiX, { size: 24 }) }),
3101
3364
  /* @__PURE__ */ jsx(IconWrapper2, { children: icon }),
3102
3365
  /* @__PURE__ */ jsxs(ContentWrapper2, { children: [
3103
3366
  /* @__PURE__ */ jsx(Header, { variant: "h2", color: titleColor, children: title }),
@@ -3115,7 +3378,7 @@ var SidePanel = ({
3115
3378
  ] })
3116
3379
  ] }) });
3117
3380
  };
3118
- var Container19 = styled39.div`
3381
+ var Container19 = styled40.div`
3119
3382
  width: 100%;
3120
3383
  background-color: ${(props) => props.isSelected ? colors.background.blue : colors.background.primary};
3121
3384
  border: 1px solid ${colors.background.blue};
@@ -3126,7 +3389,7 @@ var Container19 = styled39.div`
3126
3389
  padding: ${spaces[2]} ${spaces[3]};
3127
3390
  cursor: pointer;
3128
3391
  `;
3129
- var StyledLabel2 = styled39.span`
3392
+ var StyledLabel2 = styled40.span`
3130
3393
  color: ${(props) => props.isSelected ? colors.text.secondary : colors.text.blue};
3131
3394
  font-size: ${sizes.sm};
3132
3395
  font-weight: 700;
@@ -3155,21 +3418,31 @@ var Textarea2 = ({ label, error, ...rest }) => {
3155
3418
  /* @__PURE__ */ jsx(Textarea, { ...rest })
3156
3419
  ] });
3157
3420
  };
3158
- var Container20 = styled39.div`
3421
+ var Container20 = styled40.div`
3159
3422
  display: flex;
3160
3423
  flex-direction: column;
3161
3424
  gap: ${spaces[4]};
3425
+ width: 100%;
3426
+
3162
3427
  @media (max-width: ${breakpoints.sm}) {
3163
3428
  gap: ${spaces[2]};
3164
3429
  }
3165
3430
  `;
3166
- var NameContainer = styled39.div`
3431
+ var NameContainer = styled40.div`
3167
3432
  display: flex;
3168
3433
  gap: ${spaces[4]};
3434
+ flex: 1;
3435
+ min-width: 0;
3436
+
3169
3437
  @media (max-width: ${breakpoints.sm}) {
3438
+ flex-direction: column;
3170
3439
  gap: ${spaces[2]};
3171
3440
  }
3172
- flex: 1;
3441
+
3442
+ & > * {
3443
+ flex: 1;
3444
+ min-width: 0;
3445
+ }
3173
3446
  `;
3174
3447
  var ContactForm = ({}) => {
3175
3448
  return /* @__PURE__ */ jsxs(Container20, { children: [
@@ -3208,7 +3481,7 @@ var ContactForm = ({}) => {
3208
3481
  )
3209
3482
  ] });
3210
3483
  };
3211
- var Container21 = styled39.div`
3484
+ var Container21 = styled40.div`
3212
3485
  display: flex;
3213
3486
  width: ${`${100 / 4}%`};
3214
3487
  overflow: scroll;
@@ -3225,7 +3498,7 @@ var Container21 = styled39.div`
3225
3498
  -ms-overflow-style: none;
3226
3499
  scrollbar-width: none;
3227
3500
  `;
3228
- var IconContainer = styled39.div`
3501
+ var IconContainer = styled40.div`
3229
3502
  display: flex;
3230
3503
  flex-direction: column;
3231
3504
  align-items: center;
@@ -3243,7 +3516,7 @@ var DocumentAccordionHeader = ({
3243
3516
  ] })
3244
3517
  ] });
3245
3518
  };
3246
- var ItemContainer = styled39.div`
3519
+ var ItemContainer = styled40.div`
3247
3520
  display: flex;
3248
3521
  align-items: center;
3249
3522
  cursor: ${(props) => props?.onClick ? "pointer" : "auto"};
@@ -3286,14 +3559,14 @@ var DocumentAccordionRow = ({
3286
3559
  /* @__PURE__ */ jsx(ItemContainer, { onClick: onViewDetail, children: /* @__PURE__ */ jsx(Label, { value: "View Details", color: "brand", fontWeight: "700" }) })
3287
3560
  ] });
3288
3561
  };
3289
- var HeadersContainer = styled39.div`
3562
+ var HeadersContainer = styled40.div`
3290
3563
  width: 100%;
3291
3564
  display: flex;
3292
3565
  flex-direction: row;
3293
3566
  align-items: center;
3294
3567
  gap: ${spaces[6]};
3295
3568
  `;
3296
- var Container22 = styled39.div`
3569
+ var Container22 = styled40.div`
3297
3570
  display: flex;
3298
3571
  flex-direction: column;
3299
3572
  gap: ${spaces[3]};
@@ -3371,33 +3644,61 @@ var DocumentListAccordion = ({
3371
3644
  }
3372
3645
  );
3373
3646
  };
3374
- var CarouselContainer = styled39.div`
3375
- width: 1000px;
3647
+ var CarouselContainer = styled40.div`
3648
+ width: 100%;
3376
3649
  overflow: hidden;
3377
3650
  position: relative;
3378
- margin: 0 auto;
3379
3651
  `;
3380
- var CardsWrapper = styled39.div`
3652
+ var CardsWrapper = styled40.div`
3381
3653
  display: flex;
3382
3654
  gap: 1.5rem;
3383
- overflow-x: hidden;
3384
- scroll-behavior: smooth;
3385
3655
  padding: 1rem 0;
3656
+
3657
+ /* Desktop: controlled by JS */
3658
+ @media (min-width: 768px) {
3659
+ overflow-x: hidden;
3660
+ }
3661
+
3662
+ /* Mobile: native scroll with snap */
3663
+ @media (max-width: 767px) {
3664
+ overflow-x: auto;
3665
+ scroll-snap-type: x mandatory;
3666
+ -webkit-overflow-scrolling: touch;
3667
+ scrollbar-width: none;
3668
+
3669
+ &::-webkit-scrollbar {
3670
+ display: none;
3671
+ }
3672
+ }
3386
3673
  `;
3387
- var CardContainer = styled39.div`
3674
+ var CardContainer = styled40.div`
3388
3675
  display: flex;
3389
3676
  gap: 1.5rem;
3390
- transform: translateX(${(props) => props.$translateX}px);
3391
- transition: transform 0.3s ease-in-out;
3677
+
3678
+ /* Desktop: transform animation */
3679
+ @media (min-width: 768px) {
3680
+ transform: translateX(${(props) => props.$translateX}px);
3681
+ transition: transform 0.3s ease-in-out;
3682
+ }
3683
+
3684
+ /* Mobile: natural flow */
3685
+ @media (max-width: 767px) {
3686
+ transform: none;
3687
+
3688
+ & > * {
3689
+ scroll-snap-align: center;
3690
+ flex-shrink: 0;
3691
+ }
3692
+ }
3392
3693
  `;
3393
- var NavigationWrapper = styled39.div`
3694
+ var NavigationWrapper = styled40.div`
3394
3695
  display: flex;
3395
3696
  justify-content: left;
3396
3697
  align-items: center;
3397
3698
  gap: 1rem;
3398
3699
  margin-top: 1.5rem;
3399
3700
  `;
3400
- var NavButton = styled39.button`
3701
+ var NavButton = styled40.button`
3401
3702
  width: 2.5rem;
3402
3703
  height: 2.5rem;
3403
3704
  border-radius: 50%;
@@ -3410,15 +3711,19 @@ var NavButton = styled39.button`
3410
3711
  justify-content: center;
3411
3712
  transition: all 0.2s;
3412
3713
 
3714
+ @media (max-width: 767px) {
3715
+ display: none;
3716
+ }
3717
+
3413
3718
  &:hover {
3414
3719
  opacity: ${(props) => props.$disabled ? 1 : 0.8};
3415
3720
  }
3416
3721
  `;
3417
- var Indicators = styled39.div`
3722
+ var Indicators = styled40.div`
3418
3723
  display: flex;
3419
3724
  gap: 0.5rem;
3420
3725
  `;
3421
- var Indicator = styled39.div`
3726
+ var Indicator = styled40.div`
3422
3727
  width: 0.5rem;
3423
3728
  height: 0.5rem;
3424
3729
  border-radius: 50%;
@@ -3435,64 +3740,104 @@ var FeatureCarousel = ({
3435
3740
  indicatorColor = "brand"
3436
3741
  }) => {
3437
3742
  const [currentIndex, setCurrentIndex] = useState(0);
3438
- const cardWidth = 284;
3743
+ const [cardsToShow, setCardsToShow] = useState(3);
3744
+ const [cardWidth, setCardWidth] = useState(284);
3745
+ const containerRef = useRef(null);
3746
+ const touchStartX = useRef(0);
3747
+ const touchEndX = useRef(0);
3439
3748
  const gap = 24;
3440
- const cardsToShow = 3;
3749
+ useEffect(() => {
3750
+ const observer = new ResizeObserver((entries) => {
3751
+ const entry = entries[0];
3752
+ if (!entry) return;
3753
+ const containerWidth = entry.contentRect.width;
3754
+ const count = Math.floor((containerWidth + gap) / (284 + gap));
3755
+ const clamped = Math.max(1, count);
3756
+ if (clamped === 1) {
3757
+ setCardWidth(containerWidth);
3758
+ } else {
3759
+ setCardWidth(284);
3760
+ }
3761
+ setCardsToShow(clamped);
3762
+ });
3763
+ if (containerRef.current) observer.observe(containerRef.current);
3764
+ return () => observer.disconnect();
3765
+ }, []);
3766
+ const needsCarousel = cards.length > cardsToShow;
3441
3767
  const maxIndex = Math.max(0, cards.length - cardsToShow);
3442
- const handlePrev = () => {
3443
- setCurrentIndex((prev) => Math.max(0, prev - 1));
3768
+ const translateX = -currentIndex * (cardsToShow === 1 ? cardWidth : cardWidth + gap);
3769
+ const handlePrev = () => setCurrentIndex((prev) => Math.max(0, prev - 1));
3770
+ const handleNext = () => setCurrentIndex((prev) => Math.min(maxIndex, prev + 1));
3771
+ const handleTouchStart = (e) => {
3772
+ if (!e.touches[0]) return;
3773
+ touchStartX.current = e.touches[0].clientX;
3444
3774
  };
3445
- const handleNext = () => {
3446
- setCurrentIndex((prev) => Math.min(maxIndex, prev + 1));
3775
+ const handleTouchEnd = (e) => {
3776
+ if (!e.changedTouches[0]) return;
3777
+ touchEndX.current = e.changedTouches[0].clientX;
3778
+ const diff = touchStartX.current - touchEndX.current;
3779
+ if (Math.abs(diff) < 50) return;
3780
+ if (diff > 0) {
3781
+ handleNext();
3782
+ } else {
3783
+ handlePrev();
3784
+ }
3447
3785
  };
3448
- const translateX = -currentIndex * (cardWidth + gap);
3449
- return /* @__PURE__ */ jsxs(CarouselContainer, { children: [
3450
- /* @__PURE__ */ jsx(CardsWrapper, { children: /* @__PURE__ */ jsx(CardContainer, { $translateX: translateX, children: cards.map((card, index) => /* @__PURE__ */ jsx(
3451
- ContentCard,
3452
- {
3453
- thumbnail: card.thumbnail,
3454
- title: card.title,
3455
- description: card.description,
3456
- onArrowClick: card.onArrowClick,
3457
- titleColor: cardTitleColor,
3458
- descriptionVariant: cardDescriptionVariant,
3459
- arrowVariant: cardArrowVariant,
3460
- thumbnailBgColor: cardThumbnailBgColor
3461
- },
3462
- index
3463
- )) }) }),
3464
- /* @__PURE__ */ jsxs(NavigationWrapper, { children: [
3465
- /* @__PURE__ */ jsx(
3466
- NavButton,
3467
- {
3468
- onClick: handlePrev,
3469
- $disabled: currentIndex === 0,
3470
- navColor: navButtonColor,
3471
- children: /* @__PURE__ */ jsx(HiArrowLeft, { size: 24 })
3472
- }
3473
- ),
3474
- /* @__PURE__ */ jsx(Indicators, { children: Array.from({ length: maxIndex + 1 }).map((_, index) => /* @__PURE__ */ jsx(
3475
- Indicator,
3476
- {
3477
- $active: index === currentIndex,
3478
- indicatorColor
3479
- },
3480
- index
3481
- )) }),
3482
- /* @__PURE__ */ jsx(
3483
- NavButton,
3484
- {
3485
- onClick: handleNext,
3486
- $disabled: currentIndex === maxIndex,
3487
- navColor: navButtonColor,
3488
- children: /* @__PURE__ */ jsx(HiArrowRight, { size: 24 })
3489
- }
3490
- )
3491
- ] })
3492
- ] });
3786
+ return /* @__PURE__ */ jsxs(
3787
+ CarouselContainer,
3788
+ {
3789
+ ref: containerRef,
3790
+ onTouchStart: handleTouchStart,
3791
+ onTouchEnd: handleTouchEnd,
3792
+ children: [
3793
+ /* @__PURE__ */ jsx(CardsWrapper, { children: /* @__PURE__ */ jsx(CardContainer, { $translateX: needsCarousel ? translateX : 0, children: cards.map((card, index) => /* @__PURE__ */ jsx(
3794
+ ContentCard,
3795
+ {
3796
+ thumbnail: card.thumbnail,
3797
+ title: card.title,
3798
+ description: card.description,
3799
+ onArrowClick: card.onArrowClick,
3800
+ titleColor: cardTitleColor,
3801
+ descriptionVariant: cardDescriptionVariant,
3802
+ arrowVariant: cardArrowVariant,
3803
+ thumbnailBgColor: cardThumbnailBgColor
3804
+ },
3805
+ index
3806
+ )) }) }),
3807
+ needsCarousel && /* @__PURE__ */ jsxs(NavigationWrapper, { children: [
3808
+ /* @__PURE__ */ jsx(
3809
+ NavButton,
3810
+ {
3811
+ onClick: handlePrev,
3812
+ $disabled: currentIndex === 0,
3813
+ navColor: navButtonColor,
3814
+ children: /* @__PURE__ */ jsx(HiArrowLeft, { size: 24 })
3815
+ }
3816
+ ),
3817
+ /* @__PURE__ */ jsx(Indicators, { children: Array.from({ length: maxIndex + 1 }).map((_, index) => /* @__PURE__ */ jsx(
3818
+ Indicator,
3819
+ {
3820
+ $active: index === currentIndex,
3821
+ indicatorColor
3822
+ },
3823
+ index
3824
+ )) }),
3825
+ /* @__PURE__ */ jsx(
3826
+ NavButton,
3827
+ {
3828
+ onClick: handleNext,
3829
+ $disabled: currentIndex === maxIndex,
3830
+ navColor: navButtonColor,
3831
+ children: /* @__PURE__ */ jsx(HiArrowRight, { size: 24 })
3832
+ }
3833
+ )
3834
+ ] })
3835
+ ]
3836
+ }
3837
+ );
3493
3838
  };
3494
3839
  var variants13 = ["primary", "secondary"];
3495
- var FooterContainer = styled39.footer`
3840
+ var FooterContainer = styled40.footer`
3496
3841
  background-color: ${(props) => {
3497
3842
  switch (props.variant) {
3498
3843
  case "primary":
@@ -3506,7 +3851,7 @@ var FooterContainer = styled39.footer`
3506
3851
  padding: 3rem 2rem 2rem;
3507
3852
  color: #ffffff;
3508
3853
  `;
3509
- var TopSection = styled39.div`
3854
+ var TopSection = styled40.div`
3510
3855
  display: flex;
3511
3856
  justify-content: space-between;
3512
3857
  align-items: center;
@@ -3520,18 +3865,18 @@ var TopSection = styled39.div`
3520
3865
  align-items: flex-start;
3521
3866
  }
3522
3867
  `;
3523
- var LogoWrapper2 = styled39.div`
3868
+ var LogoWrapper2 = styled40.div`
3524
3869
  img {
3525
3870
  height: 100px;
3526
3871
  width: auto;
3527
3872
  }
3528
3873
  `;
3529
- var ButtonGroup2 = styled39.div`
3874
+ var ButtonGroup2 = styled40.div`
3530
3875
  display: flex;
3531
3876
  gap: 1rem;
3532
3877
  align-items: center;
3533
3878
  `;
3534
- var MiddleSection = styled39.div`
3879
+ var MiddleSection = styled40.div`
3535
3880
  display: grid;
3536
3881
  grid-template-columns: 1fr 1fr auto;
3537
3882
  gap: 3rem;
@@ -3546,12 +3891,12 @@ var MiddleSection = styled39.div`
3546
3891
  grid-template-columns: 1fr;
3547
3892
  }
3548
3893
  `;
3549
- var SocialButtonGroup = styled39.div`
3894
+ var SocialButtonGroup = styled40.div`
3550
3895
  display: flex;
3551
3896
  gap: 1rem;
3552
3897
  flex-wrap: wrap;
3553
3898
  `;
3554
- var BottomSection = styled39.div`
3899
+ var BottomSection = styled40.div`
3555
3900
  display: flex;
3556
3901
  justify-content: space-between;
3557
3902
  align-items: center;
@@ -3564,7 +3909,7 @@ var BottomSection = styled39.div`
3564
3909
  align-items: flex-start;
3565
3910
  }
3566
3911
  `;
3567
- var LegalLinks = styled39.div`
3912
+ var LegalLinks = styled40.div`
3568
3913
  display: flex;
3569
3914
  gap: 2rem;
3570
3915
 
@@ -3573,7 +3918,7 @@ var LegalLinks = styled39.div`
3573
3918
  gap: 0.5rem;
3574
3919
  }
3575
3920
  `;
3576
- var LegalLink = styled39.a`
3921
+ var LegalLink = styled40.a`
3577
3922
  color: #ffffff;
3578
3923
  text-decoration: none;
3579
3924
  font-size: 0.875rem;
@@ -3585,7 +3930,7 @@ var LegalLink = styled39.a`
3585
3930
  opacity: 0.8;
3586
3931
  }
3587
3932
  `;
3588
- var Copyright = styled39.p`
3933
+ var Copyright = styled40.p`
3589
3934
  margin: 0;
3590
3935
  font-size: 0.875rem;
3591
3936
  color: rgba(255, 255, 255, 0.8);
@@ -3663,14 +4008,15 @@ var Footer = ({
3663
4008
  ] });
3664
4009
  };
3665
4010
  Footer.variants = variants13;
3666
- var HeaderContainer3 = styled39.header`
4011
+ var HeaderContainer3 = styled40.header`
3667
4012
  display: flex;
3668
4013
  justify-content: space-between;
3669
4014
  align-items: center;
3670
4015
  background-color: #ffffff;
3671
4016
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
4017
+ padding: 0 1rem;
3672
4018
  `;
3673
- var LogoWrapper3 = styled39.div`
4019
+ var LogoWrapper3 = styled40.div`
3674
4020
  display: flex;
3675
4021
  align-items: center;
3676
4022
 
@@ -3679,10 +4025,57 @@ var LogoWrapper3 = styled39.div`
3679
4025
  width: auto;
3680
4026
  }
3681
4027
  `;
3682
- var ButtonGroup3 = styled39.div`
4028
+ var ButtonGroup3 = styled40.div`
3683
4029
  display: flex;
3684
4030
  gap: 1rem;
3685
4031
  align-items: center;
4032
+
4033
+ /* Hide on mobile */
4034
+ @media (max-width: 767px) {
4035
+ display: none;
4036
+ }
4037
+ `;
4038
+ var BurgerButton = styled40.button`
4039
+ display: none;
4040
+
4041
+ /* Show only on mobile */
4042
+ @media (max-width: 767px) {
4043
+ display: flex;
4044
+ flex-direction: column;
4045
+ justify-content: space-around;
4046
+ width: 2rem;
4047
+ height: 2rem;
4048
+ background: transparent;
4049
+ border: none;
4050
+ cursor: pointer;
4051
+ padding: 0;
4052
+
4053
+ &:focus {
4054
+ outline: none;
4055
+ }
4056
+ }
4057
+ `;
4058
+ var BurgerLine = styled40.div`
4059
+ width: 2rem;
4060
+ height: 0.25rem;
4061
+ background-color: ${(props) => colors.border[props.$burgerVariant]};
4062
+ border-radius: 10px;
4063
+ transition: all 0.3s linear;
4064
+ position: relative;
4065
+ transform-origin: 1px;
4066
+
4067
+ &:first-child {
4068
+ transform: ${({ $isOpen }) => $isOpen ? "rotate(45deg)" : "rotate(0)"};
4069
+ }
4070
+
4071
+ &:nth-child(2) {
4072
+ opacity: ${({ $isOpen }) => $isOpen ? "0" : "1"};
4073
+ transform: ${({ $isOpen }) => $isOpen ? "translateX(20px)" : "translateX(0)"};
4074
+ }
4075
+
4076
+ &:nth-child(3) {
4077
+ transform: ${({ $isOpen }) => $isOpen ? "rotate(-45deg)" : "rotate(0)"};
4078
+ }
3686
4079
  `;
3687
4080
  var Header3 = ({
3688
4081
  logo,
@@ -3690,6 +4083,9 @@ var Header3 = ({
3690
4083
  secondaryButtonText,
3691
4084
  onPrimaryClick,
3692
4085
  onSecondaryClick,
4086
+ isMobileMenuOpen = false,
4087
+ onMobileMenuToggle,
4088
+ burgerVariant = "primary",
3693
4089
  primaryArrowVariant = "blue",
3694
4090
  primaryTextBgVariant = "brand",
3695
4091
  primaryTextVariant = "secondary",
@@ -3719,15 +4115,20 @@ var Header3 = ({
3719
4115
  uppercase: true
3720
4116
  }
3721
4117
  )
4118
+ ] }),
4119
+ /* @__PURE__ */ jsxs(BurgerButton, { onClick: onMobileMenuToggle, $burgerVariant: burgerVariant, children: [
4120
+ /* @__PURE__ */ jsx(BurgerLine, { $isOpen: isMobileMenuOpen, $burgerVariant: burgerVariant }),
4121
+ /* @__PURE__ */ jsx(BurgerLine, { $isOpen: isMobileMenuOpen, $burgerVariant: burgerVariant }),
4122
+ /* @__PURE__ */ jsx(BurgerLine, { $isOpen: isMobileMenuOpen, $burgerVariant: burgerVariant })
3722
4123
  ] })
3723
4124
  ] });
3724
4125
  };
3725
- var Container23 = styled39.div`
4126
+ var Container23 = styled40.div`
3726
4127
  display: flex;
3727
4128
  flex-direction: column;
3728
4129
  gap: ${spaces[2]};
3729
4130
  `;
3730
- styled39.div`
4131
+ styled40.div`
3731
4132
  display: flex;
3732
4133
  flex-direction: column;
3733
4134
  gap: ${spaces[2]};
@@ -3769,21 +4170,20 @@ var ToastProvider = ({ children }) => {
3769
4170
  var VersionLabel = ({ versionNumber }) => {
3770
4171
  return /* @__PURE__ */ jsx(Label, { value: `V${versionNumber}` });
3771
4172
  };
3772
- var AboutUsContainer = styled39.section`
4173
+ var AboutUsContainer = styled40.section`
3773
4174
  display: grid;
3774
4175
  grid-template-columns: 35% 65%;
3775
4176
  gap: 3rem;
3776
4177
  padding: 4rem 2rem;
3777
- max-width: 1200px;
3778
4178
  margin: 0 auto;
3779
4179
  align-items: start;
3780
- background-color: ${colors.background?.light};
4180
+ background-color: ${colors.background?.secondary};
3781
4181
 
3782
4182
  @media (max-width: 768px) {
3783
4183
  grid-template-columns: 1fr;
3784
4184
  }
3785
4185
  `;
3786
- var ImageWrapper2 = styled39.div`
4186
+ var ImageWrapper2 = styled40.div`
3787
4187
  width: 100%;
3788
4188
  aspect-ratio: 3 / 4;
3789
4189
  border-radius: 8px;
@@ -3796,11 +4196,12 @@ var ImageWrapper2 = styled39.div`
3796
4196
  object-fit: cover;
3797
4197
  }
3798
4198
  `;
3799
- var ContentWrapper3 = styled39.div`
4199
+ var ContentWrapper3 = styled40.div`
3800
4200
  display: flex;
3801
4201
  flex-direction: column;
3802
4202
  gap: 1.5rem;
3803
4203
  align-items: flex-start;
4204
+ padding: 1rem 4rem 1rem 1rem;
3804
4205
  `;
3805
4206
  var AboutUs = ({
3806
4207
  image,
@@ -3835,15 +4236,20 @@ var AboutUs = ({
3835
4236
  ] })
3836
4237
  ] });
3837
4238
  };
3838
- var ContactSection = styled39.section`
4239
+ var ContactSection = styled40.section`
3839
4240
  display: flex;
3840
4241
  justify-content: center;
3841
4242
  align-items: center;
3842
4243
  padding: 4rem 2rem;
3843
4244
  min-height: 100vh;
3844
- background-color: ${colors.background?.light};
4245
+ background-color: ${colors.background?.secondary};
4246
+
4247
+ /* Mobile adjustments */
4248
+ @media (max-width: 767px) {
4249
+ padding: 2rem 1rem;
4250
+ }
3845
4251
  `;
3846
- var ContentWrapper4 = styled39.div`
4252
+ var ContentWrapper4 = styled40.div`
3847
4253
  display: grid;
3848
4254
  grid-template-columns: 1fr 1fr;
3849
4255
  gap: 0;
@@ -3855,7 +4261,7 @@ var ContentWrapper4 = styled39.div`
3855
4261
  grid-template-columns: 1fr;
3856
4262
  }
3857
4263
  `;
3858
- var ImageWrapper3 = styled39.div`
4264
+ var ImageWrapper3 = styled40.div`
3859
4265
  width: 100%;
3860
4266
  height: 100%;
3861
4267
  min-height: 600px;
@@ -3867,25 +4273,36 @@ var ImageWrapper3 = styled39.div`
3867
4273
  display: block;
3868
4274
  }
3869
4275
 
3870
- @media (max-width: 768px) {
3871
- min-height: 400px;
4276
+ /* Hide on mobile */
4277
+ @media (max-width: 767px) {
4278
+ display: none;
3872
4279
  }
3873
4280
  `;
3874
- var FormContainer2 = styled39.div`
4281
+ var FormContainer2 = styled40.div`
3875
4282
  display: flex;
3876
4283
  flex-direction: column;
3877
4284
  gap: 2rem;
3878
4285
  padding: 4rem 3rem;
3879
4286
  background-color: #ffffff;
4287
+
4288
+ /* Mobile adjustments */
4289
+ @media (max-width: 767px) {
4290
+ padding: 2rem 1.5rem;
4291
+ }
3880
4292
  `;
3881
- var FormWrapper = styled39.div`
4293
+ var FormWrapper = styled40.div`
3882
4294
  display: flex;
3883
4295
  flex-direction: column;
3884
4296
  gap: 2rem;
3885
4297
  `;
3886
- var ButtonWrapper3 = styled39.div`
4298
+ var ButtonWrapper3 = styled40.div`
3887
4299
  display: flex;
3888
4300
  justify-content: flex-start;
4301
+
4302
+ /* Mobile: full width button */
4303
+ @media (max-width: 767px) {
4304
+ width: 100%;
4305
+ }
3889
4306
  `;
3890
4307
  var Contact = ({
3891
4308
  image,
@@ -3898,7 +4315,7 @@ var Contact = ({
3898
4315
  termsVariant = "primary",
3899
4316
  buttonArrowVariant = "teal",
3900
4317
  buttonTextBgVariant = "brand",
3901
- buttonTextVariant = "secondary"
4318
+ buttonTextVariant = "primary"
3902
4319
  }) => {
3903
4320
  return /* @__PURE__ */ jsx(ContactSection, { children: /* @__PURE__ */ jsxs(ContentWrapper4, { children: [
3904
4321
  /* @__PURE__ */ jsx(ImageWrapper3, { children: /* @__PURE__ */ jsx("img", { src: image, alt: "Contact" }) }),
@@ -3928,7 +4345,7 @@ var Contact = ({
3928
4345
  ] })
3929
4346
  ] }) });
3930
4347
  };
3931
- var FAQContainer = styled39.section`
4348
+ var FAQContainer = styled40.section`
3932
4349
  display: flex;
3933
4350
  flex-direction: column;
3934
4351
  gap: 2rem;
@@ -3936,16 +4353,15 @@ var FAQContainer = styled39.section`
3936
4353
  min-height: 100vh;
3937
4354
  background-color: ${colors.background?.primary};
3938
4355
  `;
3939
- var HeaderSection2 = styled39.div`
4356
+ var HeaderSection2 = styled40.div`
3940
4357
  display: flex;
3941
4358
  flex-direction: column;
3942
4359
  gap: 1.5rem;
3943
4360
  align-items: flex-start;
3944
4361
  `;
3945
- var AccordionList = styled39.div`
4362
+ var AccordionList = styled40.div`
3946
4363
  display: flex;
3947
4364
  flex-direction: column;
3948
- max-width: 900px;
3949
4365
  width: 100%;
3950
4366
  `;
3951
4367
  var FAQ = ({
@@ -3981,7 +4397,7 @@ var FAQ = ({
3981
4397
  )) })
3982
4398
  ] });
3983
4399
  };
3984
- var FeaturesContainer = styled39.section`
4400
+ var FeaturesContainer = styled40.section`
3985
4401
  display: flex;
3986
4402
  flex-direction: column;
3987
4403
  align-items: flex-start;
@@ -3989,9 +4405,13 @@ var FeaturesContainer = styled39.section`
3989
4405
  gap: 2rem;
3990
4406
  padding: 4rem 2rem;
3991
4407
  min-height: 100vh;
3992
- background-color: ${colors.background?.light};
4408
+ background-color: ${colors.background?.secondary};
3993
4409
  `;
3994
- var HeaderWrapper2 = styled39.div`
4410
+ var InnerWrapper = styled40.div`
4411
+ width: 100%;
4412
+ margin: 0 auto;
4413
+ `;
4414
+ var HeaderWrapper3 = styled40.div`
3995
4415
  text-align: left;
3996
4416
  `;
3997
4417
  var Features = ({
@@ -4007,9 +4427,9 @@ var Features = ({
4007
4427
  navButtonColor = "brand",
4008
4428
  indicatorColor = "brand"
4009
4429
  }) => {
4010
- return /* @__PURE__ */ jsxs(FeaturesContainer, { children: [
4430
+ return /* @__PURE__ */ jsx(FeaturesContainer, { children: /* @__PURE__ */ jsxs(InnerWrapper, { children: [
4011
4431
  /* @__PURE__ */ jsx(Pill, { variant: pillVariant, inverse: true, children: pillText }),
4012
- /* @__PURE__ */ jsx(HeaderWrapper2, { children: /* @__PURE__ */ jsx(Header, { variant: "h1", color: headerColor, children: headerText }) }),
4432
+ /* @__PURE__ */ jsx(HeaderWrapper3, { children: /* @__PURE__ */ jsx(Header, { variant: "h1", color: headerColor, children: headerText }) }),
4013
4433
  /* @__PURE__ */ jsx(
4014
4434
  FeatureCarousel,
4015
4435
  {
@@ -4022,9 +4442,9 @@ var Features = ({
4022
4442
  indicatorColor
4023
4443
  }
4024
4444
  )
4025
- ] });
4445
+ ] }) });
4026
4446
  };
4027
- var HeroContainer = styled39.section`
4447
+ var HeroContainer = styled40.section`
4028
4448
  display: grid;
4029
4449
  grid-template-columns: 1fr 1fr;
4030
4450
  gap: 2rem;
@@ -4049,25 +4469,50 @@ var HeroContainer = styled39.section`
4049
4469
  right: 0;
4050
4470
  bottom: 0;
4051
4471
  background-color: ${(props) => props.$overlayColor || "rgba(30, 64, 175, 0.7)"};
4052
- z-index: 1;
4053
4472
  }
4054
4473
 
4055
- /* Mobile/Tablet: Single column, hide features */
4474
+
4475
+ /* Mobile/Tablet: Single column, features below CTA */
4056
4476
  @media (max-width: 1024px) {
4057
4477
  grid-template-columns: 1fr;
4058
- padding: 2rem;
4478
+ grid-template-rows: auto auto;
4479
+ padding: 2rem 1rem;
4480
+ gap: 3rem;
4481
+ }
4482
+
4483
+ /* Very small mobile */
4484
+ @media (max-width: 480px) {
4485
+ padding: 1.5rem 1rem;
4059
4486
  }
4060
4487
  `;
4061
- var Column = styled39.div`
4488
+ var Column = styled40.div`
4062
4489
  position: relative;
4063
- z-index: 2;
4064
4490
  display: flex;
4065
4491
  align-items: center;
4492
+
4493
+ /* Constrain text width on mobile */
4494
+ @media (max-width: 1024px) {
4495
+ max-width: 100%;
4496
+ width: 100%;
4497
+ }
4066
4498
  `;
4067
- var FeaturesColumn = styled39(Column)`
4068
- /* Hide on mobile and tablet */
4499
+ var FeaturesColumn = styled40(Column)`
4500
+ /* On desktop: normal column */
4501
+ @media (min-width: 1025px) {
4502
+ display: flex;
4503
+ }
4504
+
4505
+ /* On mobile: show below CTA, order it second */
4069
4506
  @media (max-width: 1024px) {
4070
- display: none;
4507
+ display: flex;
4508
+ order: 2;
4509
+ align-items: flex-start;
4510
+ }
4511
+ `;
4512
+ var CTAColumn = styled40(Column)`
4513
+ /* Ensure CTA comes first on mobile */
4514
+ @media (max-width: 1024px) {
4515
+ order: 1;
4071
4516
  }
4072
4517
  `;
4073
4518
  var Hero = ({
@@ -4092,7 +4537,7 @@ var Hero = ({
4092
4537
  featureDescriptionVariant = "secondary"
4093
4538
  }) => {
4094
4539
  return /* @__PURE__ */ jsxs(HeroContainer, { $bgImage: bgImage, $overlayColor: overlayColor, children: [
4095
- /* @__PURE__ */ jsx(Column, { children: /* @__PURE__ */ jsx(
4540
+ /* @__PURE__ */ jsx(CTAColumn, { children: /* @__PURE__ */ jsx(
4096
4541
  CTAContainer,
4097
4542
  {
4098
4543
  header: ctaHeader,
@@ -4123,23 +4568,72 @@ var Hero = ({
4123
4568
  ) })
4124
4569
  ] });
4125
4570
  };
4126
- var SectionContainer = styled39.section`
4571
+ var SectionContainer = styled40.section`
4127
4572
  display: flex;
4128
4573
  flex-direction: column;
4129
4574
  padding: 4rem 2rem;
4130
4575
  max-width: 1200px;
4131
4576
  margin: 0 auto;
4577
+
4578
+ /* Mobile adjustments */
4579
+ @media (max-width: 767px) {
4580
+ padding: 2rem 1rem;
4581
+ }
4132
4582
  `;
4133
- var SectionHeader = styled39.div`
4583
+ var SectionHeader = styled40.div`
4134
4584
  padding-bottom: 2rem;
4135
4585
  border-bottom: 1px solid ${colors.text.light};
4586
+
4587
+ /* Mobile: remove border, adjust padding */
4588
+ @media (max-width: 767px) {
4589
+ border-bottom: none;
4590
+ padding-bottom: 1rem;
4591
+ }
4136
4592
  `;
4137
- var ProductItem = styled39.div`
4138
- padding: 2rem 0;
4139
- border-bottom: 1px solid ${colors.text.light};
4593
+ var ProductsWrapper = styled40.div`
4594
+ /* Desktop: normal vertical stack */
4595
+ @media (min-width: 768px) {
4596
+ display: flex;
4597
+ flex-direction: column;
4598
+ }
4599
+
4600
+ /* Mobile: horizontal scroll carousel */
4601
+ @media (max-width: 767px) {
4602
+ display: flex;
4603
+ overflow-x: auto;
4604
+ scroll-snap-type: x mandatory;
4605
+ gap: 1rem;
4606
+ padding: 1rem 0;
4607
+ -webkit-overflow-scrolling: touch;
4608
+ scrollbar-width: none; /* Firefox */
4609
+
4610
+ &::-webkit-scrollbar {
4611
+ display: none; /* Chrome, Safari */
4612
+ }
4613
+ }
4614
+ `;
4615
+ var ProductItem = styled40.div`
4616
+ /* Desktop: vertical stack with borders */
4617
+ @media (min-width: 768px) {
4618
+ padding: 2rem 0;
4619
+ border-bottom: 1px solid ${colors.text.light};
4140
4620
 
4141
- &:last-child {
4142
- border-bottom: none;
4621
+ &:last-child {
4622
+ border-bottom: none;
4623
+ }
4624
+ }
4625
+
4626
+ /* Mobile: carousel item */
4627
+ @media (max-width: 767px) {
4628
+ flex: 0 0 80%; /* CHANGED from 85% - shows more of next card */
4629
+ scroll-snap-align: center;
4630
+ padding: 0;
4631
+ border: none;
4632
+ }
4633
+
4634
+ /* Very small mobile */
4635
+ @media (max-width: 480px) {
4636
+ flex: 0 0 85%; /* CHANGED from 90% */
4143
4637
  }
4144
4638
  `;
4145
4639
  var OtherProducts = ({
@@ -4154,7 +4648,7 @@ var OtherProducts = ({
4154
4648
  }) => {
4155
4649
  return /* @__PURE__ */ jsxs(SectionContainer, { children: [
4156
4650
  /* @__PURE__ */ jsx(SectionHeader, { children: /* @__PURE__ */ jsx(Header, { variant: headerVariant, color: headerColor, children: headerText }) }),
4157
- products.map((product, index) => /* @__PURE__ */ jsx(ProductItem, { children: /* @__PURE__ */ jsx(
4651
+ /* @__PURE__ */ jsx(ProductsWrapper, { children: products.map((product, index) => /* @__PURE__ */ jsx(ProductItem, { children: /* @__PURE__ */ jsx(
4158
4652
  ProductInfo,
4159
4653
  {
4160
4654
  image: product.image,
@@ -4168,7 +4662,7 @@ var OtherProducts = ({
4168
4662
  buttonTextBgVariant: productButtonTextBgVariant,
4169
4663
  buttonTextVariant: productButtonTextVariant
4170
4664
  }
4171
- ) }, index))
4665
+ ) }, index)) })
4172
4666
  ] });
4173
4667
  };
4174
4668