@opensite/ui 3.3.7 → 3.3.9

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 (173) hide show
  1. package/dist/about-culture-tabs.cjs +14 -3
  2. package/dist/about-culture-tabs.js +14 -3
  3. package/dist/about-developer-profile.cjs +14 -3
  4. package/dist/about-developer-profile.js +14 -3
  5. package/dist/about-developer-story.cjs +13 -2
  6. package/dist/about-developer-story.js +14 -3
  7. package/dist/about-expandable-values.cjs +14 -3
  8. package/dist/about-expandable-values.js +14 -3
  9. package/dist/about-mission-dual-image.cjs +13 -2
  10. package/dist/about-mission-dual-image.js +14 -3
  11. package/dist/about-network-spotlight.cjs +13 -2
  12. package/dist/about-network-spotlight.js +14 -3
  13. package/dist/about-story-expertise.cjs +14 -3
  14. package/dist/about-story-expertise.js +14 -3
  15. package/dist/about-streamline-team.cjs +14 -3
  16. package/dist/about-streamline-team.js +14 -3
  17. package/dist/carousel-feature-badge.cjs +13 -2
  18. package/dist/carousel-feature-badge.js +14 -3
  19. package/dist/carousel-image-hero.cjs +13 -2
  20. package/dist/carousel-image-hero.js +14 -3
  21. package/dist/carousel-portfolio-hero.cjs +13 -2
  22. package/dist/carousel-portfolio-hero.js +14 -3
  23. package/dist/community-initiatives.cjs +13 -2
  24. package/dist/community-initiatives.js +14 -3
  25. package/dist/components.cjs +13 -2
  26. package/dist/components.js +13 -2
  27. package/dist/cta-feature-checklist.cjs +13 -2
  28. package/dist/cta-feature-checklist.js +14 -3
  29. package/dist/cta-video-background-hero.cjs +9 -0
  30. package/dist/cta-video-background-hero.js +9 -0
  31. package/dist/faq-numbered-grid.cjs +13 -2
  32. package/dist/faq-numbered-grid.js +14 -3
  33. package/dist/hero-ad-campaign-expert.cjs +13 -2
  34. package/dist/hero-ad-campaign-expert.js +14 -3
  35. package/dist/hero-adaptable-product-grid.cjs +13 -2
  36. package/dist/hero-adaptable-product-grid.js +14 -3
  37. package/dist/hero-agency-animated-images.cjs +13 -2
  38. package/dist/hero-agency-animated-images.js +14 -3
  39. package/dist/hero-ai-powered-carousel.cjs +13 -2
  40. package/dist/hero-ai-powered-carousel.js +14 -3
  41. package/dist/hero-announcement-badge.cjs +13 -2
  42. package/dist/hero-announcement-badge.js +14 -3
  43. package/dist/hero-badge-image-split.cjs +13 -2
  44. package/dist/hero-badge-image-split.js +14 -3
  45. package/dist/hero-badge-shadow-overlay.cjs +13 -2
  46. package/dist/hero-badge-shadow-overlay.js +14 -3
  47. package/dist/hero-business-carousel-dots.cjs +13 -2
  48. package/dist/hero-business-carousel-dots.js +14 -3
  49. package/dist/hero-business-operations-mosaic.cjs +13 -2
  50. package/dist/hero-business-operations-mosaic.js +14 -3
  51. package/dist/hero-centered-gradient-cta.cjs +13 -2
  52. package/dist/hero-centered-gradient-cta.js +14 -3
  53. package/dist/hero-community-survey-cta.cjs +13 -2
  54. package/dist/hero-community-survey-cta.js +14 -3
  55. package/dist/hero-conversation-intelligence.cjs +13 -2
  56. package/dist/hero-conversation-intelligence.js +14 -3
  57. package/dist/hero-conversion-video-play.cjs +9 -0
  58. package/dist/hero-conversion-video-play.js +9 -0
  59. package/dist/hero-creative-studio-stacked.cjs +22 -2
  60. package/dist/hero-creative-studio-stacked.js +23 -3
  61. package/dist/hero-crm-streamlined.cjs +13 -2
  62. package/dist/hero-crm-streamlined.js +14 -3
  63. package/dist/hero-customer-support-layered.cjs +13 -2
  64. package/dist/hero-customer-support-layered.js +14 -3
  65. package/dist/hero-design-carousel-portfolio.cjs +13 -2
  66. package/dist/hero-design-carousel-portfolio.js +14 -3
  67. package/dist/hero-design-showcase-logos.cjs +13 -2
  68. package/dist/hero-design-showcase-logos.js +14 -3
  69. package/dist/hero-design-system-3d.cjs +13 -2
  70. package/dist/hero-design-system-3d.js +14 -3
  71. package/dist/hero-developer-tools-code.cjs +13 -2
  72. package/dist/hero-developer-tools-code.js +14 -3
  73. package/dist/hero-digital-agency-fullscreen.cjs +13 -2
  74. package/dist/hero-digital-agency-fullscreen.js +14 -3
  75. package/dist/hero-ecommerce-product-showcase.cjs +14 -3
  76. package/dist/hero-ecommerce-product-showcase.js +14 -3
  77. package/dist/hero-enterprise-security.cjs +13 -2
  78. package/dist/hero-enterprise-security.js +14 -3
  79. package/dist/hero-event-registration.cjs +13 -2
  80. package/dist/hero-event-registration.js +14 -3
  81. package/dist/hero-feature-cards-grid.cjs +13 -2
  82. package/dist/hero-feature-cards-grid.js +14 -3
  83. package/dist/hero-floating-images.cjs +18 -10
  84. package/dist/hero-floating-images.js +19 -11
  85. package/dist/hero-fullscreen-background-image.cjs +13 -2
  86. package/dist/hero-fullscreen-background-image.js +14 -3
  87. package/dist/hero-gradient-avatars-rating.cjs +13 -2
  88. package/dist/hero-gradient-avatars-rating.js +14 -3
  89. package/dist/hero-gradient-client-focused.cjs +13 -2
  90. package/dist/hero-gradient-client-focused.js +14 -3
  91. package/dist/hero-grid-pattern-solutions.cjs +13 -2
  92. package/dist/hero-grid-pattern-solutions.js +14 -3
  93. package/dist/hero-hiring-animated-text.cjs +13 -2
  94. package/dist/hero-hiring-animated-text.js +14 -3
  95. package/dist/hero-image-left-content.cjs +13 -2
  96. package/dist/hero-image-left-content.js +14 -3
  97. package/dist/hero-image-slider.cjs +13 -2
  98. package/dist/hero-image-slider.js +14 -3
  99. package/dist/hero-innovation-image-grid.cjs +13 -2
  100. package/dist/hero-innovation-image-grid.js +14 -3
  101. package/dist/hero-mental-health-team.cjs +13 -2
  102. package/dist/hero-mental-health-team.js +14 -3
  103. package/dist/hero-mentorship-video-split.cjs +9 -0
  104. package/dist/hero-mentorship-video-split.js +9 -0
  105. package/dist/hero-minimal-centered-dark.cjs +14 -3
  106. package/dist/hero-minimal-centered-dark.js +14 -3
  107. package/dist/hero-overlay-cta-grid.cjs +13 -2
  108. package/dist/hero-overlay-cta-grid.js +14 -3
  109. package/dist/hero-presentation-platform-video.cjs +13 -2
  110. package/dist/hero-presentation-platform-video.js +14 -3
  111. package/dist/hero-product-showcase-floating.cjs +14 -3
  112. package/dist/hero-product-showcase-floating.js +14 -3
  113. package/dist/hero-shared-inbox-layered.cjs +13 -2
  114. package/dist/hero-shared-inbox-layered.js +14 -3
  115. package/dist/hero-simple-centered-image.cjs +13 -2
  116. package/dist/hero-simple-centered-image.js +14 -3
  117. package/dist/hero-software-growth-video-dialog.cjs +22 -2
  118. package/dist/hero-software-growth-video-dialog.js +23 -3
  119. package/dist/hero-spiral-pattern-cards.cjs +14 -3
  120. package/dist/hero-spiral-pattern-cards.js +14 -3
  121. package/dist/hero-split-geometric-shapes.cjs +13 -2
  122. package/dist/hero-split-geometric-shapes.js +14 -3
  123. package/dist/hero-startup-launch-cta.cjs +14 -3
  124. package/dist/hero-startup-launch-cta.js +14 -3
  125. package/dist/hero-stats-social-proof.cjs +14 -3
  126. package/dist/hero-stats-social-proof.js +14 -3
  127. package/dist/hero-task-timer-animated.cjs +13 -2
  128. package/dist/hero-task-timer-animated.js +14 -3
  129. package/dist/hero-testimonial-image-grid.cjs +13 -2
  130. package/dist/hero-testimonial-image-grid.js +14 -3
  131. package/dist/hero-therapy-testimonial-grid.cjs +13 -2
  132. package/dist/hero-therapy-testimonial-grid.js +14 -3
  133. package/dist/hero-ui-library-showcase.cjs +13 -2
  134. package/dist/hero-ui-library-showcase.js +14 -3
  135. package/dist/hero-video-background-dark.cjs +14 -3
  136. package/dist/hero-video-background-dark.js +14 -3
  137. package/dist/hero-video-dialog-gradient.cjs +22 -2
  138. package/dist/hero-video-dialog-gradient.js +23 -3
  139. package/dist/hero-video-overlay-stars.cjs +13 -2
  140. package/dist/hero-video-overlay-stars.js +14 -3
  141. package/dist/hero-welcome-asymmetric-images.cjs +13 -2
  142. package/dist/hero-welcome-asymmetric-images.js +14 -3
  143. package/dist/index.cjs +13 -2
  144. package/dist/index.js +13 -2
  145. package/dist/link-page-bento-layout.cjs +2 -2
  146. package/dist/link-page-bento-layout.js +2 -2
  147. package/dist/link-page-grid-cards.cjs +2 -2
  148. package/dist/link-page-grid-cards.js +2 -2
  149. package/dist/link-page-minimal-profile.cjs +2 -2
  150. package/dist/link-page-minimal-profile.js +2 -2
  151. package/dist/link-page-newsletter-social.cjs +2 -2
  152. package/dist/link-page-newsletter-social.js +2 -2
  153. package/dist/link-tree-block.cjs +2 -2
  154. package/dist/link-tree-block.js +2 -2
  155. package/dist/process-sticky-steps.cjs +29 -9
  156. package/dist/process-sticky-steps.js +30 -10
  157. package/dist/registry.cjs +99 -28
  158. package/dist/registry.js +99 -28
  159. package/dist/stats-growth-timeline.cjs +13 -2
  160. package/dist/stats-growth-timeline.js +14 -3
  161. package/dist/testimonials-grid-add-review.cjs +13 -2
  162. package/dist/testimonials-grid-add-review.js +14 -3
  163. package/dist/testimonials-masonry-grid.cjs +13 -2
  164. package/dist/testimonials-masonry-grid.js +14 -3
  165. package/dist/testimonials-simple-grid.cjs +13 -2
  166. package/dist/testimonials-simple-grid.js +14 -3
  167. package/dist/testimonials-stats-header.cjs +13 -2
  168. package/dist/testimonials-stats-header.js +14 -3
  169. package/dist/testimonials-twitter-cards.cjs +13 -2
  170. package/dist/testimonials-twitter-cards.js +14 -3
  171. package/dist/testimonials-wall-compact.cjs +13 -2
  172. package/dist/testimonials-wall-compact.js +14 -3
  173. package/package.json +2 -2
