@opensite/ui 1.2.0 → 1.2.1

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.
@@ -1237,12 +1237,12 @@ function CarouselScaleFocus({
1237
1237
  className: cn("overflow-hidden", className),
1238
1238
  children: [
1239
1239
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "md:px-45", children: [
1240
- title || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4", children: [
1240
+ title || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
1241
1241
  title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1242
1242
  "h2",
1243
1243
  {
1244
1244
  className: cn(
1245
- "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl",
1245
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
1246
1246
  titleClassName
1247
1247
  ),
1248
1248
  children: title
@@ -1251,19 +1251,13 @@ function CarouselScaleFocus({
1251
1251
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1252
1252
  "p",
1253
1253
  {
1254
- className: cn(
1255
- "max-w-lg text-muted-foreground",
1256
- descriptionClassName
1257
- ),
1254
+ className: cn("max-w-lg text-balance", descriptionClassName),
1258
1255
  children: description
1259
1256
  }
1260
1257
  ) : /* @__PURE__ */ jsxRuntime.jsx(
1261
1258
  "div",
1262
1259
  {
1263
- className: cn(
1264
- "max-w-lg text-muted-foreground",
1265
- descriptionClassName
1266
- ),
1260
+ className: cn("max-w-lg text-balance", descriptionClassName),
1267
1261
  children: description
1268
1262
  }
1269
1263
  ))
@@ -1213,12 +1213,12 @@ function CarouselScaleFocus({
1213
1213
  className: cn("overflow-hidden", className),
1214
1214
  children: [
1215
1215
  /* @__PURE__ */ jsxs("div", { className: "md:px-45", children: [
1216
- title || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4", children: [
1216
+ title || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
1217
1217
  title && (typeof title === "string" ? /* @__PURE__ */ jsx(
1218
1218
  "h2",
1219
1219
  {
1220
1220
  className: cn(
1221
- "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl",
1221
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
1222
1222
  titleClassName
1223
1223
  ),
1224
1224
  children: title
@@ -1227,19 +1227,13 @@ function CarouselScaleFocus({
1227
1227
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
1228
1228
  "p",
1229
1229
  {
1230
- className: cn(
1231
- "max-w-lg text-muted-foreground",
1232
- descriptionClassName
1233
- ),
1230
+ className: cn("max-w-lg text-balance", descriptionClassName),
1234
1231
  children: description
1235
1232
  }
1236
1233
  ) : /* @__PURE__ */ jsx(
1237
1234
  "div",
1238
1235
  {
1239
- className: cn(
1240
- "max-w-lg text-muted-foreground",
1241
- descriptionClassName
1242
- ),
1236
+ className: cn("max-w-lg text-balance", descriptionClassName),
1243
1237
  children: description
1244
1238
  }
1245
1239
  ))
@@ -1317,33 +1317,21 @@ function CarouselTabsContent({
1317
1317
  patternClassName,
1318
1318
  className: cn("overflow-hidden", className),
1319
1319
  children: [
1320
- title || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4", children: [
1320
+ title || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
1321
1321
  title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1322
1322
  "h2",
1323
1323
  {
1324
1324
  className: cn(
1325
- "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl",
1325
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
1326
1326
  titleClassName
1327
1327
  ),
1328
1328
  children: title
1329
1329
  }
1330
1330
  ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: titleClassName, children: title })),
1331
- description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1332
- "p",
1333
- {
1334
- className: cn(
1335
- "max-w-lg text-muted-foreground",
1336
- descriptionClassName
1337
- ),
1338
- children: description
1339
- }
1340
- ) : /* @__PURE__ */ jsxRuntime.jsx(
1331
+ description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("max-w-lg text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx(
1341
1332
  "div",
1342
1333
  {
1343
- className: cn(
1344
- "max-w-lg text-muted-foreground",
1345
- descriptionClassName
1346
- ),
1334
+ className: cn("max-w-lg text-balance", descriptionClassName),
1347
1335
  children: description
1348
1336
  }
1349
1337
  ))
@@ -1293,33 +1293,21 @@ function CarouselTabsContent({
1293
1293
  patternClassName,
1294
1294
  className: cn("overflow-hidden", className),
1295
1295
  children: [
1296
- title || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4", children: [
1296
+ title || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
1297
1297
  title && (typeof title === "string" ? /* @__PURE__ */ jsx(
1298
1298
  "h2",
1299
1299
  {
1300
1300
  className: cn(
1301
- "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl",
1301
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
1302
1302
  titleClassName
1303
1303
  ),
1304
1304
  children: title
1305
1305
  }
1306
1306
  ) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
1307
- description && (typeof description === "string" ? /* @__PURE__ */ jsx(
1308
- "p",
1309
- {
1310
- className: cn(
1311
- "max-w-lg text-muted-foreground",
1312
- descriptionClassName
1313
- ),
1314
- children: description
1315
- }
1316
- ) : /* @__PURE__ */ jsx(
1307
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("max-w-lg text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsx(
1317
1308
  "div",
1318
1309
  {
1319
- className: cn(
1320
- "max-w-lg text-muted-foreground",
1321
- descriptionClassName
1322
- ),
1310
+ className: cn("max-w-lg text-balance", descriptionClassName),
1323
1311
  children: description
1324
1312
  }
1325
1313
  ))
@@ -33,36 +33,6 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
33
33
  function cn(...inputs) {
34
34
  return tailwindMerge.twMerge(clsx.clsx(inputs));
35
35
  }
36
- function getNestedCardBg(parentBg, variant = "muted", options) {
37
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
38
- if (isDark) {
39
- switch (variant) {
40
- case "muted":
41
- return "bg-background";
42
- case "card":
43
- return "bg-card";
44
- case "accent":
45
- return "bg-accent";
46
- case "subtle":
47
- return "bg-background/50";
48
- }
49
- } else {
50
- switch (variant) {
51
- case "muted":
52
- return "bg-muted";
53
- case "card":
54
- return "bg-card";
55
- case "accent":
56
- return "bg-accent";
57
- case "subtle":
58
- return "bg-muted/50";
59
- }
60
- }
61
- }
62
- function getNestedCardTextColor(parentBg, options) {
63
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
64
- return isDark ? "text-foreground" : "";
65
- }
66
36
  var badgeVariants = classVarianceAuthority.cva(
67
37
  "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
68
38
  {
@@ -614,72 +584,56 @@ function ExpandableCaseStudyCards({
614
584
  "a",
615
585
  {
616
586
  href: item.href,
617
- className: "relative block h-full w-full overflow-hidden rounded-xl bg-primary text-primary-foreground dark:bg-card",
587
+ className: "relative block h-full w-full overflow-hidden rounded-xl",
618
588
  children: [
619
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: 'absolute -inset-[50%] hidden h-[200%] w-[200%] md:block lg:group-data-[state="closed"]:blur-sm', children: [
620
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-[calc(25%+40px)] aspect-square h-[calc(50%+40px)] max-lg:right-[calc(50%+40px)] lg:right-[50%]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-full w-full overflow-clip rounded-xl", children: /* @__PURE__ */ jsxRuntime.jsx(
621
- img.Img,
622
- {
623
- src: item.image,
624
- alt: typeof item.title === "string" ? item.title : item.imageAlt || "Case study image",
625
- className: cn(
626
- "h-full w-full object-cover object-center",
627
- imageClassName
628
- ),
629
- loading: "lazy",
630
- optixFlowConfig
631
- }
632
- ) }) }),
633
- /* @__PURE__ */ jsxRuntime.jsx(
589
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: 'absolute inset-0 lg:group-data-[state="closed"]:blur-sm lg:transition-[filter] lg:duration-500', children: /* @__PURE__ */ jsxRuntime.jsx(
590
+ img.Img,
591
+ {
592
+ src: item.image,
593
+ alt: typeof item.title === "string" ? item.title : item.imageAlt || "Case study image",
594
+ className: cn(
595
+ "h-full w-full object-cover object-center",
596
+ imageClassName
597
+ ),
598
+ loading: "lazy",
599
+ optixFlowConfig
600
+ }
601
+ ) }),
602
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-x-0 bottom-0 h-[70%] bg-linear-to-t from-black/90 from-30% to-transparent" }),
603
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: 'absolute inset-0 flex flex-col justify-end p-4 pb-5 transition-opacity delay-200 duration-500 lg:group-data-[state="closed"]:opacity-0', children: [
604
+ item.badges && item.badges.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(
634
605
  "div",
635
606
  {
636
607
  className: cn(
637
- "absolute top-[50%] left-[50%] flex size-16 -translate-x-1/2 -translate-y-1/2 items-center justify-center rounded-full max-lg:hidden",
638
- getNestedCardBg(background, "accent"),
639
- getNestedCardTextColor(background)
608
+ "mb-3 flex flex-wrap items-center gap-2",
609
+ badgesClassName
640
610
  ),
641
- children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/plus", size: 32 })
611
+ children: item.badges.map((badge, idx) => /* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: "secondary", className: badgeClassName, children: badge }, idx))
642
612
  }
643
613
  ),
644
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-x-0 bottom-0 hidden h-[50%] bg-linear-to-t from-primary from-50% to-transparent lg:block" })
645
- ] }),
646
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex flex-col justify-between gap-4 md:absolute md:inset-0 md:max-lg:inset-x-[50%] md:max-lg:w-[50%]", children: [
647
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: 'flex flex-col gap-3 p-4 pt-6 transition-all delay-200 duration-500 lg:group-data-[state="closed"]:opacity-0', children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start justify-between gap-2", children: [
648
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
614
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-end justify-between gap-3", children: [
615
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1.5", children: [
649
616
  item.logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-1", children: /* @__PURE__ */ jsxRuntime.jsx(
650
617
  img.Img,
651
618
  {
652
619
  src: item.logo,
653
620
  alt: item.logoAlt || item.company || "Logo",
654
- className: cn("h-6 max-w-[120px] object-contain object-left lg:h-8 lg:max-w-[150px]", logoClassName),
621
+ className: cn("h-6 max-w-[120px] object-contain object-left invert lg:h-8 lg:max-w-[150px]", logoClassName),
655
622
  loading: "lazy",
656
623
  optixFlowConfig
657
624
  }
658
625
  ) }),
659
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-medium lg:text-lg", children: item.title }),
660
- item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-primary-foreground/70", children: item.description })
626
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-base font-medium text-white lg:text-lg", children: item.title }),
627
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-white/80", children: item.description })
661
628
  ] }),
662
629
  /* @__PURE__ */ jsxRuntime.jsx(
663
630
  "div",
664
631
  {
665
- className: cn(
666
- "flex size-8 shrink-0 items-center justify-center rounded-full text-foreground transition-transform group-hover:translate-x-1 group-hover:-translate-y-1 lg:size-10",
667
- getNestedCardBg(background, "card")
668
- ),
632
+ className: "flex size-8 shrink-0 items-center justify-center rounded-full bg-white/20 text-white backdrop-blur-sm transition-transform group-hover:translate-x-1 group-hover:-translate-y-1 lg:size-10",
669
633
  children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-up-right", size: 20 })
670
634
  }
671
635
  )
672
- ] }) }),
673
- /* @__PURE__ */ jsxRuntime.jsx(
674
- "div",
675
- {
676
- className: cn(
677
- 'flex h-20 items-center gap-2 px-4 pb-4 transition-opacity delay-200 duration-500 lg:group-data-[state="closed"]:opacity-0',
678
- badgesClassName
679
- ),
680
- children: item.badges?.map((badge, idx) => /* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: "secondary", className: badgeClassName, children: badge }, idx))
681
- }
682
- )
636
+ ] })
683
637
  ] })
684
638
  ]
685
639
  }
@@ -12,36 +12,6 @@ import { Img } from '@page-speed/img';
12
12
  function cn(...inputs) {
13
13
  return twMerge(clsx(inputs));
14
14
  }
15
- function getNestedCardBg(parentBg, variant = "muted", options) {
16
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
17
- if (isDark) {
18
- switch (variant) {
19
- case "muted":
20
- return "bg-background";
21
- case "card":
22
- return "bg-card";
23
- case "accent":
24
- return "bg-accent";
25
- case "subtle":
26
- return "bg-background/50";
27
- }
28
- } else {
29
- switch (variant) {
30
- case "muted":
31
- return "bg-muted";
32
- case "card":
33
- return "bg-card";
34
- case "accent":
35
- return "bg-accent";
36
- case "subtle":
37
- return "bg-muted/50";
38
- }
39
- }
40
- }
41
- function getNestedCardTextColor(parentBg, options) {
42
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
43
- return isDark ? "text-foreground" : "";
44
- }
45
15
  var badgeVariants = cva(
46
16
  "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
47
17
  {
@@ -593,72 +563,56 @@ function ExpandableCaseStudyCards({
593
563
  "a",
594
564
  {
595
565
  href: item.href,
596
- className: "relative block h-full w-full overflow-hidden rounded-xl bg-primary text-primary-foreground dark:bg-card",
566
+ className: "relative block h-full w-full overflow-hidden rounded-xl",
597
567
  children: [
598
- /* @__PURE__ */ jsxs("div", { className: 'absolute -inset-[50%] hidden h-[200%] w-[200%] md:block lg:group-data-[state="closed"]:blur-sm', children: [
599
- /* @__PURE__ */ jsx("div", { className: "absolute top-[calc(25%+40px)] aspect-square h-[calc(50%+40px)] max-lg:right-[calc(50%+40px)] lg:right-[50%]", children: /* @__PURE__ */ jsx("div", { className: "h-full w-full overflow-clip rounded-xl", children: /* @__PURE__ */ jsx(
600
- Img,
601
- {
602
- src: item.image,
603
- alt: typeof item.title === "string" ? item.title : item.imageAlt || "Case study image",
604
- className: cn(
605
- "h-full w-full object-cover object-center",
606
- imageClassName
607
- ),
608
- loading: "lazy",
609
- optixFlowConfig
610
- }
611
- ) }) }),
612
- /* @__PURE__ */ jsx(
568
+ /* @__PURE__ */ jsx("div", { className: 'absolute inset-0 lg:group-data-[state="closed"]:blur-sm lg:transition-[filter] lg:duration-500', children: /* @__PURE__ */ jsx(
569
+ Img,
570
+ {
571
+ src: item.image,
572
+ alt: typeof item.title === "string" ? item.title : item.imageAlt || "Case study image",
573
+ className: cn(
574
+ "h-full w-full object-cover object-center",
575
+ imageClassName
576
+ ),
577
+ loading: "lazy",
578
+ optixFlowConfig
579
+ }
580
+ ) }),
581
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-x-0 bottom-0 h-[70%] bg-linear-to-t from-black/90 from-30% to-transparent" }),
582
+ /* @__PURE__ */ jsxs("div", { className: 'absolute inset-0 flex flex-col justify-end p-4 pb-5 transition-opacity delay-200 duration-500 lg:group-data-[state="closed"]:opacity-0', children: [
583
+ item.badges && item.badges.length > 0 && /* @__PURE__ */ jsx(
613
584
  "div",
614
585
  {
615
586
  className: cn(
616
- "absolute top-[50%] left-[50%] flex size-16 -translate-x-1/2 -translate-y-1/2 items-center justify-center rounded-full max-lg:hidden",
617
- getNestedCardBg(background, "accent"),
618
- getNestedCardTextColor(background)
587
+ "mb-3 flex flex-wrap items-center gap-2",
588
+ badgesClassName
619
589
  ),
620
- children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/plus", size: 32 })
590
+ children: item.badges.map((badge, idx) => /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: badgeClassName, children: badge }, idx))
621
591
  }
622
592
  ),
623
- /* @__PURE__ */ jsx("div", { className: "absolute inset-x-0 bottom-0 hidden h-[50%] bg-linear-to-t from-primary from-50% to-transparent lg:block" })
624
- ] }),
625
- /* @__PURE__ */ jsxs("div", { className: "relative flex flex-col justify-between gap-4 md:absolute md:inset-0 md:max-lg:inset-x-[50%] md:max-lg:w-[50%]", children: [
626
- /* @__PURE__ */ jsx("div", { className: 'flex flex-col gap-3 p-4 pt-6 transition-all delay-200 duration-500 lg:group-data-[state="closed"]:opacity-0', children: /* @__PURE__ */ jsxs("div", { className: "flex items-start justify-between gap-2", children: [
627
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
593
+ /* @__PURE__ */ jsxs("div", { className: "flex items-end justify-between gap-3", children: [
594
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1.5", children: [
628
595
  item.logo && /* @__PURE__ */ jsx("div", { className: "mb-1", children: /* @__PURE__ */ jsx(
629
596
  Img,
630
597
  {
631
598
  src: item.logo,
632
599
  alt: item.logoAlt || item.company || "Logo",
633
- className: cn("h-6 max-w-[120px] object-contain object-left lg:h-8 lg:max-w-[150px]", logoClassName),
600
+ className: cn("h-6 max-w-[120px] object-contain object-left invert lg:h-8 lg:max-w-[150px]", logoClassName),
634
601
  loading: "lazy",
635
602
  optixFlowConfig
636
603
  }
637
604
  ) }),
638
- /* @__PURE__ */ jsx("div", { className: "text-base font-medium lg:text-lg", children: item.title }),
639
- item.description && /* @__PURE__ */ jsx("div", { className: "text-sm text-primary-foreground/70", children: item.description })
605
+ /* @__PURE__ */ jsx("div", { className: "text-base font-medium text-white lg:text-lg", children: item.title }),
606
+ item.description && /* @__PURE__ */ jsx("div", { className: "text-sm text-white/80", children: item.description })
640
607
  ] }),
641
608
  /* @__PURE__ */ jsx(
642
609
  "div",
643
610
  {
644
- className: cn(
645
- "flex size-8 shrink-0 items-center justify-center rounded-full text-foreground transition-transform group-hover:translate-x-1 group-hover:-translate-y-1 lg:size-10",
646
- getNestedCardBg(background, "card")
647
- ),
611
+ className: "flex size-8 shrink-0 items-center justify-center rounded-full bg-white/20 text-white backdrop-blur-sm transition-transform group-hover:translate-x-1 group-hover:-translate-y-1 lg:size-10",
648
612
  children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-up-right", size: 20 })
649
613
  }
650
614
  )
651
- ] }) }),
652
- /* @__PURE__ */ jsx(
653
- "div",
654
- {
655
- className: cn(
656
- 'flex h-20 items-center gap-2 px-4 pb-4 transition-opacity delay-200 duration-500 lg:group-data-[state="closed"]:opacity-0',
657
- badgesClassName
658
- ),
659
- children: item.badges?.map((badge, idx) => /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: badgeClassName, children: badge }, idx))
660
- }
661
- )
615
+ ] })
662
616
  ] })
663
617
  ]
664
618
  }
@@ -1240,27 +1240,24 @@ function InteriorCarousel({
1240
1240
  patternClassName,
1241
1241
  className,
1242
1242
  children: [
1243
- heading || descriptionContent ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-10", children: [
1244
- heading && /* @__PURE__ */ jsxRuntime.jsx(
1243
+ heading || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
1244
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1245
1245
  "h2",
1246
1246
  {
1247
1247
  className: cn(
1248
- "mb-4 text-center text-4xl font-semibold",
1248
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
1249
1249
  headingClassName
1250
1250
  ),
1251
1251
  children: heading
1252
1252
  }
1253
- ),
1254
- descriptionContent && /* @__PURE__ */ jsxRuntime.jsx(
1255
- "p",
1253
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
1254
+ descriptionContent && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("max-w-lg text-balance", descriptionClassName), children: descriptionContent }) : /* @__PURE__ */ jsxRuntime.jsx(
1255
+ "div",
1256
1256
  {
1257
- className: cn(
1258
- "text-center text-sm text-muted-foreground",
1259
- descriptionClassName
1260
- ),
1257
+ className: cn("max-w-lg text-balance", descriptionClassName),
1261
1258
  children: descriptionContent
1262
1259
  }
1263
- )
1260
+ ))
1264
1261
  ] }) : null,
1265
1262
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsxs(
1266
1263
  Carousel,
@@ -1216,27 +1216,24 @@ function InteriorCarousel({
1216
1216
  patternClassName,
1217
1217
  className,
1218
1218
  children: [
1219
- heading || descriptionContent ? /* @__PURE__ */ jsxs("div", { className: "mb-10", children: [
1220
- heading && /* @__PURE__ */ jsx(
1219
+ heading || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
1220
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
1221
1221
  "h2",
1222
1222
  {
1223
1223
  className: cn(
1224
- "mb-4 text-center text-4xl font-semibold",
1224
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
1225
1225
  headingClassName
1226
1226
  ),
1227
1227
  children: heading
1228
1228
  }
1229
- ),
1230
- descriptionContent && /* @__PURE__ */ jsx(
1231
- "p",
1229
+ ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
1230
+ descriptionContent && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("max-w-lg text-balance", descriptionClassName), children: descriptionContent }) : /* @__PURE__ */ jsx(
1231
+ "div",
1232
1232
  {
1233
- className: cn(
1234
- "text-center text-sm text-muted-foreground",
1235
- descriptionClassName
1236
- ),
1233
+ className: cn("max-w-lg text-balance", descriptionClassName),
1237
1234
  children: descriptionContent
1238
1235
  }
1239
- )
1236
+ ))
1240
1237
  ] }) : null,
1241
1238
  /* @__PURE__ */ jsx("div", { className: "relative", children: /* @__PURE__ */ jsxs(
1242
1239
  Carousel,
@@ -629,33 +629,21 @@ function MasonryMotionGrid({
629
629
  patternClassName,
630
630
  className,
631
631
  children: [
632
- title || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4", children: [
632
+ title || description ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
633
633
  title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
634
634
  "h2",
635
635
  {
636
636
  className: cn(
637
- "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl",
637
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
638
638
  titleClassName
639
639
  ),
640
640
  children: title
641
641
  }
642
642
  ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: titleClassName, children: title })),
643
- description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
644
- "p",
645
- {
646
- className: cn(
647
- "max-w-lg text-muted-foreground",
648
- descriptionClassName
649
- ),
650
- children: description
651
- }
652
- ) : /* @__PURE__ */ jsxRuntime.jsx(
643
+ description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("max-w-lg text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx(
653
644
  "div",
654
645
  {
655
- className: cn(
656
- "max-w-lg text-muted-foreground",
657
- descriptionClassName
658
- ),
646
+ className: cn("max-w-lg text-balance", descriptionClassName),
659
647
  children: description
660
648
  }
661
649
  ))
@@ -623,33 +623,21 @@ function MasonryMotionGrid({
623
623
  patternClassName,
624
624
  className,
625
625
  children: [
626
- title || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4", children: [
626
+ title || description ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 mb-16", children: [
627
627
  title && (typeof title === "string" ? /* @__PURE__ */ jsx(
628
628
  "h2",
629
629
  {
630
630
  className: cn(
631
- "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl",
631
+ "text-xl font-medium tracking-tight md:text-2xl lg:text-3xl text-balance",
632
632
  titleClassName
633
633
  ),
634
634
  children: title
635
635
  }
636
636
  ) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
637
- description && (typeof description === "string" ? /* @__PURE__ */ jsx(
638
- "p",
639
- {
640
- className: cn(
641
- "max-w-lg text-muted-foreground",
642
- descriptionClassName
643
- ),
644
- children: description
645
- }
646
- ) : /* @__PURE__ */ jsx(
637
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("max-w-lg text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsx(
647
638
  "div",
648
639
  {
649
- className: cn(
650
- "max-w-lg text-muted-foreground",
651
- descriptionClassName
652
- ),
640
+ className: cn("max-w-lg text-balance", descriptionClassName),
653
641
  children: description
654
642
  }
655
643
  ))