package/dist/index.cjs CHANGED
@@ -2024,16 +2024,27 @@ function ActionComponent({ action }) {
2024
2024
  children,
2025
2025
  href,
2026
2026
  onClick,
2027
+ asButton,
2028
+ variant,
2029
+ size,
2027
2030
  className: actionClassName,
2028
2031
  ...pressableProps
2029
2032
  } = action;
2033
+ const shouldStyleAsButton = asButton ?? true;
2034
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
2035
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
2030
2036
  return /* @__PURE__ */ jsxRuntime.jsx(
2031
2037
  pressable.Pressable,
2032
2038
  {
2033
2039
  href,
2034
2040
  onClick,
2035
- asButton: action.asButton ?? true,
2036
- className: actionClassName,
2041
+ asButton: shouldStyleAsButton,
2042
+ variant: resolvedVariant,
2043
+ size: resolvedSize,
2044
+ className: cn(
2045
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
2046
+ actionClassName
2047
+ ),
2037
2048
  ...pressableProps,
2038
2049
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2039
2050
  icon,
package/dist/index.js CHANGED
@@ -2002,16 +2002,27 @@ function ActionComponent({ action }) {
2002
2002
  children,
2003
2003
  href,
2004
2004
  onClick,
2005
+ asButton,
2006
+ variant,
2007
+ size,
2005
2008
  className: actionClassName,
2006
2009
  ...pressableProps
2007
2010
  } = action;
2011
+ const shouldStyleAsButton = asButton ?? true;
2012
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
2013
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
2008
2014
  return /* @__PURE__ */ jsx(
2009
2015
  Pressable,
2010
2016
  {
2011
2017
  href,
2012
2018
  onClick,
2013
- asButton: action.asButton ?? true,
2014
- className: actionClassName,
2019
+ asButton: shouldStyleAsButton,
2020
+ variant: resolvedVariant,
2021
+ size: resolvedSize,
2022
+ className: cn(
2023
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
2024
+ actionClassName
2025
+ ),
2015
2026
  ...pressableProps,
2016
2027
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
2017
2028
  icon,
@@ -835,7 +835,7 @@ function LinkPageBentoLayout({
835
835
  "div",
836
836
  {
837
837
  className: cn(
838
- "h-20 w-20 overflow-hidden rounded-full ring-2 ring-neutral-200",
838
+ "flex h-20 w-full max-w-56 items-center justify-center sm:h-24 sm:max-w-72",
839
839
  avatarClassName
840
840
  ),
841
841
  children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -843,7 +843,7 @@ function LinkPageBentoLayout({
843
843
  {
844
844
  src: resolvedAvatar.src,
845
845
  alt: resolvedAvatar.alt,
846
- className: "h-full w-full object-cover",
846
+ className: "h-auto max-h-20 w-auto max-w-full object-contain sm:max-h-24",
847
847
  optixFlowConfig
848
848
  }
849
849
  )
@@ -814,7 +814,7 @@ function LinkPageBentoLayout({
814
814
  "div",
815
815
  {
816
816
  className: cn(
817
- "h-20 w-20 overflow-hidden rounded-full ring-2 ring-neutral-200",
817
+ "flex h-20 w-full max-w-56 items-center justify-center sm:h-24 sm:max-w-72",
818
818
  avatarClassName
819
819
  ),
820
820
  children: /* @__PURE__ */ jsx(
@@ -822,7 +822,7 @@ function LinkPageBentoLayout({
822
822
  {
823
823
  src: resolvedAvatar.src,
824
824
  alt: resolvedAvatar.alt,
825
- className: "h-full w-full object-cover",
825
+ className: "h-auto max-h-20 w-auto max-w-full object-contain sm:max-h-24",
826
826
  optixFlowConfig
827
827
  }
828
828
  )
@@ -567,7 +567,7 @@ function LinkPageGridCards({
567
567
  "div",
568
568
  {
569
569
  className: cn(
570
- "h-20 w-20 overflow-hidden rounded-2xl shadow-lg ring-2 ring-primary",
570
+ "flex h-20 w-full max-w-56 items-center justify-center sm:h-24 sm:max-w-72",
571
571
  avatarClassName
572
572
  ),
573
573
  children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -575,7 +575,7 @@ function LinkPageGridCards({
575
575
  {
576
576
  src: resolvedAvatar.src,
577
577
  alt: resolvedAvatar.alt,
578
- className: "h-full w-full object-cover",
578
+ className: "h-auto max-h-20 w-auto max-w-full object-contain sm:max-h-24",
579
579
  optixFlowConfig
580
580
  }
581
581
  )
@@ -546,7 +546,7 @@ function LinkPageGridCards({
546
546
  "div",
547
547
  {
548
548
  className: cn(
549
- "h-20 w-20 overflow-hidden rounded-2xl shadow-lg ring-2 ring-primary",
549
+ "flex h-20 w-full max-w-56 items-center justify-center sm:h-24 sm:max-w-72",
550
550
  avatarClassName
551
551
  ),
552
552
  children: /* @__PURE__ */ jsx(
@@ -554,7 +554,7 @@ function LinkPageGridCards({
554
554
  {
555
555
  src: resolvedAvatar.src,
556
556
  alt: resolvedAvatar.alt,
557
- className: "h-full w-full object-cover",
557
+ className: "h-auto max-h-20 w-auto max-w-full object-contain sm:max-h-24",
558
558
  optixFlowConfig
559
559
  }
560
560
  )
@@ -564,7 +564,7 @@ function LinkPageMinimalProfile({
564
564
  "div",
565
565
  {
566
566
  className: cn(
567
- "h-20 w-20 overflow-hidden rounded-full",
567
+ "flex h-20 w-full max-w-56 items-center justify-center sm:h-24 sm:max-w-72",
568
568
  avatarClassName
569
569
  ),
570
570
  children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -572,7 +572,7 @@ function LinkPageMinimalProfile({
572
572
  {
573
573
  src: resolvedAvatar.src,
574
574
  alt: resolvedAvatar.alt,
575
- className: "h-full w-full object-cover",
575
+ className: "h-auto max-h-20 w-auto max-w-full object-contain sm:max-h-24",
576
576
  optixFlowConfig
577
577
  }
578
578
  )
@@ -543,7 +543,7 @@ function LinkPageMinimalProfile({
543
543
  "div",
544
544
  {
545
545
  className: cn(
546
- "h-20 w-20 overflow-hidden rounded-full",
546
+ "flex h-20 w-full max-w-56 items-center justify-center sm:h-24 sm:max-w-72",
547
547
  avatarClassName
548
548
  ),
549
549
  children: /* @__PURE__ */ jsx(
@@ -551,7 +551,7 @@ function LinkPageMinimalProfile({
551
551
  {
552
552
  src: resolvedAvatar.src,
553
553
  alt: resolvedAvatar.alt,
554
- className: "h-full w-full object-cover",
554
+ className: "h-auto max-h-20 w-auto max-w-full object-contain sm:max-h-24",
555
555
  optixFlowConfig
556
556
  }
557
557
  )
@@ -594,7 +594,7 @@ function LinkPageNewsletterSocial({
594
594
  "div",
595
595
  {
596
596
  className: cn(
597
- "h-24 w-24 overflow-hidden rounded-full bg-muted ring-4 ring-background shadow-lg",
597
+ "flex h-24 w-full max-w-72 items-center justify-center",
598
598
  avatarClassName
599
599
  ),
600
600
  children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -602,7 +602,7 @@ function LinkPageNewsletterSocial({
602
602
  {
603
603
  src: resolvedAvatar.src,
604
604
  alt: resolvedAvatar.alt,
605
- className: "h-full w-full object-cover",
605
+ className: "h-auto max-h-24 w-auto max-w-full object-contain",
606
606
  optixFlowConfig
607
607
  }
608
608
  )
@@ -573,7 +573,7 @@ function LinkPageNewsletterSocial({
573
573
  "div",
574
574
  {
575
575
  className: cn(
576
- "h-24 w-24 overflow-hidden rounded-full bg-muted ring-4 ring-background shadow-lg",
576
+ "flex h-24 w-full max-w-72 items-center justify-center",
577
577
  avatarClassName
578
578
  ),
579
579
  children: /* @__PURE__ */ jsx(
@@ -581,7 +581,7 @@ function LinkPageNewsletterSocial({
581
581
  {
582
582
  src: resolvedAvatar.src,
583
583
  alt: resolvedAvatar.alt,
584
- className: "h-full w-full object-cover",
584
+ className: "h-auto max-h-24 w-auto max-w-full object-contain",
585
585
  optixFlowConfig
586
586
  }
587
587
  )
@@ -649,7 +649,7 @@ function LinkTreeBlock({
649
649
  "div",
650
650
  {
651
651
  className: cn(
652
- "h-24 w-24 overflow-hidden rounded-full border-4 border-background bg-muted shadow-xl",
652
+ "flex h-24 w-full max-w-72 items-center justify-center",
653
653
  avatarClassName
654
654
  ),
655
655
  children: resolvedAvatar && /* @__PURE__ */ jsxRuntime.jsx(
@@ -657,7 +657,7 @@ function LinkTreeBlock({
657
657
  {
658
658
  src: resolvedAvatar.src,
659
659
  alt: resolvedAvatar.alt,
660
- className: "h-full w-full object-cover",
660
+ className: "h-auto max-h-24 w-auto max-w-full object-contain",
661
661
  optixFlowConfig
662
662
  }
663
663
  )
@@ -628,7 +628,7 @@ function LinkTreeBlock({
628
628
  "div",
629
629
  {
630
630
  className: cn(
631
- "h-24 w-24 overflow-hidden rounded-full border-4 border-background bg-muted shadow-xl",
631
+ "flex h-24 w-full max-w-72 items-center justify-center",
632
632
  avatarClassName
633
633
  ),
634
634
  children: resolvedAvatar && /* @__PURE__ */ jsx(
@@ -636,7 +636,7 @@ function LinkTreeBlock({
636
636
  {
637
637
  src: resolvedAvatar.src,
638
638
  alt: resolvedAvatar.alt,
639
- className: "h-full w-full object-cover",
639
+ className: "h-auto max-h-24 w-auto max-w-full object-contain",
640
640
  optixFlowConfig
641
641
  }
642
642
  )
@@ -466,16 +466,27 @@ function ActionComponent({ action }) {
466
466
  children,
467
467
  href,
468
468
  onClick,
469
+ asButton,
470
+ variant,
471
+ size,
469
472
  className: actionClassName,
470
473
  ...pressableProps
471
474
  } = action;
475
+ const shouldStyleAsButton = asButton ?? true;
476
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
477
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
472
478
  return /* @__PURE__ */ jsxRuntime.jsx(
473
479
  pressable.Pressable,
474
480
  {
475
481
  href,
476
482
  onClick,
477
- asButton: action.asButton ?? true,
478
- className: actionClassName,
483
+ asButton: shouldStyleAsButton,
484
+ variant: resolvedVariant,
485
+ size: resolvedSize,
486
+ className: cn(
487
+ shouldStyleAsButton && pressable.buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
488
+ actionClassName
489
+ ),
479
490
  ...pressableProps,
480
491
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
481
492
  icon,
@@ -546,11 +557,11 @@ function ProcessStickySteps({
546
557
  const renderSteps = React.useMemo(() => {
547
558
  if (stepsSlot) return stepsSlot;
548
559
  if (!steps?.length) return null;
549
- return /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cn("relative col-span-4 w-full lg:pl-22", stepsClassName), children: steps.map((step, index) => /* @__PURE__ */ jsxRuntime.jsxs(
560
+ return /* @__PURE__ */ jsxRuntime.jsx("ul", { className: cn("relative w-full min-w-0", stepsClassName), children: steps.map((step, index) => /* @__PURE__ */ jsxRuntime.jsxs(
550
561
  "li",
551
562
  {
552
563
  className: cn(
553
- "relative flex flex-col justify-between gap-10 border-t py-8 md:flex-row lg:py-10",
564
+ "relative grid grid-cols-1 gap-6 border-t py-8 md:grid-cols-[auto_minmax(0,1fr)] md:gap-10 lg:py-10",
554
565
  stepItemClassName,
555
566
  step.className
556
567
  ),
@@ -574,7 +585,7 @@ function ProcessStickySteps({
574
585
  children: step.step ?? `0${index + 1}`
575
586
  }
576
587
  ),
577
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
588
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 pr-10", children: [
578
589
  step.title && (typeof step.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(pressable.Pressable, { href: step.href, className: "mb-4 block", children: /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-2xl font-semibold tracking-tighter lg:text-3xl", children: step.title }) }) : /* @__PURE__ */ jsxRuntime.jsx(pressable.Pressable, { href: step.href, className: "mb-4 block", children: step.title })),
579
590
  step.description && (typeof step.description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { children: step.description }) : step.description)
580
591
  ] })
@@ -597,13 +608,22 @@ function ProcessStickySteps({
597
608
  "div",
598
609
  {
599
610
  className: cn(
600
- "grid grid-cols-1 gap-5 lg:grid-cols-6 lg:gap-20",
611
+ "grid grid-cols-1 gap-10 lg:grid-cols-[minmax(0,0.85fr)_minmax(0,1.35fr)] lg:gap-16 xl:gap-24",
601
612
  contentClassName
602
613
  ),
603
614
  children: [
604
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "top-10 col-span-2 h-fit w-fit gap-3 space-y-7 py-8 lg:sticky", children: [
605
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative w-fit text-5xl font-semibold tracking-tight lg:text-7xl", children: [
606
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("w-fit", headingClassName), children: heading }) : heading),
615
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "top-10 h-fit min-w-0 max-w-full space-y-7 py-8 lg:sticky", children: [
616
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative max-w-full text-5xl font-semibold tracking-tight lg:text-6xl xl:text-7xl", children: [
617
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
618
+ "h1",
619
+ {
620
+ className: cn(
621
+ "max-w-[12ch] text-balance break-words",
622
+ headingClassName
623
+ ),
624
+ children: heading
625
+ }
626
+ ) : heading),
607
627
  /* @__PURE__ */ jsxRuntime.jsx(
608
628
  DynamicIcon,
609
629
  {
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import React__default, { useMemo } from 'react';
4
4
  import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
- import { Pressable } from '@page-speed/pressable';
6
+ import { Pressable, buttonVariants } from '@page-speed/pressable';
7
7
  import { Icon } from '@page-speed/icon';
8
8
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
9
9
 
@@ -445,16 +445,27 @@ function ActionComponent({ action }) {
445
445
  children,
446
446
  href,
447
447
  onClick,
448
+ asButton,
449
+ variant,
450
+ size,
448
451
  className: actionClassName,
449
452
  ...pressableProps
450
453
  } = action;
454
+ const shouldStyleAsButton = asButton ?? true;
455
+ const resolvedVariant = shouldStyleAsButton ? variant ?? "default" : void 0;
456
+ const resolvedSize = shouldStyleAsButton ? size ?? "default" : void 0;
451
457
  return /* @__PURE__ */ jsx(
452
458
  Pressable,
453
459
  {
454
460
  href,
455
461
  onClick,
456
- asButton: action.asButton ?? true,
457
- className: actionClassName,
462
+ asButton: shouldStyleAsButton,
463
+ variant: resolvedVariant,
464
+ size: resolvedSize,
465
+ className: cn(
466
+ shouldStyleAsButton && buttonVariants({ variant: resolvedVariant, size: resolvedSize }),
467
+ actionClassName
468
+ ),
458
469
  ...pressableProps,
459
470
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
460
471
  icon,
@@ -525,11 +536,11 @@ function ProcessStickySteps({
525
536
  const renderSteps = useMemo(() => {
526
537
  if (stepsSlot) return stepsSlot;
527
538
  if (!steps?.length) return null;
528
- return /* @__PURE__ */ jsx("ul", { className: cn("relative col-span-4 w-full lg:pl-22", stepsClassName), children: steps.map((step, index) => /* @__PURE__ */ jsxs(
539
+ return /* @__PURE__ */ jsx("ul", { className: cn("relative w-full min-w-0", stepsClassName), children: steps.map((step, index) => /* @__PURE__ */ jsxs(
529
540
  "li",
530
541
  {
531
542
  className: cn(
532
- "relative flex flex-col justify-between gap-10 border-t py-8 md:flex-row lg:py-10",
543
+ "relative grid grid-cols-1 gap-6 border-t py-8 md:grid-cols-[auto_minmax(0,1fr)] md:gap-10 lg:py-10",
533
544
  stepItemClassName,
534
545
  step.className
535
546
  ),
@@ -553,7 +564,7 @@ function ProcessStickySteps({
553
564
  children: step.step ?? `0${index + 1}`
554
565
  }
555
566
  ),
556
- /* @__PURE__ */ jsxs("div", { children: [
567
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 pr-10", children: [
557
568
  step.title && (typeof step.title === "string" ? /* @__PURE__ */ jsx(Pressable, { href: step.href, className: "mb-4 block", children: /* @__PURE__ */ jsx("h3", { className: "text-2xl font-semibold tracking-tighter lg:text-3xl", children: step.title }) }) : /* @__PURE__ */ jsx(Pressable, { href: step.href, className: "mb-4 block", children: step.title })),
558
569
  step.description && (typeof step.description === "string" ? /* @__PURE__ */ jsx("p", { children: step.description }) : step.description)
559
570
  ] })
@@ -576,13 +587,22 @@ function ProcessStickySteps({
576
587
  "div",
577
588
  {
578
589
  className: cn(
579
- "grid grid-cols-1 gap-5 lg:grid-cols-6 lg:gap-20",
590
+ "grid grid-cols-1 gap-10 lg:grid-cols-[minmax(0,0.85fr)_minmax(0,1.35fr)] lg:gap-16 xl:gap-24",
580
591
  contentClassName
581
592
  ),
582
593
  children: [
583
- /* @__PURE__ */ jsxs("div", { className: "top-10 col-span-2 h-fit w-fit gap-3 space-y-7 py-8 lg:sticky", children: [
584
- /* @__PURE__ */ jsxs("div", { className: "relative w-fit text-5xl font-semibold tracking-tight lg:text-7xl", children: [
585
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("w-fit", headingClassName), children: heading }) : heading),
594
+ /* @__PURE__ */ jsxs("div", { className: "top-10 h-fit min-w-0 max-w-full space-y-7 py-8 lg:sticky", children: [
595
+ /* @__PURE__ */ jsxs("div", { className: "relative max-w-full text-5xl font-semibold tracking-tight lg:text-6xl xl:text-7xl", children: [
596
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
597
+ "h1",
598
+ {
599
+ className: cn(
600
+ "max-w-[12ch] text-balance break-words",
601
+ headingClassName
602
+ ),
603
+ children: heading
604
+ }
605
+ ) : heading),
586
606
  /* @__PURE__ */ jsx(
587
607
  DynamicIcon,
588
608
  {