@riverbankcms/sdk 0.107.0 → 0.108.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 (159) hide show
  1. package/dist/{PreviewEditorSidebar-DpAbAl08.mjs → PreviewEditorSidebar-BBT-kZAM.mjs} +46 -11
  2. package/dist/{PreviewEditorUI-O7cn6Xxv.mjs → PreviewEditorUI-D69xNKT2.mjs} +10 -9
  3. package/dist/{PreviewQueryProvider-D0tnKl0t.mjs → PreviewQueryProvider-RRu7wyQ5.mjs} +1 -1
  4. package/dist/{SdkPreviewModeRuntime-CVB7urtl.mjs → SdkPreviewModeRuntime-CuDjXH6o.mjs} +426 -72
  5. package/dist/{SiteChromeCustomizeContext-C_sizso-.mjs → SiteChromeCustomizeContext-BQUY2dEk.mjs} +3865 -544
  6. package/dist/_dts/ai/src/contracts/proposals.d.ts +3712 -220
  7. package/dist/_dts/api/src/blocks.d.ts +41 -7
  8. package/dist/_dts/api/src/bookingRecords.d.ts +180 -115
  9. package/dist/_dts/api/src/cache-tags.d.ts +3 -0
  10. package/dist/_dts/api/src/contentRuntime.d.ts +19 -1
  11. package/dist/_dts/api/src/endpoints.d.ts +99 -0
  12. package/dist/_dts/api/src/footer-settings.d.ts +1 -0
  13. package/dist/_dts/api/src/footerSettings.d.ts +8 -0
  14. package/dist/_dts/api/src/index.d.ts +5 -2
  15. package/dist/_dts/api/src/navigation/contracts.d.ts +3 -3
  16. package/dist/_dts/api/src/previewContentContract.d.ts +4 -0
  17. package/dist/_dts/api/src/sdkContracts.d.ts +62 -0
  18. package/dist/_dts/api/src/siteBanner.d.ts +2 -2
  19. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +143 -55
  20. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +7 -1
  21. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +41 -1
  22. package/dist/_dts/blocks/src/primitives/layout/Section.d.ts +0 -1
  23. package/dist/_dts/blocks/src/rendering/server.d.ts +1 -0
  24. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +50 -0
  25. package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +9 -48
  26. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  27. package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -1
  28. package/dist/_dts/blocks/src/system/icons/social.d.ts +5 -0
  29. package/dist/_dts/blocks/src/system/icons/svg.d.ts +1 -0
  30. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +2 -2
  31. package/dist/_dts/blocks/src/system/node/fragments/backgroundLayer.d.ts +13 -0
  32. package/dist/_dts/blocks/src/system/node/fragments/footerNav.d.ts +2 -0
  33. package/dist/_dts/blocks/src/system/node/fragments/styledContainer.d.ts +4 -4
  34. package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +3 -12
  35. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  36. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +1 -1
  37. package/dist/_dts/blocks/src/system/types/link.d.ts +3 -3
  38. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +14 -0
  39. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +27 -8
  40. package/dist/_dts/content-editor/src/footerComposer.d.ts +56 -0
  41. package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +1 -1
  42. package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +5 -5
  43. package/dist/_dts/content-editor/src/index.d.ts +2 -0
  44. package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +3 -1
  45. package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +20 -36
  46. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +5 -1
  47. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +11 -0
  48. package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
  49. package/dist/_dts/content-model/src/definitions/shared.d.ts +3 -0
  50. package/dist/_dts/core/src/branded.d.ts +3 -0
  51. package/dist/_dts/core/src/editor-state.d.ts +4 -0
  52. package/dist/_dts/core/src/footer-composition.d.ts +143 -0
  53. package/dist/_dts/core/src/index.d.ts +2 -0
  54. package/dist/_dts/core/src/public-profile.d.ts +73 -0
  55. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +3043 -2941
  56. package/dist/_dts/db/src/schemas/forms.d.ts +10 -10
  57. package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +5 -0
  58. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +1 -0
  59. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -1
  60. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +2 -1
  61. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +2 -1
  62. package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +10 -0
  63. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -0
  64. package/dist/_dts/path-utils/src/index.d.ts +5 -0
  65. package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +5 -0
  66. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -1
  67. package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -0
  68. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -1
  69. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -1
  70. package/dist/_dts/preview-next/src/client/preview/previewErrorMessages.d.ts +4 -0
  71. package/dist/_dts/sdk/src/cli/content/reader.d.ts +1 -0
  72. package/dist/_dts/sdk/src/client/management/blocks.d.ts +14 -1
  73. package/dist/_dts/sdk/src/client/management/index.d.ts +1 -0
  74. package/dist/_dts/sdk/src/client/management/types.d.ts +15 -1
  75. package/dist/_dts/sdk/src/config/content-types.d.ts +2 -0
  76. package/dist/_dts/sdk/src/config/content-validation.d.ts +4 -0
  77. package/dist/_dts/sdk/src/navigation/index.d.ts +2 -0
  78. package/dist/_dts/sdk/src/public-api/contracts.d.ts +3 -2
  79. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -1
  80. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +1 -1
  81. package/dist/_dts/sdk/src/version.d.ts +1 -1
  82. package/dist/_dts/site-commands/src/commands.d.ts +13 -10
  83. package/dist/_dts/theme-core/src/accordions/types.d.ts +2 -2
  84. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
  85. package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +17 -0
  86. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -1
  87. package/dist/_dts/theme-core/src/buttons/types.d.ts +3 -3
  88. package/dist/_dts/theme-core/src/cards/types.d.ts +3 -3
  89. package/dist/_dts/theme-core/src/footer/mode.d.ts +15 -0
  90. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  91. package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
  92. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +36 -30
  93. package/dist/_dts/theme-core/src/navigation/types.d.ts +1 -1
  94. package/dist/_dts/theme-core/src/schema.d.ts +1186 -34
  95. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +12 -1
  96. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +15 -0
  97. package/dist/cli/index.mjs +760 -374
  98. package/dist/client/{DiscountCodeDisclosure-BwGkvmVH.mjs → DiscountCodeDisclosure-D6TOf6Hi.mjs} +1 -1
  99. package/dist/client/{EventCombined.client-JnWE6Hzc.mjs → EventCombined.client-Dao3zxRk.mjs} +3 -3
  100. package/dist/client/{EventListing.client-DQewc_kg.mjs → EventListing.client-B2NNt4y1.mjs} +2 -2
  101. package/dist/client/{LeafletStaticMap-DPAU3SFt.mjs → LeafletStaticMap-BhwFo16w.mjs} +1 -1
  102. package/dist/client/{MagicLinkForm-D4kpWCbW.mjs → MagicLinkForm-BWnB7cMR.mjs} +2 -2
  103. package/dist/client/{StepIndicator-CBlkb4rA.mjs → StepIndicator-TzRiQ0BY.mjs} +2 -2
  104. package/dist/client/{accordion-DAIBVpTS.mjs → accordion-BPy-AJ4_.mjs} +1 -1
  105. package/dist/client/{bookingForm-DZ-4l5_1.mjs → bookingForm-BL4PGZds.mjs} +6 -6
  106. package/dist/client/bookings.mjs +143 -94
  107. package/dist/client/{buttons-DJgynGHQ.mjs → buttons-EBjyslaX.mjs} +144 -95
  108. package/dist/client/{carousel-D-SLfX8r.mjs → carousel-C2b7Cn9-.mjs} +1 -1
  109. package/dist/client/{cart-CEgbgJhX.mjs → cart-BQcbXIVD.mjs} +3 -3
  110. package/dist/client/{checkout-CXWrCRAA.mjs → checkout-DEmpGRJu.mjs} +3 -3
  111. package/dist/client/client.mjs +827 -434
  112. package/dist/client/{courseRegistration-DVmLrRVz.mjs → courseRegistration-BqRZPmsq.mjs} +7 -7
  113. package/dist/client/{eventCalendar-DCuyPY_c.mjs → eventCalendar-B8N_tSl5.mjs} +5 -5
  114. package/dist/client/{eventCombined-kP2CA2D4.mjs → eventCombined-Gjn6gtq7.mjs} +2 -2
  115. package/dist/client/{eventDetails-DU0LeF5e.mjs → eventDetails-M-VCxA-r.mjs} +3 -3
  116. package/dist/client/{eventListing-CcHF87BI.mjs → eventListing-DR19hqYi.mjs} +2 -2
  117. package/dist/client/{eventRegistration-DJnR0yFH.mjs → eventRegistration-BR02a0k3.mjs} +7 -7
  118. package/dist/client/{form-CH1lCusH.mjs → form-LY2xIbwg.mjs} +2 -2
  119. package/dist/client/{headerSection-CBPFZoku.mjs → headerSection-CYwwXJfh.mjs} +3 -3
  120. package/dist/client/hooks.mjs +377 -362
  121. package/dist/client/{locationMap-Cx1hBg5n.mjs → locationMap-DWnBXrFq.mjs} +2 -2
  122. package/dist/client/{newsletterForm-1ZL_ti9u.mjs → newsletterForm-D9s-fQ2P.mjs} +2 -2
  123. package/dist/client/{pricing-BIbzmV0G.mjs → pricing-DDq80oYc.mjs} +1 -1
  124. package/dist/client/{productDetail-BTh5gHBV.mjs → productDetail-B0SbWd45.mjs} +3 -3
  125. package/dist/client/{productList-Cc7OMrqN.mjs → productList-PwYlZn0y.mjs} +3 -3
  126. package/dist/client/{propsDecoder-oR-M-ISN.mjs → propsDecoder-BRWBiH7i.mjs} +33 -9
  127. package/dist/client/rendering/client.mjs +247 -40
  128. package/dist/client/rendering/islands.mjs +18 -18
  129. package/dist/client/rendering.mjs +478 -270
  130. package/dist/client/{shop-CQ_YbCnn.mjs → shop-CMwZPYME.mjs} +6 -6
  131. package/dist/client/{shop-commerce-BM-AoD3M.mjs → shop-commerce-BuxsFate.mjs} +5 -5
  132. package/dist/client/{shop-commerce-store-DFMQhU5p.mjs → shop-commerce-store-boYlEJ91.mjs} +1 -1
  133. package/dist/client/{shopShared-D0SKO2Cu.mjs → shopShared-D2naaOes.mjs} +2 -2
  134. package/dist/client/{useDiscountCodeUi-CrG4_ARt.mjs → useDiscountCodeUi-D9RHpVoj.mjs} +1 -1
  135. package/dist/client/{useEventFilters-CxK8Fekl.mjs → useEventFilters-igGiK1re.mjs} +3 -3
  136. package/dist/client/{usePolling-jcVryNgZ.mjs → usePolling-CI7MbsFB.mjs} +2 -2
  137. package/dist/preview-next/before-render.mjs +178 -0
  138. package/dist/preview-next/client/runtime.mjs +4 -4
  139. package/dist/preview-next/middleware.mjs +178 -0
  140. package/dist/{previewAuthStore-BPcJPzdz.mjs → previewAuthStore-a_cBD28m.mjs} +178 -0
  141. package/dist/{sdk-runtime-C39Rsk-x.mjs → sdk-runtime-MBzD-GmP.mjs} +2 -2
  142. package/dist/{separator-BoMSQnsP.mjs → separator-5ahRBC85.mjs} +1 -1
  143. package/dist/server/components.mjs +556 -366
  144. package/dist/server/config-validation.mjs +384 -363
  145. package/dist/server/config.mjs +384 -364
  146. package/dist/server/data.mjs +377 -362
  147. package/dist/server/index.mjs +179 -1
  148. package/dist/server/navigation.mjs +9 -3
  149. package/dist/server/next.mjs +1384 -995
  150. package/dist/server/page-converter.mjs +368 -355
  151. package/dist/server/prebuild.mjs +1 -1
  152. package/dist/server/rendering/server.mjs +539 -360
  153. package/dist/server/rendering.mjs +556 -366
  154. package/dist/server/routing.mjs +613 -543
  155. package/dist/server/server.mjs +554 -361
  156. package/dist/server/theme-bridge.mjs +189 -98
  157. package/dist/server/theme.mjs +161 -95
  158. package/dist/styles/index.css +7 -1
  159. package/package.json +1 -1
@@ -541,8 +541,6 @@ var init_executeCodeLoaders = __esmMin((() => {
541
541
  init_defineOwnDataProperty();
542
542
  systemBlockKindSet = new Set(SYSTEM_BLOCK_KINDS);
543
543
  }));
544
- //#endregion
545
- //#region ../api/src/apiEndpointTypes.ts
546
544
  function blockedDemoMutationPolicy(classification, publicMessage) {
547
545
  if (publicMessage.trim() === "") throw new Error(`Demo mutation policy ${classification} requires publicMessage.`);
548
546
  return {
@@ -569,6 +567,7 @@ var TAG_TEMPLATES, init_cache_tags = __esmMin((() => {
569
567
  siteRouteOutcomes: "riverbank:site:{siteId}:route-outcomes",
570
568
  routeById: "riverbank:route:{routeId}",
571
569
  pageById: "riverbank:page:{pageId}",
570
+ pageSurfaceById: "riverbank:page-surface:{pageSurfaceId}",
572
571
  workflowRunById: "riverbank:workflow-run:{runId}",
573
572
  siteForms: "riverbank:site:{siteId}:forms",
574
573
  formById: "riverbank:form:{formId}",
@@ -596,7 +595,44 @@ var init_endpoints = __esmMin((() => {
596
595
  blockedDemoMutationPolicy("blocked-hidden", "This action is not available in demo sites.");
597
596
  blockedDemoMutationPolicy("blocked-disabled", "This setting is disabled in demo sites.");
598
597
  blockedDemoMutationPolicy("internal-only", "This internal operation is not available in demo sites.");
599
- TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.workflowRunById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.formById, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEventFilters, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicTeamMembers, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicPasses, TAG_TEMPLATES.publicMemberships, TAG_TEMPLATES.publicProducts, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicShop, TAG_TEMPLATES.publicCheckout, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents;
598
+ TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.workflowRunById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.formById, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEventFilters, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicTeamMembers, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicPasses, TAG_TEMPLATES.publicMemberships, TAG_TEMPLATES.publicProducts, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicShop, TAG_TEMPLATES.publicCheckout, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents;
599
+ })), API_ERROR_CODES;
600
+ var init_envelope = __esmMin((() => {
601
+ API_ERROR_CODES = [
602
+ "auth:unauthenticated",
603
+ "auth:token_expired",
604
+ "auth:token_invalid",
605
+ "auth:forbidden",
606
+ "auth:mfa_required",
607
+ "auth:sudo_required",
608
+ "auth:insufficient_permissions",
609
+ "auth:impersonation_restricted",
610
+ "validation:invalid_input",
611
+ "validation:missing_field",
612
+ "validation:invalid_format",
613
+ "validation:payload_too_large",
614
+ "resource:not_found",
615
+ "resource:already_exists",
616
+ "resource:conflict",
617
+ "resource:gone",
618
+ "rate_limit:exceeded",
619
+ "billing:payment_required",
620
+ "billing:plan_limit_exceeded",
621
+ "billing:pass_redemption_failed",
622
+ "server:internal_error",
623
+ "server:unavailable",
624
+ "external:service_error",
625
+ "external:registrar_orphaned_contact_profile",
626
+ "network:connection_error",
627
+ "network:timeout",
628
+ "network:dns_error"
629
+ ];
630
+ new Set(API_ERROR_CODES);
631
+ }));
632
+ //#endregion
633
+ //#region ../api/src/footerSettings.ts
634
+ var init_footerSettings = __esmMin((() => {
635
+ init_envelope();
600
636
  }));
601
637
  //#endregion
602
638
  //#region ../core/src/result.ts
@@ -977,6 +1013,22 @@ var init_participant_identity = __esmMin((() => {}));
977
1013
  //#region ../core/src/public-url-validation.ts
978
1014
  var init_public_url_validation = __esmMin((() => {}));
979
1015
  //#endregion
1016
+ //#region ../core/src/public-profile.ts
1017
+ var init_public_profile = __esmMin((() => {}));
1018
+ var init_footer_composition = __esmMin((() => {
1019
+ new Map([
1020
+ "brand",
1021
+ "supporting-text",
1022
+ "social-links",
1023
+ "navigation",
1024
+ "business-address",
1025
+ "contact",
1026
+ "opening-hours",
1027
+ "legal-navigation",
1028
+ "legal"
1029
+ ].map((kind, index) => [kind, index]));
1030
+ }));
1031
+ //#endregion
980
1032
  //#region ../core/src/number-input.ts
981
1033
  var init_number_input = __esmMin((() => {}));
982
1034
  //#endregion
@@ -1054,6 +1106,8 @@ var init_src$4 = __esmMin((() => {
1054
1106
  init_participants();
1055
1107
  init_participant_identity();
1056
1108
  init_public_url_validation();
1109
+ init_public_profile();
1110
+ init_footer_composition();
1057
1111
  init_number_input();
1058
1112
  init_field_errors();
1059
1113
  init_form_submission_preview();
@@ -4414,7 +4468,7 @@ function backgroundColorStyle(token) {
4414
4468
  * @param token - Theme color token
4415
4469
  * @returns CSSProperties with color
4416
4470
  */
4417
- function textColorStyle(token) {
4471
+ function textColorStyle$1(token) {
4418
4472
  const parsed = parseToken(token);
4419
4473
  const surfaceRole = parsed.raw ? null : surfaceRoleForTextToken(parsed.token);
4420
4474
  if (surfaceRole) return { color: parsed.opacityPercent === void 0 ? surfaceForegroundValue(surfaceRole) : surfaceForegroundValueWithOpacity(surfaceRole, parsed.opacityPercent) };
@@ -6273,6 +6327,53 @@ var init_soft_pill = __esmMin((() => {
6273
6327
  ]
6274
6328
  }
6275
6329
  });
6330
+ }));
6331
+ //#endregion
6332
+ //#region ../theme-core/src/buttons/personalities/two-tone-pill.ts
6333
+ var solidSecondary, twoTonePill;
6334
+ var init_two_tone_pill = __esmMin((() => {
6335
+ init_soft_pill();
6336
+ init_types$14();
6337
+ solidSecondary = {
6338
+ id: "secondary",
6339
+ name: "Secondary",
6340
+ enabled: true,
6341
+ priority: 2,
6342
+ background: {
6343
+ type: "solid",
6344
+ colorToken: "secondary"
6345
+ },
6346
+ textColorToken: "onSecondary",
6347
+ borderRadius: "rounded-full",
6348
+ shadow: {
6349
+ elevation: "none",
6350
+ softness: null,
6351
+ position: "bottom"
6352
+ },
6353
+ effects: {
6354
+ hover: [{
6355
+ effectId: "background-on-hover-alpha",
6356
+ options: {
6357
+ colorToken: "secondary",
6358
+ opacity: 88
6359
+ }
6360
+ }],
6361
+ active: [{
6362
+ effectId: "scale-down",
6363
+ options: { scale: "0.98" }
6364
+ }]
6365
+ }
6366
+ };
6367
+ twoTonePill = defineButtonPersonality({
6368
+ id: "two-tone-pill",
6369
+ name: "Two-tone Pill",
6370
+ description: "Rounded pills with distinct solid primary and secondary brand colours.",
6371
+ tags: softPill.tags,
6372
+ buttonSystem: {
6373
+ ...softPill.buttonSystem,
6374
+ variants: softPill.buttonSystem.variants.map((variant) => variant.id === "secondary" ? solidSecondary : variant)
6375
+ }
6376
+ });
6276
6377
  })), buttonPersonalities;
6277
6378
  var init_personalities = __esmMin((() => {
6278
6379
  init_brushed_wash();
@@ -6287,9 +6388,11 @@ var init_personalities = __esmMin((() => {
6287
6388
  init_quiet_arrow();
6288
6389
  init_showtime_pill();
6289
6390
  init_soft_pill();
6391
+ init_two_tone_pill();
6290
6392
  init_types$14();
6291
6393
  buttonPersonalities = [
6292
6394
  softPill,
6395
+ twoTonePill,
6293
6396
  earthPill,
6294
6397
  confidentChip,
6295
6398
  editorialLink,
@@ -7349,7 +7452,24 @@ var init_tokenOrColor = __esmMin((() => {
7349
7452
  "white",
7350
7453
  "yellow"
7351
7454
  ]);
7352
- })), axesSchema, colourHexString, paletteColorSchema, paletteMetaSchema, paletteSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, noHeadingDecorationSchema, visibleHeadingDecorationSchema, headingDecorationSchema, headingDecorationOverrideSchema, accordionIconTreatmentSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, eyebrowTypographyStyleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, testimonialQuoteTreatmentSchema, themeSchema;
7455
+ }));
7456
+ //#endregion
7457
+ //#region ../theme-core/src/schema.ts
7458
+ /**
7459
+ * Normalises the legacy `navTypography` font-role alias into the canonical
7460
+ * `navFontRole` field so persisted themes migrate at the parse boundary without
7461
+ * a data migration. `navFontRole` always wins when both are present; the legacy
7462
+ * field is dropped so we never carry a dual write forward.
7463
+ */
7464
+ function normaliseHeaderNavFontRole(header) {
7465
+ if (header.navTypography === void 0) return header;
7466
+ const { navTypography, ...rest } = header;
7467
+ return header.navFontRole === void 0 ? {
7468
+ ...rest,
7469
+ navFontRole: navTypography
7470
+ } : rest;
7471
+ }
7472
+ var axesSchema, colourHexString, paletteColorSchema, paletteMetaSchema, paletteSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, noHeadingDecorationSchema, visibleHeadingDecorationSchema, headingDecorationSchema, headingDecorationOverrideSchema, accordionIconTreatmentSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, eyebrowTypographyStyleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerBarFrame, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, testimonialQuoteTreatmentSchema, themeSchema;
7353
7473
  var init_schema$2 = __esmMin((() => {
7354
7474
  init_media$3();
7355
7475
  init_buttons();
@@ -7782,6 +7902,7 @@ var init_schema$2 = __esmMin((() => {
7782
7902
  "bold"
7783
7903
  ]);
7784
7904
  headerMaxWidth = z$1.enum(["container", "full"]);
7905
+ headerBarFrame = z$1.enum(["full-bleed", "inset-shell"]);
7785
7906
  headerContainerSchema = z$1.object({
7786
7907
  rounded: z$1.enum([
7787
7908
  "none",
@@ -7922,6 +8043,7 @@ var init_schema$2 = __esmMin((() => {
7922
8043
  positioning: headerPositioning,
7923
8044
  shrinkOnScroll: z$1.boolean(),
7924
8045
  maxWidth: headerMaxWidth,
8046
+ barFrame: headerBarFrame.optional(),
7925
8047
  logoOverride: mediaSchema$1.nullable().optional(),
7926
8048
  background: headerBackgroundSchema.default({
7927
8049
  type: "color",
@@ -7931,6 +8053,7 @@ var init_schema$2 = __esmMin((() => {
7931
8053
  navStyle: headerNavStyle,
7932
8054
  navColor: themeColorTokenSchema.nullable().optional(),
7933
8055
  navWeight: navFontWeight.default("medium"),
8056
+ navFontRole: z$1.enum(["body", "heading"]).optional(),
7934
8057
  navTypography: z$1.enum(["body", "heading"]).optional(),
7935
8058
  navTextSize: navLinkStyleSchema.shape.textSize,
7936
8059
  navPlacement: z$1.enum(["end", "center"]).optional(),
@@ -7946,7 +8069,7 @@ var init_schema$2 = __esmMin((() => {
7946
8069
  ctaTreatment: headerCtaTreatmentSchema.optional(),
7947
8070
  ctaVariant: z$1.string().min(1).optional(),
7948
8071
  dropdownStyle: dropdownStyleSchema
7949
- });
8072
+ }).transform(normaliseHeaderNavFontRole);
7950
8073
  footerVariant = z$1.enum([
7951
8074
  "simple",
7952
8075
  "columns",
@@ -9734,7 +9857,7 @@ function asHeaderStyleId(value) {
9734
9857
  * optional nested styling fields that would otherwise leak from another Look.
9735
9858
  */
9736
9859
  function baseHeader(theme) {
9737
- const { navLinkStyle: _navLinkStyle, navTypography: _navTypography, navTextSize: _navTextSize, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
9860
+ const { navLinkStyle: _navLinkStyle, navFontRole: _navFontRole, navTypography: _navTypography, navTextSize: _navTextSize, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
9738
9861
  return {
9739
9862
  ...header,
9740
9863
  navContainer: {
@@ -10355,6 +10478,17 @@ var init_headerLooks = __esmMin((() => {
10355
10478
  navTypography: "brand-caps",
10356
10479
  moods: ["expressive"]
10357
10480
  },
10481
+ {
10482
+ id: asHeaderStyleId("brand-capsule"),
10483
+ label: "Brand Capsule",
10484
+ description: "Solid brand chrome designed as a floating capsule, with quiet-caps nav, a soft pill active state, and an inverted CTA pill.",
10485
+ supportedLayoutIds: supportedLayouts(["classic"]),
10486
+ navInteraction: "pill-background",
10487
+ surface: "brand-solid",
10488
+ defaultDepth: "shadow",
10489
+ navTypography: "quiet-caps",
10490
+ moods: ["expressive", "professional"]
10491
+ },
10358
10492
  {
10359
10493
  id: asHeaderStyleId("serif-line"),
10360
10494
  label: "Serif Line",
@@ -10448,6 +10582,7 @@ var init_headerLooks = __esmMin((() => {
10448
10582
  "brand-bar",
10449
10583
  "brand-underline",
10450
10584
  "brand-pill",
10585
+ "brand-capsule",
10451
10586
  "serif-line",
10452
10587
  "flat-tabs"
10453
10588
  ])],
@@ -10482,6 +10617,11 @@ var init_headerLooks = __esmMin((() => {
10482
10617
  "brand-pill",
10483
10618
  "brand-bar",
10484
10619
  "minimal"
10620
+ ]), headerStyleRepairChain([
10621
+ "brand-capsule",
10622
+ "brand-pill",
10623
+ "brand-bar",
10624
+ "minimal"
10485
10625
  ]), headerStyleRepairChain([
10486
10626
  "pill-nav",
10487
10627
  "soft-bar",
@@ -12401,6 +12541,7 @@ var init_curatedSiteStyles = __esmMin((() => {
12401
12541
  ],
12402
12542
  buttonPersonalityChoices: [
12403
12543
  buttonChoice("soft-pill"),
12544
+ buttonChoice("two-tone-pill"),
12404
12545
  buttonChoice("pebble"),
12405
12546
  buttonChoice("editorial-link"),
12406
12547
  buttonChoice("brushed-wash")
@@ -13580,6 +13721,7 @@ var init_curatedSiteStyles = __esmMin((() => {
13580
13721
  ],
13581
13722
  buttonPersonalityChoices: [
13582
13723
  buttonChoice("quiet-arrow"),
13724
+ buttonChoice("two-tone-pill"),
13583
13725
  buttonChoice("flat-ink"),
13584
13726
  buttonChoice("editorial-link")
13585
13727
  ],
@@ -15944,7 +16086,7 @@ var init_validation_constants = __esmMin((() => {
15944
16086
  "media.fromUrl",
15945
16087
  "background.resolveStyle",
15946
16088
  "background.resolveColorsStyle",
15947
- "background.resolveAllowOverflow",
16089
+ "background.resolveFrameClassName",
15948
16090
  "background.resolveImageStyle",
15949
16091
  "background.resolveImageClassName",
15950
16092
  "background.resolveOverlayStyle",
@@ -17529,7 +17671,7 @@ function el$1(type, props, children, ...mods) {
17529
17671
  }
17530
17672
  return devValidate(node);
17531
17673
  }
17532
- function bind$1(from, options) {
17674
+ function bind$2(from, options) {
17533
17675
  return (node) => ({
17534
17676
  ...node,
17535
17677
  $bind: {
@@ -17541,7 +17683,7 @@ function bind$1(from, options) {
17541
17683
  }
17542
17684
  });
17543
17685
  }
17544
- function when(path, options) {
17686
+ function when$1(path, options) {
17545
17687
  return (node) => ({
17546
17688
  ...node,
17547
17689
  $when: {
@@ -17600,7 +17742,7 @@ function devValidate(node) {
17600
17742
  } catch {}
17601
17743
  return node;
17602
17744
  }
17603
- var section, headerSection, stack, inline, accordion, accordionItem, carousel, text, richText, icon, media, fileDownload, videoEmbed, button, link, form, bookingForm, eventRegistration, shop, productList, productDetail, cart, checkout, gifting, courseRegistration;
17745
+ var section, headerSection, stack, inline, accordion, accordionItem, carousel, text, richText$1, icon, media, fileDownload, videoEmbed, button, link, form, bookingForm, eventRegistration, shop, productList, productDetail, cart, checkout, gifting, courseRegistration;
17604
17746
  var init_builder$1 = __esmMin((() => {
17605
17747
  init_schema$1();
17606
17748
  init_types$5();
@@ -17613,7 +17755,7 @@ var init_builder$1 = __esmMin((() => {
17613
17755
  accordionItem = (props, children, ...mods) => el$1("accordionItem", props, children, ...mods);
17614
17756
  carousel = (props, children, ...mods) => el$1("carousel", props, children, ...mods);
17615
17757
  text = (props, ...mods) => el$1("text", props, void 0, ...mods);
17616
- richText = (props, ...mods) => el$1("richText", props, void 0, ...mods);
17758
+ richText$1 = (props, ...mods) => el$1("richText", props, void 0, ...mods);
17617
17759
  icon = (props, ...mods) => el$1("icon", props, void 0, ...mods);
17618
17760
  media = (props, ...mods) => el$1("media", props, void 0, ...mods);
17619
17761
  fileDownload = (props, ...mods) => el$1("file-download", props, void 0, ...mods);
@@ -17698,6 +17840,34 @@ function backgroundLayer(path, options = {}) {
17698
17840
  ];
17699
17841
  }
17700
17842
  /**
17843
+ * Wrap decorative background layers in their own clipping frame.
17844
+ *
17845
+ * Foreground content remains outside this frame, so editor outlines, focus
17846
+ * rings, and floating controls are never clipped by a visual background.
17847
+ * Backgrounds that explicitly opt into overflow keep that behavior within
17848
+ * the decorative layer rather than changing the content root.
17849
+ */
17850
+ function backgroundFrame(path, options = {}) {
17851
+ const { leadingNodes = [], ...layerOptions } = options;
17852
+ const framedLayerOptions = {
17853
+ ...layerOptions,
17854
+ styleClassName: layerOptions.styleClassName ?? "background-style rb-absolute rb-inset-0 rb-z-0 rb-h-full rb-w-full rb-pointer-events-none",
17855
+ imageClassName: layerOptions.imageClassName ?? "rb-absolute rb-z-0",
17856
+ overlayClassName: layerOptions.overlayClassName ?? "background-overlay rb-absolute rb-inset-0 rb-z-0 rb-h-full rb-w-full rb-pointer-events-none"
17857
+ };
17858
+ return el$1("div", {
17859
+ className: { $bind: {
17860
+ from: path,
17861
+ transforms: [{
17862
+ id: "background.resolveFrameClassName",
17863
+ options: { baseClass: BACKGROUND_FRAME_BASE_CLASS }
17864
+ }],
17865
+ fallback: `${BACKGROUND_FRAME_BASE_CLASS} rb-overflow-hidden`
17866
+ } },
17867
+ style: { borderRadius: "inherit" }
17868
+ }, [...leadingNodes, ...backgroundLayer(path, framedLayerOptions)]);
17869
+ }
17870
+ /**
17701
17871
  * Creates a media node for rendering background image/video media with conditional rendering.
17702
17872
  *
17703
17873
  * This helper creates a media element that:
@@ -17740,7 +17910,7 @@ function createBackgroundImageNode(path, baseClassName = "rb-absolute rb-z-neg-1
17740
17910
  videoPlayback: "background",
17741
17911
  ...options.loading ? { loading: options.loading } : {},
17742
17912
  ...options.fetchPriority ? { fetchPriority: options.fetchPriority } : {}
17743
- }, when(imagePath), bind$1(imagePath));
17913
+ }, when$1(imagePath), bind$2(imagePath));
17744
17914
  }
17745
17915
  /**
17746
17916
  * Creates a div node for rendering color/gradient overlays on background images.
@@ -17772,8 +17942,10 @@ function createBackgroundOverlayNode(path, className = "background-overlay rb-ab
17772
17942
  } }
17773
17943
  });
17774
17944
  }
17945
+ var BACKGROUND_FRAME_BASE_CLASS;
17775
17946
  var init_backgroundLayer = __esmMin((() => {
17776
17947
  init_builder$1();
17948
+ BACKGROUND_FRAME_BASE_CLASS = "rb-background-frame rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-isolate rb-pointer-events-none";
17777
17949
  }));
17778
17950
  //#endregion
17779
17951
  //#region ../blocks/src/system/node/fragments/eyebrow.ts
@@ -17799,11 +17971,11 @@ function headingGroup(opts) {
17799
17971
  as: "p",
17800
17972
  className: eyebrowClassName(eyebrowClass),
17801
17973
  style: eyebrowStyle
17802
- }, when(eyebrowPath), bind$1(eyebrowPath)) : null, text({
17974
+ }, when$1(eyebrowPath), bind$2(eyebrowPath)) : null, text({
17803
17975
  as: "h2",
17804
17976
  className: titleClass,
17805
17977
  style: titleStyle
17806
- }, bind$1(titlePath))]);
17978
+ }, bind$2(titlePath))]);
17807
17979
  }
17808
17980
  var init_headingGroup = __esmMin((() => {
17809
17981
  init_builder$1();
@@ -17873,8 +18045,8 @@ var init_sectionContainer = __esmMin((() => {
17873
18045
  * - content
17874
18046
  */
17875
18047
  function styledContainer(config) {
17876
- const { children, rootType = "div", rootProps, bindFrom = "_containerStyles", baseClassName = "rb-relative rb-isolate rb-overflow-hidden", imageClassName = "rb-absolute rb-z-neg-10", constrainWidth = true } = config;
17877
- const backgroundNodes = backgroundLayer(`${bindFrom}.background`, { imageClassName });
18048
+ const { children, rootType = "div", rootProps, bindFrom = "_containerStyles", baseClassName = "rb-relative rb-isolate rb-overflow-visible", imageClassName = "rb-absolute rb-z-0", constrainWidth = true } = config;
18049
+ const backgroundNode = backgroundFrame(`${bindFrom}.background`, { imageClassName });
17878
18050
  const childrenArray = Array.isArray(children) ? children : [children];
17879
18051
  const { className: _ignoredClassName, style: _ignoredStyle, ...safeRootProps } = rootProps ?? {};
17880
18052
  return el$1(rootType, {
@@ -17897,7 +18069,7 @@ function styledContainer(config) {
17897
18069
  }],
17898
18070
  fallback: constrainWidth ? `${baseClassName} rb-container` : baseClassName
17899
18071
  } }
17900
- }, [...backgroundNodes, ...childrenArray]);
18072
+ }, [backgroundNode, ...childrenArray]);
17901
18073
  }
17902
18074
  var init_styledContainer = __esmMin((() => {
17903
18075
  init_builder$1();
@@ -17995,7 +18167,7 @@ var init_spacing = __esmMin((() => {
17995
18167
  * - Creating a section wrapper with background theme
17996
18168
  * - Adding background color/gradient/image layers
17997
18169
  * - Binding className to section styles with transform
17998
- * - Binding allowOverflow for background positioning
18170
+ * - Keeping foreground overflow visible while decorative backgrounds clip independently
17999
18171
  * - Wrapping content children
18000
18172
  *
18001
18173
  * Use this helper to eliminate 25+ lines of boilerplate section setup code.
@@ -18031,8 +18203,8 @@ var init_spacing = __esmMin((() => {
18031
18203
  * });
18032
18204
  */
18033
18205
  function styledSection(config) {
18034
- const { children, baseClass = "rb-px-6", spacing = DEFAULT_SECTION_SPACING, background = "background", bindFrom = "_sectionStyles", imageClassName = "rb-absolute rb-z-neg-10", renderBackgroundImage = true, backgroundImageLoading, backgroundImageFetchPriority, allowOverflow = false, fullWidthPath } = config;
18035
- const renderedBackgroundNodes = backgroundLayer(`${bindFrom}.background`, {
18206
+ const { children, baseClass = "rb-px-6", spacing = DEFAULT_SECTION_SPACING, background = "background", bindFrom = "_sectionStyles", imageClassName = "rb-absolute rb-z-0", renderBackgroundImage = true, backgroundImageLoading, backgroundImageFetchPriority, fullWidthPath } = config;
18207
+ const renderedBackgroundNode = backgroundFrame(`${bindFrom}.background`, {
18036
18208
  imageClassName,
18037
18209
  fallbackToken: background,
18038
18210
  omitImageLayer: !renderBackgroundImage,
@@ -18055,13 +18227,8 @@ function styledSection(config) {
18055
18227
  fullWidthPath
18056
18228
  }
18057
18229
  }]
18058
- } },
18059
- allowOverflow: allowOverflow ? true : { $bind: {
18060
- from: `${bindFrom}.background`,
18061
- transforms: [{ id: "background.resolveAllowOverflow" }],
18062
- fallback: false
18063
18230
  } }
18064
- }, [...renderedBackgroundNodes, ...childrenArray]);
18231
+ }, [renderedBackgroundNode, ...childrenArray]);
18065
18232
  }
18066
18233
  var init_styledSection = __esmMin((() => {
18067
18234
  init_builder$1();
@@ -18079,9 +18246,9 @@ function ctaButton$1(opts) {
18079
18246
  const iconLeftPath = opts?.iconLeftPath ?? `${base}.iconLeft`;
18080
18247
  const iconRightPath = opts?.iconRightPath ?? `${base}.iconRight`;
18081
18248
  const whenPath = opts?.whenPath ?? labelPath;
18082
- const leftIcon = icon({ className: "rb-mr-2 rb-h-4 rb-w-4 rb-inline-block" }, when(iconLeftPath), bind$1(iconLeftPath));
18083
- const rightIcon = icon({ className: "rb-ml-2 rb-h-4 rb-w-4 rb-inline-block" }, when(iconRightPath), bind$1(iconRightPath));
18084
- const label = text({ as: "span" }, bind$1(labelPath));
18249
+ const leftIcon = icon({ className: "rb-mr-2 rb-h-4 rb-w-4 rb-inline-block" }, when$1(iconLeftPath), bind$2(iconLeftPath));
18250
+ const rightIcon = icon({ className: "rb-ml-2 rb-h-4 rb-w-4 rb-inline-block" }, when$1(iconRightPath), bind$2(iconRightPath));
18251
+ const label = text({ as: "span" }, bind$2(labelPath));
18085
18252
  const node = button({
18086
18253
  variantId: { $bind: {
18087
18254
  from: variantPath,
@@ -18103,7 +18270,7 @@ function ctaButton$1(opts) {
18103
18270
  rightIcon
18104
18271
  ]);
18105
18272
  if (opts?.repeatFrom) return button(node.props ?? {}, node.children, repeat(opts.repeatFrom.collectionPath, opts.repeatFrom.itemName ?? base));
18106
- return button(node.props ?? {}, node.children, when(whenPath));
18273
+ return button(node.props ?? {}, node.children, when$1(whenPath));
18107
18274
  }
18108
18275
  var init_ctaButton = __esmMin((() => {
18109
18276
  init_builder$1();
@@ -18123,7 +18290,7 @@ function ctaRow(opts) {
18123
18290
  collectionPath,
18124
18291
  itemName: item
18125
18292
  }
18126
- })], when(collectionPath));
18293
+ })], when$1(collectionPath));
18127
18294
  }
18128
18295
  var init_ctaRow$1 = __esmMin((() => {
18129
18296
  init_builder$1();
@@ -18153,7 +18320,7 @@ function createCartFallbackLink(itemName, linkClassName) {
18153
18320
  } },
18154
18321
  linkRequired: true,
18155
18322
  "aria-label": { $bind: { from: `${itemName}.cart.ariaLabel` } }
18156
- }, [text({ as: "span" }, bind$1(`${itemName}.label`))], when(`${itemName}.cart`));
18323
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`))], when$1(`${itemName}.cart`));
18157
18324
  }
18158
18325
  function createCartPlaceholder(opts) {
18159
18326
  const { itemName, className, context, fallbackLinkClassName } = opts;
@@ -18166,7 +18333,7 @@ function createCartPlaceholder(opts) {
18166
18333
  "data-nav-cart-visible-label": { $bind: { from: `${itemName}.cart.visibleLabel` } },
18167
18334
  "data-nav-cart-badge": { $bind: { from: `${itemName}.cart.badge` } },
18168
18335
  "data-nav-cart-checkout-href": { $bind: { from: `${itemName}.cart.checkoutHref` } }
18169
- }, [createCartFallbackLink(itemName, fallbackLinkClassName)], when(`${itemName}.cart`));
18336
+ }, [createCartFallbackLink(itemName, fallbackLinkClassName)], when$1(`${itemName}.cart`));
18170
18337
  }
18171
18338
  function navRow(opts) {
18172
18339
  const collectionPath = opts?.collectionPath ?? "menu.items";
@@ -18190,7 +18357,7 @@ function navRow(opts) {
18190
18357
  target: { $bind: { from: `${itemName}.target` } },
18191
18358
  rel: { $bind: { from: `${itemName}.rel` } },
18192
18359
  "data-active": { $bind: { from: `${itemName}.active` } }
18193
- }, [text({ as: "span" }, bind$1(`${itemName}.label`))], when(`${itemName}.children`, { not: true }));
18360
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`))], when$1(`${itemName}.children`, { not: true }));
18194
18361
  const cartPlaceholder = createCartPlaceholder({
18195
18362
  itemName,
18196
18363
  className: "nav-cart-placeholder rb-inline-flex",
@@ -18211,7 +18378,7 @@ function navRow(opts) {
18211
18378
  target: { $bind: { from: `${childItemName}.target` } },
18212
18379
  rel: { $bind: { from: `${childItemName}.rel` } },
18213
18380
  "data-active": { $bind: { from: `${childItemName}.active` } }
18214
- }, [text({ as: "span" }, bind$1(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName));
18381
+ }, [text({ as: "span" }, bind$2(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName));
18215
18382
  const dropdown = el$1("div", { className: "nav-dropdown rb-relative" }, [button({
18216
18383
  type: "button",
18217
18384
  variantId: "",
@@ -18219,12 +18386,12 @@ function navRow(opts) {
18219
18386
  "aria-haspopup": "menu",
18220
18387
  "aria-expanded": "false",
18221
18388
  "aria-controls": dropdownMenuId
18222
- }, [text({ as: "span" }, bind$1(`${itemName}.label`)), dropdownCaret]), el$1("div", {
18389
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`)), dropdownCaret]), el$1("div", {
18223
18390
  className: "nav-dropdown-menu rb-absolute rb-left-0 rb-top-full rb-z-50 rb-hidden rb-overflow-hidden",
18224
18391
  id: dropdownMenuId
18225
- }, [dropdownLinks])], when(`${itemName}.children`));
18392
+ }, [dropdownLinks])], when$1(`${itemName}.children`));
18226
18393
  const item = el$1("div", { className: "nav-row-item rb-relative" }, [
18227
- el$1("div", {}, [simpleLink], when(`${itemName}.cart`, { not: true })),
18394
+ el$1("div", {}, [simpleLink], when$1(`${itemName}.cart`, { not: true })),
18228
18395
  cartPlaceholder,
18229
18396
  dropdown
18230
18397
  ], repeat(collectionPath, itemName));
@@ -18232,7 +18399,7 @@ function navRow(opts) {
18232
18399
  gap,
18233
18400
  align,
18234
18401
  className
18235
- }, [item], when(collectionPath));
18402
+ }, [item], when$1(collectionPath));
18236
18403
  }
18237
18404
  function navColumn(opts) {
18238
18405
  const collectionPath = opts?.collectionPath ?? "menu.items";
@@ -18261,7 +18428,7 @@ function navColumn(opts) {
18261
18428
  target: { $bind: { from: `${itemName}.target` } },
18262
18429
  rel: { $bind: { from: `${itemName}.rel` } },
18263
18430
  "data-active": { $bind: { from: `${itemName}.active` } }
18264
- }, [text({ as: "span" }, bind$1(`${itemName}.label`))], when(`${itemName}.children`, { not: true }));
18431
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`))], when$1(`${itemName}.children`, { not: true }));
18265
18432
  const cartPlaceholder = createCartPlaceholder({
18266
18433
  itemName,
18267
18434
  className: "nav-mobile-cart-placeholder rb-block rb-w-full",
@@ -18278,7 +18445,7 @@ function navColumn(opts) {
18278
18445
  target: { $bind: { from: `${childItemName}.target` } },
18279
18446
  rel: { $bind: { from: `${childItemName}.rel` } },
18280
18447
  "data-active": { $bind: { from: `${childItemName}.active` } }
18281
- }, [text({ as: "span" }, bind$1(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName));
18448
+ }, [text({ as: "span" }, bind$2(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName));
18282
18449
  const dropdown = el$1("div", {
18283
18450
  className: "nav-mobile-dropdown",
18284
18451
  "data-nav-mobile-dropdown": "true"
@@ -18289,13 +18456,13 @@ function navColumn(opts) {
18289
18456
  "aria-expanded": "false",
18290
18457
  "aria-controls": childrenId,
18291
18458
  "data-nav-mobile-trigger": "true"
18292
- }, [text({ as: "span" }, bind$1(`${itemName}.label`)), dropdownCaret]), el$1("div", {
18459
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`)), dropdownCaret]), el$1("div", {
18293
18460
  className: childrenClassName,
18294
18461
  id: childrenId,
18295
18462
  "data-nav-mobile-children": "true"
18296
- }, [childLinks])], when(`${itemName}.children`));
18463
+ }, [childLinks])], when$1(`${itemName}.children`));
18297
18464
  const item = el$1("div", { className: "nav-mobile-item" }, [
18298
- el$1("div", {}, [simpleLink], when(`${itemName}.cart`, { not: true })),
18465
+ el$1("div", {}, [simpleLink], when$1(`${itemName}.cart`, { not: true })),
18299
18466
  cartPlaceholder,
18300
18467
  dropdown
18301
18468
  ], repeat(collectionPath, itemName));
@@ -18303,7 +18470,7 @@ function navColumn(opts) {
18303
18470
  className,
18304
18471
  gap: "sm",
18305
18472
  align: "stretch"
18306
- }, [item], when(collectionPath));
18473
+ }, [item], when$1(collectionPath));
18307
18474
  }
18308
18475
  var init_navRow = __esmMin((() => {
18309
18476
  init_builder$1();
@@ -18323,7 +18490,7 @@ function buildFooterNavAll(common) {
18323
18490
  target: { $bind: { from: `${itemName}.target` } },
18324
18491
  rel: { $bind: { from: `${itemName}.rel` } },
18325
18492
  "data-active": { $bind: { from: `${itemName}.active` } }
18326
- }, [text({ as: "span" }, bind$1(`${itemName}.label`))], when(`${itemName}.children`, { not: true }));
18493
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`))], when$1(`${itemName}.children`, { not: true }));
18327
18494
  const childLinks = link({
18328
18495
  className: common.childLinkClassName,
18329
18496
  href: { $bind: {
@@ -18334,8 +18501,8 @@ function buildFooterNavAll(common) {
18334
18501
  target: { $bind: { from: `${childItemName}.target` } },
18335
18502
  rel: { $bind: { from: `${childItemName}.rel` } },
18336
18503
  "data-active": { $bind: { from: `${childItemName}.active` } }
18337
- }, [text({ as: "span" }, bind$1(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName));
18338
- const item = el$1("div", { className: "footer-nav-item" }, [simpleLink, el$1("div", { className: "footer-nav-group" }, [el$1("span", { className: common.labelClassName }, [text({ as: "span" }, bind$1(`${itemName}.label`))]), el$1("div", { className: "footer-nav-children rb-pl-4 rb-mt-1" }, [childLinks])], when(`${itemName}.children`))], repeat(collectionPath, itemName));
18504
+ }, [text({ as: "span" }, bind$2(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName));
18505
+ const item = el$1("div", { className: "footer-nav-item" }, [simpleLink, el$1("div", { className: "footer-nav-group" }, [el$1("span", { className: common.labelClassName }, [text({ as: "span" }, bind$2(`${itemName}.label`))]), el$1("div", { className: "footer-nav-children rb-pl-4 rb-mt-1" }, [childLinks])], when$1(`${itemName}.children`))], repeat(collectionPath, itemName));
18339
18506
  return stack({
18340
18507
  className: common.className,
18341
18508
  gap: common.gap,
@@ -18354,7 +18521,7 @@ function buildFooterNavLinksOnly(common) {
18354
18521
  target: { $bind: { from: `${itemName}.target` } },
18355
18522
  rel: { $bind: { from: `${itemName}.rel` } },
18356
18523
  "data-active": { $bind: { from: `${itemName}.active` } }
18357
- }, [text({ as: "span" }, bind$1(`${itemName}.label`))], when(`${itemName}.children`, { not: true }))], repeat(collectionPath, itemName), when(`${itemName}.children`, { not: true }));
18524
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`))], when$1(`${itemName}.children`, { not: true }))], repeat(collectionPath, itemName), when$1(`${itemName}.children`, { not: true }));
18358
18525
  return stack({
18359
18526
  className: common.className,
18360
18527
  gap: common.gap,
@@ -18373,7 +18540,7 @@ function buildFooterNavFlatten(common) {
18373
18540
  target: { $bind: { from: `${itemName}.target` } },
18374
18541
  rel: { $bind: { from: `${itemName}.rel` } },
18375
18542
  "data-active": { $bind: { from: `${itemName}.active` } }
18376
- }, [text({ as: "span" }, bind$1(`${itemName}.label`))], when(`${itemName}.children`, { not: true })), link({
18543
+ }, [text({ as: "span" }, bind$2(`${itemName}.label`))], when$1(`${itemName}.children`, { not: true })), link({
18377
18544
  className: common.linkClassName,
18378
18545
  href: { $bind: {
18379
18546
  from: `${childItemName}.link`,
@@ -18383,7 +18550,7 @@ function buildFooterNavFlatten(common) {
18383
18550
  target: { $bind: { from: `${childItemName}.target` } },
18384
18551
  rel: { $bind: { from: `${childItemName}.rel` } },
18385
18552
  "data-active": { $bind: { from: `${childItemName}.active` } }
18386
- }, [text({ as: "span" }, bind$1(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName), when(`${itemName}.children`))], repeat(collectionPath, itemName));
18553
+ }, [text({ as: "span" }, bind$2(`${childItemName}.label`))], repeat(`${itemName}.children`, childItemName), when$1(`${itemName}.children`))], repeat(collectionPath, itemName));
18387
18554
  return stack({
18388
18555
  className: common.className,
18389
18556
  gap: common.gap,
@@ -18871,9 +19038,12 @@ var init_responsiveTwoColumn = __esmMin((() => {
18871
19038
  //#endregion
18872
19039
  //#region ../blocks/src/system/node/fragments/styledCard.ts
18873
19040
  function styledCard(children, opts, ...mods) {
18874
- const baseClassName = opts.baseClassName ?? "rb-relative rb-isolate rb-overflow-hidden rb-border";
18875
- const defaultBackgroundLayer = el$1("div", { className: "rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-pointer-events-none rb-bg-surface" });
18876
- const backgroundNodes = backgroundLayer(opts.backgroundFrom);
19041
+ const baseClassName = opts.baseClassName ?? "rb-relative rb-isolate rb-overflow-visible rb-border";
19042
+ const defaultBackgroundLayer = el$1("div", {
19043
+ className: "rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-pointer-events-none rb-bg-surface",
19044
+ style: { borderRadius: "inherit" }
19045
+ });
19046
+ const backgroundNode = backgroundFrame(opts.backgroundFrom);
18877
19047
  const style = {
18878
19048
  ...opts.style ?? {},
18879
19049
  borderColor: { $bind: {
@@ -18900,7 +19070,7 @@ function styledCard(children, opts, ...mods) {
18900
19070
  ...style ? { style } : {}
18901
19071
  }, [
18902
19072
  defaultBackgroundLayer,
18903
- ...backgroundNodes,
19073
+ backgroundNode,
18904
19074
  ...children
18905
19075
  ], ...mods);
18906
19076
  }
@@ -18938,12 +19108,12 @@ function feedbackCallout(opts) {
18938
19108
  fallback: "h3"
18939
19109
  } },
18940
19110
  className: "feedback-callout__title",
18941
- style: textColorStyle("text")
18942
- }, when(titlePath), bind$1(titlePath)),
18943
- richText({
19111
+ style: textColorStyle$1("text")
19112
+ }, when$1(titlePath), bind$2(titlePath)),
19113
+ richText$1({
18944
19114
  className: "feedback-callout__body rb-prose rb-max-w-none",
18945
- style: textColorStyle("mutedText")
18946
- }, bind$1(bodyPath)),
19115
+ style: textColorStyle$1("mutedText")
19116
+ }, bind$2(bodyPath)),
18947
19117
  ctaRow({
18948
19118
  collectionPath: ctasPath,
18949
19119
  itemName: "cta",
@@ -19053,7 +19223,7 @@ var init_fragments$1 = __esmMin((() => {
19053
19223
  }));
19054
19224
  //#endregion
19055
19225
  //#region ../blocks/src/system/fragments/types.ts
19056
- function defineFragment$2(config) {
19226
+ function defineFragment$3(config) {
19057
19227
  const parsed = fragmentConfigSchema.parse(config);
19058
19228
  const fields = parseFieldDefinitions(parsed.fields);
19059
19229
  validateFieldDefinitions(fields, parsed.id);
@@ -19363,7 +19533,7 @@ var bodyCopyFragment;
19363
19533
  var init_bodyCopy = __esmMin((() => {
19364
19534
  init_types$4();
19365
19535
  init_builder$1();
19366
- bodyCopyFragment = defineFragment$2({
19536
+ bodyCopyFragment = defineFragment$3({
19367
19537
  id: "bodyCopy",
19368
19538
  title: "Body Copy",
19369
19539
  description: "Heading, rich text body, and alignment controls.",
@@ -19414,14 +19584,14 @@ var init_bodyCopy = __esmMin((() => {
19414
19584
  }],
19415
19585
  fallback: "body-copy-heading"
19416
19586
  } }
19417
- }, when("content.heading"), bind$1("content.heading")), richText({ className: { $bind: {
19587
+ }, when$1("content.heading"), bind$2("content.heading")), richText$1({ className: { $bind: {
19418
19588
  from: "content.alignment",
19419
19589
  transforms: [{
19420
19590
  id: "ui.bodyClassFromAlignment",
19421
19591
  options: { base: "body-copy-body rb-prose rb-max-w-none" }
19422
19592
  }],
19423
19593
  fallback: "body-copy-body rb-prose rb-max-w-none"
19424
- } } }, bind$1("content.body"))])
19594
+ } } }, bind$2("content.body"))])
19425
19595
  });
19426
19596
  }));
19427
19597
  //#endregion
@@ -19431,7 +19601,7 @@ var init_heroCopy = __esmMin((() => {
19431
19601
  init_types$4();
19432
19602
  init_builder$1();
19433
19603
  init_fragments$1();
19434
- heroCopyFragment = defineFragment$2({
19604
+ heroCopyFragment = defineFragment$3({
19435
19605
  id: "heroCopy",
19436
19606
  title: "Hero Copy",
19437
19607
  description: "Eyebrow, headline, and subheadline copy for hero layouts.",
@@ -19470,17 +19640,17 @@ var init_heroCopy = __esmMin((() => {
19470
19640
  text({
19471
19641
  as: "p",
19472
19642
  className: eyebrowClassName("rb-eyebrow hero-eyebrow")
19473
- }, when("content.eyebrow"), bind$1("content.eyebrow")),
19643
+ }, when$1("content.eyebrow"), bind$2("content.eyebrow")),
19474
19644
  text({
19475
19645
  as: "h1",
19476
19646
  className: "hero-headline heading-display",
19477
19647
  inlineTextFallbackPath: "headline",
19478
19648
  maxLength: 120
19479
- }, bind$1("content.headlineInline")),
19649
+ }, bind$2("content.headlineInline")),
19480
19650
  text({
19481
19651
  as: "p",
19482
19652
  className: "hero-subheadline"
19483
- }, when("content.subheadline"), bind$1("content.subheadline"))
19653
+ }, when$1("content.subheadline"), bind$2("content.subheadline"))
19484
19654
  ]
19485
19655
  });
19486
19656
  }));
@@ -19489,7 +19659,7 @@ var init_heroCopy = __esmMin((() => {
19489
19659
  var heroLayoutControlsFragment;
19490
19660
  var init_heroLayoutControls = __esmMin((() => {
19491
19661
  init_types$4();
19492
- heroLayoutControlsFragment = defineFragment$2({
19662
+ heroLayoutControlsFragment = defineFragment$3({
19493
19663
  id: "heroLayoutControls",
19494
19664
  title: "Hero Layout",
19495
19665
  description: "Title scale, alignment, and content width controls for hero layouts.",
@@ -19785,7 +19955,7 @@ var init_ctaRow = __esmMin((() => {
19785
19955
  init_types$4();
19786
19956
  init_fragments$1();
19787
19957
  init_ctas();
19788
- ctaRowFragment = defineFragment$2({
19958
+ ctaRowFragment = defineFragment$3({
19789
19959
  id: "ctaRow",
19790
19960
  title: "CTA Row",
19791
19961
  description: "Repeatable calls to action rendered inline.",
@@ -19858,7 +20028,7 @@ var init_heroCtaRow = __esmMin((() => {
19858
20028
  defaultSize: "lg"
19859
20029
  }
19860
20030
  })];
19861
- heroCtaRowFragment = defineFragment$2({
20031
+ heroCtaRowFragment = defineFragment$3({
19862
20032
  id: "heroCtaRow",
19863
20033
  title: "Hero CTAs",
19864
20034
  description: "Repeatable hero calls to action rendered inline.",
@@ -19882,7 +20052,7 @@ var init_ctaCopy = __esmMin((() => {
19882
20052
  init_types$4();
19883
20053
  init_fragments$1();
19884
20054
  init_builder$1();
19885
- ctaCopyFragment = defineFragment$2({
20055
+ ctaCopyFragment = defineFragment$3({
19886
20056
  id: "ctaCopy",
19887
20057
  title: "CTA Copy",
19888
20058
  description: "Eyebrow, title, and supporting rich text for CTA layouts.",
@@ -19912,7 +20082,7 @@ var init_ctaCopy = __esmMin((() => {
19912
20082
  eyebrowPath: "content.eyebrow",
19913
20083
  titlePath: "content.title",
19914
20084
  className: "cta-heading"
19915
- }), richText({ className: "cta-content rb-prose rb-mx-auto rb-max-w-none" }, when("content.content"), bind$1("content.content"))]
20085
+ }), richText$1({ className: "cta-content rb-prose rb-mx-auto rb-max-w-none" }, when$1("content.content"), bind$2("content.content"))]
19916
20086
  });
19917
20087
  }));
19918
20088
  //#endregion
@@ -19922,7 +20092,7 @@ var init_testimonialsHeading = __esmMin((() => {
19922
20092
  init_types$4();
19923
20093
  init_builder$1();
19924
20094
  init_colorStyles();
19925
- testimonialsHeadingFragment = defineFragment$2({
20095
+ testimonialsHeadingFragment = defineFragment$3({
19926
20096
  id: "testimonialsHeading",
19927
20097
  title: "Testimonials Heading",
19928
20098
  description: "Heading and subheading copy for testimonials section.",
@@ -19941,11 +20111,11 @@ var init_testimonialsHeading = __esmMin((() => {
19941
20111
  layout: [stack({
19942
20112
  gap: "md",
19943
20113
  className: "rb-mx-auto rb-max-w-2xl rb-text-center"
19944
- }, [text({ as: "h2" }, when("content.heading"), bind$1("content.heading")), text({
20114
+ }, [text({ as: "h2" }, when$1("content.heading"), bind$2("content.heading")), text({
19945
20115
  as: "p",
19946
20116
  className: "rb-prose rb-prose-lg rb-prose-xl-sm",
19947
- style: textColorStyle("mutedText")
19948
- }, when("content.subheading"), bind$1("content.subheading"))])]
20117
+ style: textColorStyle$1("mutedText")
20118
+ }, when$1("content.subheading"), bind$2("content.subheading"))])]
19949
20119
  });
19950
20120
  }));
19951
20121
  //#endregion
@@ -19958,16 +20128,16 @@ function buildAttributionNodes() {
19958
20128
  const name = text({
19959
20129
  as: "strong",
19960
20130
  className: "rb-block"
19961
- }, bind$1("testimonial.content.name", { fallback: "Anonymous" }));
20131
+ }, bind$2("testimonial.content.name", { fallback: "Anonymous" }));
19962
20132
  const jobTitle = text({
19963
20133
  as: "p",
19964
20134
  className: "rb-caption"
19965
- }, when("testimonial.content.jobTitle"), bind$1("testimonial.content.jobTitle"));
20135
+ }, when$1("testimonial.content.jobTitle"), bind$2("testimonial.content.jobTitle"));
19966
20136
  const company = text({
19967
20137
  as: "p",
19968
20138
  className: "rb-caption"
19969
- }, when("testimonial.content.company"), bind$1("testimonial.content.company"));
19970
- const avatar = media({ className: "rb-testimonial-avatar rb-object-cover" }, bind$1("testimonial.content.headshot", { transforms: [{ id: "media.fromUrl" }] }), when("testimonial.content.headshot"));
20139
+ }, when$1("testimonial.content.company"), bind$2("testimonial.content.company"));
20140
+ const avatar = media({ className: "rb-testimonial-avatar rb-object-cover" }, bind$2("testimonial.content.headshot", { transforms: [{ id: "media.fromUrl" }] }), when$1("testimonial.content.headshot"));
19971
20141
  const aboveCentered = stack({
19972
20142
  gap: "sm",
19973
20143
  className: "rb-items-center rb-text-center"
@@ -19980,8 +20150,8 @@ function buildAttributionNodes() {
19980
20150
  company
19981
20151
  ])]);
19982
20152
  return [
19983
- when("avatarLayout", { not: true })(aboveCentered),
19984
- when("avatarLayout", { equals: "above-centered" })(aboveCentered),
20153
+ when$1("avatarLayout", { not: true })(aboveCentered),
20154
+ when$1("avatarLayout", { equals: "above-centered" })(aboveCentered),
19985
20155
  inline({
19986
20156
  gap: "md",
19987
20157
  className: "rb-items-center"
@@ -19989,7 +20159,7 @@ function buildAttributionNodes() {
19989
20159
  name,
19990
20160
  jobTitle,
19991
20161
  company
19992
- ])], when("avatarLayout", { equals: "inline-left" })),
20162
+ ])], when$1("avatarLayout", { equals: "inline-left" })),
19993
20163
  stack({
19994
20164
  gap: "xs",
19995
20165
  className: "rb-text-center"
@@ -19997,7 +20167,7 @@ function buildAttributionNodes() {
19997
20167
  name,
19998
20168
  jobTitle,
19999
20169
  company
20000
- ], when("avatarLayout", { equals: "hidden" }))
20170
+ ], when$1("avatarLayout", { equals: "hidden" }))
20001
20171
  ];
20002
20172
  }
20003
20173
  /**
@@ -20012,10 +20182,10 @@ function buildTestimonialCard(...mods) {
20012
20182
  as: "span",
20013
20183
  className: "rb-testimonial-quote",
20014
20184
  "aria-hidden": "true"
20015
- }, props({ value: "“" })), richText({ className: "rb-prose rb-max-w-none" }, bind$1("testimonial.content.body"), when("testimonial.content.body"))]), el$1("div", { className: "rb-testimonial-attribution" }, buildAttributionNodes())])], {
20185
+ }, props({ value: "“" })), richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("testimonial.content.body"), when$1("testimonial.content.body"))]), el$1("div", { className: "rb-testimonial-attribution" }, buildAttributionNodes())])], {
20016
20186
  stylesFrom: "content._cardStyles",
20017
20187
  backgroundFrom: "content._cardStyles.background",
20018
- baseClassName: "rb-testimonial-card rb-relative rb-isolate rb-flex rb-h-full rb-flex-col rb-overflow-hidden rb-p-8"
20188
+ baseClassName: "rb-testimonial-card rb-relative rb-isolate rb-flex rb-h-full rb-flex-col rb-overflow-visible rb-p-8"
20019
20189
  }, ...mods);
20020
20190
  }
20021
20191
  /**
@@ -20066,7 +20236,7 @@ function buildResponsiveGridCards() {
20066
20236
  base: 1,
20067
20237
  sm: 2
20068
20238
  }
20069
- }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when("gridColumns", { equals: "2" })),
20239
+ }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when$1("gridColumns", { equals: "2" })),
20070
20240
  grid$4({
20071
20241
  gap: "lg",
20072
20242
  cols: {
@@ -20074,7 +20244,7 @@ function buildResponsiveGridCards() {
20074
20244
  sm: 2,
20075
20245
  lg: 3
20076
20246
  }
20077
- }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when("gridColumns", { equals: "3" })),
20247
+ }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when$1("gridColumns", { equals: "3" })),
20078
20248
  grid$4({
20079
20249
  gap: "lg",
20080
20250
  cols: {
@@ -20083,7 +20253,7 @@ function buildResponsiveGridCards() {
20083
20253
  lg: 3,
20084
20254
  xl: 4
20085
20255
  }
20086
- }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when("gridColumns", { equals: "4" })),
20256
+ }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when$1("gridColumns", { equals: "4" })),
20087
20257
  grid$4({
20088
20258
  gap: "lg",
20089
20259
  cols: {
@@ -20091,7 +20261,7 @@ function buildResponsiveGridCards() {
20091
20261
  sm: 2,
20092
20262
  lg: 3
20093
20263
  }
20094
- }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when("gridColumns", { not: true }))
20264
+ }, [buildTestimonialCard(repeat("data.entries", "testimonial"))], when$1("gridColumns", { not: true }))
20095
20265
  ];
20096
20266
  }
20097
20267
  /**
@@ -20133,14 +20303,14 @@ function buildFeaturedEditorialCard(variantClass, ...mods) {
20133
20303
  className: "rb-testimonials-fe-qmark",
20134
20304
  "aria-hidden": "true"
20135
20305
  }, props({ value: "“" }));
20136
- const quote = richText({ className: "rb-testimonials-fe-quote rb-max-w-none" }, bind$1("testimonial.content.body"), when("testimonial.content.body"));
20306
+ const quote = richText$1({ className: "rb-testimonials-fe-quote rb-max-w-none" }, bind$2("testimonial.content.body"), when$1("testimonial.content.body"));
20137
20307
  const meta = el$1("div", { className: "rb-testimonials-fe-meta" }, [text({
20138
20308
  as: "strong",
20139
20309
  className: "rb-testimonials-fe-name"
20140
- }, bind$1("testimonial.content.name", { fallback: "Anonymous" })), text({
20310
+ }, bind$2("testimonial.content.name", { fallback: "Anonymous" })), text({
20141
20311
  as: "span",
20142
20312
  className: "rb-testimonials-fe-context"
20143
- }, when("testimonial.content.jobTitle"), bind$1("testimonial.content.jobTitle"))]);
20313
+ }, when$1("testimonial.content.jobTitle"), bind$2("testimonial.content.jobTitle"))]);
20144
20314
  return el$1("div", { className: `rb-testimonials-fe-card ${variantClass}` }, [
20145
20315
  quoteMark,
20146
20316
  quote,
@@ -20159,7 +20329,7 @@ function buildFeaturedEditorialCard(variantClass, ...mods) {
20159
20329
  * index scope in context, so entry 0 produces no node in the rest column.
20160
20330
  */
20161
20331
  function buildFeaturedEditorialLayout() {
20162
- return el$1("div", { className: "rb-testimonials-fe-grid" }, [buildFeaturedEditorialCard("rb-testimonials-fe-card--feature", repeat("data.entries", "testimonial", { limit: 1 })), el$1("div", { className: "rb-testimonials-fe-col" }, [buildFeaturedEditorialCard("rb-testimonials-fe-card--plain", repeat("data.entries", "testimonial", { indexName: "tIndex" }), when("tIndex", {
20332
+ return el$1("div", { className: "rb-testimonials-fe-grid" }, [buildFeaturedEditorialCard("rb-testimonials-fe-card--feature", repeat("data.entries", "testimonial", { limit: 1 })), el$1("div", { className: "rb-testimonials-fe-col" }, [buildFeaturedEditorialCard("rb-testimonials-fe-card--plain", repeat("data.entries", "testimonial", { indexName: "tIndex" }), when$1("tIndex", {
20163
20333
  equals: 0,
20164
20334
  not: true
20165
20335
  }))])]);
@@ -20170,7 +20340,7 @@ var init_testimonialsCarousel = __esmMin((() => {
20170
20340
  init_builder$1();
20171
20341
  init_fragments$1();
20172
20342
  grid$4 = (props, children, ...mods) => el$1("grid", props ?? void 0, children ?? void 0, ...mods);
20173
- testimonialsCarouselFragment = defineFragment$2({
20343
+ testimonialsCarouselFragment = defineFragment$3({
20174
20344
  id: "testimonialsCarousel",
20175
20345
  title: "Testimonials",
20176
20346
  description: "Testimonials layout with variant support (carousel, grid).",
@@ -20412,7 +20582,7 @@ var formCopyFragment;
20412
20582
  var init_formCopy = __esmMin((() => {
20413
20583
  init_types$4();
20414
20584
  init_builder$1();
20415
- formCopyFragment = defineFragment$2({
20585
+ formCopyFragment = defineFragment$3({
20416
20586
  id: "formCopy",
20417
20587
  title: "Form Copy",
20418
20588
  description: "Optional title and introduction content for form blocks.",
@@ -20429,7 +20599,7 @@ var init_formCopy = __esmMin((() => {
20429
20599
  layout: [text({
20430
20600
  as: "h2",
20431
20601
  className: "form-copy-title"
20432
- }, when("content.title"), bind$1("content.title")), richText({ className: "form-copy-intro rb-prose rb-max-w-none" }, when("content.intro"), bind$1("content.intro"))]
20602
+ }, when$1("content.title"), bind$2("content.title")), richText$1({ className: "form-copy-intro rb-prose rb-max-w-none" }, when$1("content.intro"), bind$2("content.intro"))]
20433
20603
  });
20434
20604
  }));
20435
20605
  //#endregion
@@ -20454,7 +20624,7 @@ var init_formEmbed = __esmMin((() => {
20454
20624
  init_types$4();
20455
20625
  init_builder$1();
20456
20626
  init_api_bindings();
20457
- formEmbedFragment = defineFragment$2({
20627
+ formEmbedFragment = defineFragment$3({
20458
20628
  id: "formEmbed",
20459
20629
  title: "Form Embed",
20460
20630
  description: "Embeds a saved form with configurable submit button copy.",
@@ -20486,7 +20656,7 @@ var init_formEmbed = __esmMin((() => {
20486
20656
  spamProtectionEnabled: { $bind: { from: "$root.spamProtectionEnabled" } },
20487
20657
  submitLabel: { $bind: { from: "submitLabel" } },
20488
20658
  successMessage: { $bind: { from: "successMessage" } }
20489
- }), [], bind$1("data.form"))],
20659
+ }), [], bind$2("data.form"))],
20490
20660
  data: {
20491
20661
  key: "form",
20492
20662
  loader: {
@@ -20498,7 +20668,7 @@ var init_formEmbed = __esmMin((() => {
20498
20668
  });
20499
20669
  }));
20500
20670
  var init_bookingForm = __esmMin((() => {
20501
- defineFragment$1({
20671
+ defineFragment$2({
20502
20672
  id: "bookingForm",
20503
20673
  title: "Booking Form",
20504
20674
  description: "Interactive form for booking appointments with date/time selection.",
@@ -20543,17 +20713,11 @@ var init_bookingForm = __esmMin((() => {
20543
20713
  resourceId: { $bind: { from: "resourceId" } },
20544
20714
  submitLabel: { $bind: { from: "submitLabel" } },
20545
20715
  successMessage: { $bind: { from: "successMessage" } }
20546
- }), [], bind("data.availability"))]
20716
+ }), [], bind$1("data.availability"))]
20547
20717
  });
20548
20718
  }));
20549
- //#endregion
20550
- //#region ../blocks/src/system/fragments/library/footerBottomText.ts
20551
- var footerBottomTextFragment;
20552
20719
  var init_footerBottomText = __esmMin((() => {
20553
- init_types$4();
20554
- init_builder$1();
20555
- init_colorStyles();
20556
- footerBottomTextFragment = defineFragment$2({
20720
+ defineFragment$1({
20557
20721
  id: "footerBottomText",
20558
20722
  title: "Footer Text",
20559
20723
  description: "Rich text content for the main footer body and optional bottom bar.",
@@ -20573,13 +20737,13 @@ var init_footerBottomText = __esmMin((() => {
20573
20737
  layout: [richText({
20574
20738
  className: "rb-prose rb-prose-sm rb-mx-auto rb-max-w-3xl rb-text-center",
20575
20739
  style: textColorStyle("text/80")
20576
- }, when("bodyText"), bind$1("bodyText", { transforms: [{
20740
+ }, when("bodyText"), bind("bodyText", { transforms: [{
20577
20741
  id: "content.interpolateRichTextTokens",
20578
20742
  options: { tokens: ["year", "site_name"] }
20579
20743
  }] })), richText({
20580
20744
  className: "rb-prose rb-prose-sm rb-mx-auto rb-max-w-3xl rb-text-center",
20581
20745
  style: textColorStyle("text/80")
20582
- }, when("bottomText"), bind$1("bottomText", { transforms: [{
20746
+ }, when("bottomText"), bind("bottomText", { transforms: [{
20583
20747
  id: "content.interpolateRichTextTokens",
20584
20748
  options: { tokens: ["year", "site_name"] }
20585
20749
  }] }))]
@@ -20643,7 +20807,7 @@ var init_singleButton = __esmMin((() => {
20643
20807
  init_types$4();
20644
20808
  init_fragments$1();
20645
20809
  init_button();
20646
- singleButtonFragment = defineFragment$2({
20810
+ singleButtonFragment = defineFragment$3({
20647
20811
  id: "singleButton",
20648
20812
  title: "Single Button Content",
20649
20813
  description: "Heading and primary button for the single button block.",
@@ -20670,7 +20834,7 @@ var init_blogFeaturedPost = __esmMin((() => {
20670
20834
  init_fragments$1();
20671
20835
  init_builder$1();
20672
20836
  init_colorStyles();
20673
- blogFeaturedPostFragment = defineFragment$2({
20837
+ blogFeaturedPostFragment = defineFragment$3({
20674
20838
  id: "blogFeaturedPost",
20675
20839
  title: "Featured Blog Post",
20676
20840
  description: "Featured blog post card with title and preview content.",
@@ -20696,8 +20860,8 @@ var init_blogFeaturedPost = __esmMin((() => {
20696
20860
  className: "rb-md-w-1/3"
20697
20861
  }, [text({
20698
20862
  as: "h2",
20699
- style: textColorStyle("heading")
20700
- }, bind$1("title", { fallback: "Latest post" }))]), stack({
20863
+ style: textColorStyle$1("heading")
20864
+ }, bind$2("title", { fallback: "Latest post" }))]), stack({
20701
20865
  gap: "md",
20702
20866
  className: "rb-flex-1"
20703
20867
  }, [stack({
@@ -20708,31 +20872,31 @@ var init_blogFeaturedPost = __esmMin((() => {
20708
20872
  className: "rb-block rb-overflow-hidden rb-rounded-xl rb-border",
20709
20873
  style: borderColorStyle("border/60"),
20710
20874
  href: { $bind: { from: "post.path" } }
20711
- }, [media({ className: "rb-h-56 rb-w-full rb-object-cover" }, bind$1("post.image", { transforms: [{ id: "media.fromUrl" }] }))], when("post.image")), stack({ gap: "sm" }, [
20875
+ }, [media({ className: "rb-h-56 rb-w-full rb-object-cover" }, bind$2("post.image", { transforms: [{ id: "media.fromUrl" }] }))], when$1("post.image")), stack({ gap: "sm" }, [
20712
20876
  link({
20713
20877
  className: "rb-block hover:rb-opacity-80",
20714
- style: textColorStyle("heading"),
20878
+ style: textColorStyle$1("heading"),
20715
20879
  href: { $bind: { from: "post.path" } }
20716
- }, [text({ as: "h2" }, bind$1("post.title"))]),
20880
+ }, [text({ as: "h2" }, bind$2("post.title"))]),
20717
20881
  text({
20718
20882
  as: "p",
20719
20883
  className: "rb-caption",
20720
- style: textColorStyle("mutedText")
20721
- }, when("post.publishedAt"), bind$1("post.publishedAt", { transforms: [{ id: "date.formatShort" }] })),
20884
+ style: textColorStyle$1("mutedText")
20885
+ }, when$1("post.publishedAt"), bind$2("post.publishedAt", { transforms: [{ id: "date.formatShort" }] })),
20722
20886
  text({
20723
20887
  as: "p",
20724
- style: textColorStyle("text/80")
20725
- }, bind$1("post.excerpt", { fallback: "Select a blog post to display its preview." })),
20888
+ style: textColorStyle$1("text/80")
20889
+ }, bind$2("post.excerpt", { fallback: "Select a blog post to display its preview." })),
20726
20890
  link({
20727
20891
  className: "rb-inline-flex rb-items-center rb-caption rb-hover-opacity-80",
20728
- style: textColorStyle("primary"),
20892
+ style: textColorStyle$1("primary"),
20729
20893
  href: { $bind: { from: "post.path" } }
20730
20894
  }, [text({ as: "strong" }, props({ value: "Read more →" }))])
20731
- ])], when("post")), stack({
20895
+ ])], when$1("post")), stack({
20732
20896
  gap: "sm",
20733
20897
  className: "rb-rounded-xl rb-border rb-border-dashed rb-p-6",
20734
- style: mergeStyles(borderColorStyle("border"), backgroundColorStyle("surface"), textColorStyle("mutedText"))
20735
- }, [text({ as: "p" }, props({ value: "Select a blog post to display its preview." }))], when("post", { not: true }))])], {
20898
+ style: mergeStyles(borderColorStyle("border"), backgroundColorStyle("surface"), textColorStyle$1("mutedText"))
20899
+ }, [text({ as: "p" }, props({ value: "Select a blog post to display its preview." }))], when$1("post", { not: true }))])], {
20736
20900
  gap: "lg",
20737
20901
  className: "rb-w-full rb-md-flex-row rb-md-items-start rb-md-gap-10"
20738
20902
  })],
@@ -20760,15 +20924,15 @@ function faqHeadingLayout() {
20760
20924
  text({
20761
20925
  as: "p",
20762
20926
  className: eyebrowClassName("faq-eyebrow rb-eyebrow heading-eyebrow")
20763
- }, when("content.eyebrow"), bind$1("content.eyebrow")),
20927
+ }, when$1("content.eyebrow"), bind$2("content.eyebrow")),
20764
20928
  text({
20765
20929
  as: "h2",
20766
20930
  className: "faq-title"
20767
- }, when("content.title"), bind$1("content.title")),
20768
- richText({
20931
+ }, when$1("content.title"), bind$2("content.title")),
20932
+ richText$1({
20769
20933
  className: "faq-description rb-prose rb-mx-auto rb-max-w-none",
20770
- style: textColorStyle("mutedText")
20771
- }, when("content.description"), bind$1("content.description"))
20934
+ style: textColorStyle$1("mutedText")
20935
+ }, when$1("content.description"), bind$2("content.description"))
20772
20936
  ]);
20773
20937
  }
20774
20938
  var faqHeadingFragment;
@@ -20777,7 +20941,7 @@ var init_faqHeading = __esmMin((() => {
20777
20941
  init_builder$1();
20778
20942
  init_fragments$1();
20779
20943
  init_colorStyles();
20780
- faqHeadingFragment = defineFragment$2({
20944
+ faqHeadingFragment = defineFragment$3({
20781
20945
  id: "faqHeading",
20782
20946
  title: "FAQ Heading",
20783
20947
  description: "Optional eyebrow, title, and description for FAQ sections.",
@@ -20829,7 +20993,7 @@ function createFaqAccordionLayout(options = {}) {
20829
20993
  options: {
20830
20994
  axis: "all",
20831
20995
  includeSpacing: false,
20832
- baseClass: "rb-faq-item rb-relative rb-isolate rb-overflow-hidden"
20996
+ baseClass: "rb-faq-item rb-relative rb-isolate rb-overflow-visible"
20833
20997
  }
20834
20998
  }]
20835
20999
  },
@@ -20846,7 +21010,7 @@ var faqAccordionFragment;
20846
21010
  var init_faqAccordion = __esmMin((() => {
20847
21011
  init_builder$1();
20848
21012
  init_types$4();
20849
- faqAccordionFragment = defineFragment$2({
21013
+ faqAccordionFragment = defineFragment$3({
20850
21014
  id: "faqAccordion",
20851
21015
  title: "FAQ Accordion",
20852
21016
  description: "Expandable list of question and answer pairs.",
@@ -20881,7 +21045,7 @@ var newsletterCopyFragment;
20881
21045
  var init_newsletterCopy = __esmMin((() => {
20882
21046
  init_types$4();
20883
21047
  init_builder$1();
20884
- newsletterCopyFragment = defineFragment$2({
21048
+ newsletterCopyFragment = defineFragment$3({
20885
21049
  id: "newsletterCopy",
20886
21050
  title: "Newsletter Copy",
20887
21051
  description: "Optional title and description for newsletter signup blocks.",
@@ -20899,7 +21063,7 @@ var init_newsletterCopy = __esmMin((() => {
20899
21063
  layout: [text({
20900
21064
  as: "h2",
20901
21065
  className: "newsletter-copy-title"
20902
- }, when("content.title"), bind$1("content.title")), richText({ className: "newsletter-copy-subtitle rb-prose rb-max-w-none" }, when("content.subtitle"), bind$1("content.subtitle"))]
21066
+ }, when$1("content.title"), bind$2("content.title")), richText$1({ className: "newsletter-copy-subtitle rb-prose rb-max-w-none" }, when$1("content.subtitle"), bind$2("content.subtitle"))]
20903
21067
  });
20904
21068
  }));
20905
21069
  //#endregion
@@ -20910,7 +21074,7 @@ var init_newsletterForm = __esmMin((() => {
20910
21074
  init_builder$1();
20911
21075
  init_api_bindings();
20912
21076
  init_button();
20913
- newsletterFormFragment = defineFragment$2({
21077
+ newsletterFormFragment = defineFragment$3({
20914
21078
  id: "newsletterForm",
20915
21079
  title: "Newsletter Form",
20916
21080
  description: "Newsletter subscription form with preset field configurations.",
@@ -21090,7 +21254,7 @@ var init_card = __esmMin((() => {
21090
21254
  value,
21091
21255
  label: value === "default" ? "Default" : "Alternative"
21092
21256
  }));
21093
- cardFragment = defineFragment$2({
21257
+ cardFragment = defineFragment$3({
21094
21258
  id: "card",
21095
21259
  title: "Card",
21096
21260
  description: "Content card with optional media, title, body, and action buttons",
@@ -21181,18 +21345,18 @@ var init_card = __esmMin((() => {
21181
21345
  }, [media({
21182
21346
  className: "card-media rb-w-full rb-h-auto rb-object-cover",
21183
21347
  style: { aspectRatio: { $bind: { from: "aspectRatio" } } }
21184
- }, when("media"), bind$1("media")), stack({
21348
+ }, when$1("media"), bind$2("media")), stack({
21185
21349
  gap: "sm",
21186
21350
  className: "card-content"
21187
21351
  }, [
21188
21352
  text({
21189
21353
  as: "h3",
21190
21354
  className: "card-title"
21191
- }, bind$1("title")),
21192
- richText({
21355
+ }, bind$2("title")),
21356
+ richText$1({
21193
21357
  className: "card-body rb-prose rb-max-w-none",
21194
- style: textColorStyle("mutedText")
21195
- }, when("body"), bind$1("body")),
21358
+ style: textColorStyle$1("mutedText")
21359
+ }, when$1("body"), bind$2("body")),
21196
21360
  ctaRow({
21197
21361
  collectionPath: "ctas",
21198
21362
  itemName: "cta",
@@ -21209,7 +21373,7 @@ var headingFragment;
21209
21373
  var init_heading = __esmMin((() => {
21210
21374
  init_types$4();
21211
21375
  init_builder$1();
21212
- headingFragment = defineFragment$2({
21376
+ headingFragment = defineFragment$3({
21213
21377
  id: "heading",
21214
21378
  title: "Heading",
21215
21379
  description: "Text heading",
@@ -21245,7 +21409,7 @@ var init_heading = __esmMin((() => {
21245
21409
  layout: text({
21246
21410
  as: { $bind: { from: "level" } },
21247
21411
  className: "fragment-heading"
21248
- }, bind$1("text"))
21412
+ }, bind$2("text"))
21249
21413
  });
21250
21414
  }));
21251
21415
  //#endregion
@@ -21254,7 +21418,7 @@ var richTextFragment;
21254
21418
  var init_richText = __esmMin((() => {
21255
21419
  init_types$4();
21256
21420
  init_builder$1();
21257
- richTextFragment = defineFragment$2({
21421
+ richTextFragment = defineFragment$3({
21258
21422
  id: "richText",
21259
21423
  title: "Rich Text",
21260
21424
  description: "Formatted text with markdown",
@@ -21266,7 +21430,7 @@ var init_richText = __esmMin((() => {
21266
21430
  label: "Content",
21267
21431
  required: true
21268
21432
  }],
21269
- layout: richText({ className: "fragment-richtext rb-prose rb-prose-neutral" }, bind$1("content"))
21433
+ layout: richText$1({ className: "fragment-richtext rb-prose rb-prose-neutral" }, bind$2("content"))
21270
21434
  });
21271
21435
  }));
21272
21436
  //#endregion
@@ -21276,7 +21440,7 @@ var init_image = __esmMin((() => {
21276
21440
  init_types$4();
21277
21441
  init_builder$1();
21278
21442
  init_colorStyles();
21279
- imageFragment = defineFragment$2({
21443
+ imageFragment = defineFragment$3({
21280
21444
  id: "image",
21281
21445
  title: "Image",
21282
21446
  description: "Image with optional caption",
@@ -21366,11 +21530,11 @@ var init_image = __esmMin((() => {
21366
21530
  resize: "contain"
21367
21531
  }
21368
21532
  } }
21369
- }, bind$1("image"))]), text({
21533
+ }, bind$2("image"))]), text({
21370
21534
  as: "p",
21371
21535
  className: "image-caption rb-caption rb-text-center",
21372
- style: textColorStyle("mutedText")
21373
- }, when("caption"), bind$1("caption"))])
21536
+ style: textColorStyle$1("mutedText")
21537
+ }, when$1("caption"), bind$2("caption"))])
21374
21538
  });
21375
21539
  }));
21376
21540
  //#endregion
@@ -21380,7 +21544,7 @@ var init_videoEmbed = __esmMin((() => {
21380
21544
  init_types$4();
21381
21545
  init_builder$1();
21382
21546
  init_colorStyles();
21383
- videoEmbedFragment = defineFragment$2({
21547
+ videoEmbedFragment = defineFragment$3({
21384
21548
  id: "videoEmbed",
21385
21549
  title: "Video",
21386
21550
  description: "YouTube, Vimeo, or Instagram embed",
@@ -21430,11 +21594,11 @@ var init_videoEmbed = __esmMin((() => {
21430
21594
  layout: stack({ gap: "sm" }, [videoEmbed({
21431
21595
  className: "fragment-video rb-w-full rb-rounded-lg rb-overflow-hidden",
21432
21596
  style: { aspectRatio: { $bind: { from: "aspectRatio" } } }
21433
- }, bind$1("url")), text({
21597
+ }, bind$2("url")), text({
21434
21598
  as: "p",
21435
21599
  className: "video-caption rb-caption rb-text-center",
21436
- style: textColorStyle("mutedText")
21437
- }, when("caption"), bind$1("caption"))])
21600
+ style: textColorStyle$1("mutedText")
21601
+ }, when$1("caption"), bind$2("caption"))])
21438
21602
  });
21439
21603
  }));
21440
21604
  //#endregion
@@ -21443,7 +21607,7 @@ var quoteFragment;
21443
21607
  var init_quote = __esmMin((() => {
21444
21608
  init_types$4();
21445
21609
  init_builder$1();
21446
- quoteFragment = defineFragment$2({
21610
+ quoteFragment = defineFragment$3({
21447
21611
  id: "quote",
21448
21612
  title: "Quote",
21449
21613
  description: "Quoted text with optional attribution",
@@ -21474,16 +21638,16 @@ var init_quote = __esmMin((() => {
21474
21638
  layout: stack({
21475
21639
  gap: "md",
21476
21640
  className: "fragment-quote rb-h-full rb-flex-1"
21477
- }, [richText({ className: "fragment-quote-body rb-prose rb-prose-neutral rb-max-w-none" }, bind$1("quote")), stack({
21641
+ }, [richText$1({ className: "fragment-quote-body rb-prose rb-prose-neutral rb-max-w-none" }, bind$2("quote")), stack({
21478
21642
  gap: "xs",
21479
21643
  className: "fragment-quote-attribution rb-mt-auto"
21480
21644
  }, [text({
21481
21645
  as: "strong",
21482
21646
  className: "rb-block"
21483
- }, bind$1("attribution"), when("attribution")), text({
21647
+ }, bind$2("attribution"), when$1("attribution")), text({
21484
21648
  as: "p",
21485
21649
  className: "rb-caption rb-opacity-80"
21486
- }, bind$1("attributionMeta"), when("attributionMeta"))])])
21650
+ }, bind$2("attributionMeta"), when$1("attributionMeta"))])])
21487
21651
  });
21488
21652
  }));
21489
21653
  //#endregion
@@ -21493,7 +21657,7 @@ var init_feedbackCallout = __esmMin((() => {
21493
21657
  init_types$4();
21494
21658
  init_ctas();
21495
21659
  init_fragments$1();
21496
- feedbackCalloutFragment = defineFragment$2({
21660
+ feedbackCalloutFragment = defineFragment$3({
21497
21661
  id: "feedbackCallout",
21498
21662
  title: "Feedback Callout",
21499
21663
  description: "Static authored callout for info, success, warning, and error messaging. For live validation or status updates, use runtime feedback primitives instead.",
@@ -21594,7 +21758,7 @@ var init_sectionState = __esmMin((() => {
21594
21758
  "coming-soon": "Coming soon",
21595
21759
  "no-results": "No results"
21596
21760
  };
21597
- sectionStateFragment = defineFragment$2({
21761
+ sectionStateFragment = defineFragment$3({
21598
21762
  id: "sectionState",
21599
21763
  title: "Section State",
21600
21764
  description: "Narrow authored section helper for empty, unavailable, coming-soon, and no-results states. This is for static page messaging, not live workflow status.",
@@ -21683,7 +21847,7 @@ var init_columnContent = __esmMin((() => {
21683
21847
  init_feedbackCallout();
21684
21848
  init_sectionState();
21685
21849
  init_node();
21686
- columnContentFragment = defineFragment$2({
21850
+ columnContentFragment = defineFragment$3({
21687
21851
  id: "columnContent",
21688
21852
  title: "Column",
21689
21853
  description: "A single column with customizable content",
@@ -21726,7 +21890,7 @@ var teamMemberFragment;
21726
21890
  var init_teamMember = __esmMin((() => {
21727
21891
  init_types$4();
21728
21892
  init_builder$1();
21729
- teamMemberFragment = defineFragment$2({
21893
+ teamMemberFragment = defineFragment$3({
21730
21894
  id: "teamMember",
21731
21895
  title: "Team member",
21732
21896
  description: "Team member with photo, name, role, and bio.",
@@ -21775,17 +21939,17 @@ var init_teamMember = __esmMin((() => {
21775
21939
  quality: 85,
21776
21940
  resize: "cover"
21777
21941
  }
21778
- }, when("photo"), bind$1("photo"))]),
21942
+ }, when$1("photo"), bind$2("photo"))]),
21779
21943
  link({
21780
21944
  href: { $bind: { from: "profilePath" } },
21781
21945
  className: "rb-team-member-name-link"
21782
- }, [text({ as: "h3" }, bind$1("name"))], when("profilePath")),
21783
- text({ as: "h3" }, when("profilePath", { not: true }), bind$1("name")),
21946
+ }, [text({ as: "h3" }, bind$2("name"))], when$1("profilePath")),
21947
+ text({ as: "h3" }, when$1("profilePath", { not: true }), bind$2("name")),
21784
21948
  text({
21785
21949
  as: "p",
21786
21950
  className: "rb-team-member-role"
21787
- }, when("role"), bind$1("role")),
21788
- richText({ className: "rb-prose rb-max-w-none" }, when("bio"), bind$1("bio"))
21951
+ }, when$1("role"), bind$2("role")),
21952
+ richText$1({ className: "rb-prose rb-max-w-none" }, when$1("bio"), bind$2("bio"))
21789
21953
  ])
21790
21954
  });
21791
21955
  }));
@@ -21990,7 +22154,7 @@ function heroSplitImagePane() {
21990
22154
  }, [media({
21991
22155
  className: "rb-absolute rb-inset-0 rb-h-full rb-w-full rb-object-cover",
21992
22156
  ...heroPriorityMediaProps
21993
- }, when("_sectionStyles.background.image"), bind$1("_sectionStyles.background.image"))]);
22157
+ }, when$1("_sectionStyles.background.image"), bind$2("_sectionStyles.background.image"))]);
21994
22158
  }
21995
22159
  function splitLayoutWith(children) {
21996
22160
  return styledSection({
@@ -22017,7 +22181,6 @@ function splitLayoutWith(children) {
22017
22181
  }
22018
22182
  }),
22019
22183
  renderBackgroundImage: false,
22020
- allowOverflow: true,
22021
22184
  baseClass: ""
22022
22185
  });
22023
22186
  }
@@ -22247,10 +22410,10 @@ function introHeading(className) {
22247
22410
  return text({
22248
22411
  as: "h2",
22249
22412
  className
22250
- }, when("content.title"), bind$1("content.title"));
22413
+ }, when$1("content.title"), bind$2("content.title"));
22251
22414
  }
22252
22415
  function introBody(className = "rb-prose rb-max-w-none") {
22253
- return richText({ className }, bind$1("content.body"));
22416
+ return richText$1({ className }, bind$2("content.body"));
22254
22417
  }
22255
22418
  function introCtas(justify = "start") {
22256
22419
  return ctaRow({
@@ -22291,7 +22454,7 @@ var init_intro = __esmMin((() => {
22291
22454
  from: "content.aspectRatio",
22292
22455
  fallback: "1/1"
22293
22456
  } } }
22294
- }, bind$1("content.media"));
22457
+ }, bind$2("content.media"));
22295
22458
  centeredCopyLayout = styledSection({
22296
22459
  children: styledContainer({
22297
22460
  rootType: "stack",
@@ -22321,7 +22484,7 @@ var init_intro = __esmMin((() => {
22321
22484
  gap: "md",
22322
22485
  className: "rb-intro-copy rb-max-w-xl"
22323
22486
  }, [introBody(), introCtas("start")]),
22324
- el$1("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia], when("content.media"))
22487
+ el$1("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia], when$1("content.media"))
22325
22488
  ])] }),
22326
22489
  baseClass: "",
22327
22490
  spacing: "medium"
@@ -22653,52 +22816,52 @@ function postTitle() {
22653
22816
  return link({
22654
22817
  href: { $bind: { from: "post.path" } },
22655
22818
  className: "rb-block rb-transition-colors hover:rb-opacity-80",
22656
- style: textColorStyle("heading")
22657
- }, [text({ as: "h3" }, bind$1("post.title"))]);
22819
+ style: textColorStyle$1("heading")
22820
+ }, [text({ as: "h3" }, bind$2("post.title"))]);
22658
22821
  }
22659
22822
  function postDate() {
22660
22823
  return text({
22661
22824
  as: "time",
22662
22825
  className: "rb-caption rb-italic",
22663
- style: textColorStyle("mutedText")
22664
- }, bind$1("post.publishedAt", { transforms: [{ id: "date.formatShort" }] }), when("post.publishedAt"), when("content.showDates"));
22826
+ style: textColorStyle$1("mutedText")
22827
+ }, bind$2("post.publishedAt", { transforms: [{ id: "date.formatShort" }] }), when$1("post.publishedAt"), when$1("content.showDates"));
22665
22828
  }
22666
22829
  function postExcerpt(className) {
22667
22830
  return text({
22668
22831
  as: "p",
22669
22832
  className,
22670
- style: textColorStyle("text/80")
22671
- }, bind$1("post.excerpt"), when("post.excerpt"), when("content.showExcerpts"));
22833
+ style: textColorStyle$1("text/80")
22834
+ }, bind$2("post.excerpt"), when$1("post.excerpt"), when$1("content.showExcerpts"));
22672
22835
  }
22673
22836
  function postReadMore() {
22674
22837
  return button({
22675
22838
  href: { $bind: { from: "post.path" } },
22676
22839
  className: "rb-self-start"
22677
- }, [text({ as: "span" }, bind$1("content.readMoreText", { fallback: "Read more" }), when("content.readMoreText")), text({
22840
+ }, [text({ as: "span" }, bind$2("content.readMoreText", { fallback: "Read more" }), when$1("content.readMoreText")), text({
22678
22841
  as: "span",
22679
22842
  value: "Read more"
22680
- }, when("content.readMoreText", { not: true }))]);
22843
+ }, when$1("content.readMoreText", { not: true }))]);
22681
22844
  }
22682
22845
  function postImageLink(className, mediaOptions) {
22683
22846
  return link({
22684
22847
  className: "rb-block rb-overflow-hidden",
22685
22848
  href: { $bind: { from: "post.path" } }
22686
- }, [media({ className }, bind$1("post.image", { transforms: [{
22849
+ }, [media({ className }, bind$2("post.image", { transforms: [{
22687
22850
  id: "media.fromUrl",
22688
22851
  options: mediaOptions
22689
- }] }))], when("post.image"), when("content.showImages"));
22852
+ }] }))], when$1("post.image"), when$1("content.showImages"));
22690
22853
  }
22691
22854
  function postCard(children, ...mods) {
22692
22855
  return styledCard(children, {
22693
22856
  stylesFrom: "content._cardStyles",
22694
22857
  backgroundFrom: "content._cardStyles.background",
22695
- baseClassName: "rb-relative rb-isolate rb-overflow-hidden rb-border rb-flex rb-flex-col rb-h-full"
22858
+ baseClassName: "rb-relative rb-isolate rb-overflow-visible rb-border rb-flex rb-flex-col rb-h-full"
22696
22859
  }, ...mods);
22697
22860
  }
22698
22861
  function blogListingShell(children) {
22699
22862
  return styledSection({
22700
22863
  children: styledContainer({
22701
- baseClassName: "rb-relative rb-isolate rb-overflow-hidden",
22864
+ baseClassName: "rb-relative rb-isolate rb-overflow-visible",
22702
22865
  children
22703
22866
  }),
22704
22867
  baseClass: ""
@@ -22761,16 +22924,16 @@ var init_blog_listing = __esmMin((() => {
22761
22924
  ])])], {
22762
22925
  stylesFrom: "content._cardStyles",
22763
22926
  backgroundFrom: "content._cardStyles.background",
22764
- baseClassName: "rb-relative rb-isolate rb-overflow-hidden rb-border"
22927
+ baseClassName: "rb-relative rb-isolate rb-overflow-visible rb-border"
22765
22928
  }, repeat("data.posts", "post"));
22766
22929
  emptyState$2 = {
22767
22930
  ...styledCard([text({
22768
22931
  as: "p",
22769
- style: textColorStyle("mutedText")
22770
- }, bind$1("content.emptyMessage", { fallback: "No posts published yet." }))], {
22932
+ style: textColorStyle$1("mutedText")
22933
+ }, bind$2("content.emptyMessage", { fallback: "No posts published yet." }))], {
22771
22934
  stylesFrom: "content._cardStyles",
22772
22935
  backgroundFrom: "content._cardStyles.background",
22773
- baseClassName: "rb-relative rb-isolate rb-overflow-hidden rb-border rb-border-dashed rb-p-8 rb-text-center"
22936
+ baseClassName: "rb-relative rb-isolate rb-overflow-visible rb-border rb-border-dashed rb-p-8 rb-text-center"
22774
22937
  }),
22775
22938
  $when: {
22776
22939
  when: { from: "data.posts[0]" },
@@ -23242,7 +23405,7 @@ var init_form = __esmMin((() => {
23242
23405
  formSurface = styledContainer({
23243
23406
  bindFrom: "_containerStyles",
23244
23407
  constrainWidth: false,
23245
- baseClassName: "rb-form-surface rb-relative rb-isolate rb-overflow-hidden",
23408
+ baseClassName: "rb-form-surface rb-relative rb-isolate rb-overflow-visible",
23246
23409
  children: fragmentLayoutNode$1(formEmbedFragment.layout)
23247
23410
  });
23248
23411
  formLayout = createFormLayout("default");
@@ -23328,14 +23491,14 @@ var init_contact_newsletter = __esmMin((() => {
23328
23491
  children: sectionContainer([el$1("div", { className: "contact-newsletter-grid" }, [el$1("div", { className: "contact-newsletter-column contact-newsletter-contact" }, [el$1("div", { className: "contact-newsletter-copy" }, [text({
23329
23492
  as: "h2",
23330
23493
  className: "form-copy-title"
23331
- }, when("contactTitle"), bind$1("contactTitle")), richText({ className: "form-copy-intro rb-prose rb-max-w-none" }, when("contactIntro"), bind$1("contactIntro"))]), el$1("form", withApiBindings$1({
23494
+ }, when$1("contactTitle"), bind$2("contactTitle")), richText$1({ className: "form-copy-intro rb-prose rb-max-w-none" }, when$1("contactIntro"), bind$2("contactIntro"))]), el$1("form", withApiBindings$1({
23332
23495
  spamProtectionEnabled: { $bind: { from: "$root.spamProtectionEnabled" } },
23333
23496
  submitLabel: { $bind: { from: "contactSubmitLabel" } },
23334
23497
  successMessage: { $bind: { from: "contactSuccessMessage" } }
23335
- }), [], bind$1("data.form"))]), el$1("div", { className: "contact-newsletter-column contact-newsletter-info contact-newsletter-newsletter" }, [el$1("div", { className: "contact-newsletter-copy" }, [text({
23498
+ }), [], bind$2("data.form"))]), el$1("div", { className: "contact-newsletter-column contact-newsletter-info contact-newsletter-newsletter" }, [el$1("div", { className: "contact-newsletter-copy" }, [text({
23336
23499
  as: "h2",
23337
23500
  className: "newsletter-copy-title"
23338
- }, when("newsletterTitle"), bind$1("newsletterTitle")), richText({ className: "newsletter-copy-subtitle rb-prose rb-max-w-none" }, when("newsletterSubtitle"), bind$1("newsletterSubtitle"))]), el$1("newsletter-form", withApiBindings$1({
23501
+ }, when$1("newsletterTitle"), bind$2("newsletterTitle")), richText$1({ className: "newsletter-copy-subtitle rb-prose rb-max-w-none" }, when$1("newsletterSubtitle"), bind$2("newsletterSubtitle"))]), el$1("newsletter-form", withApiBindings$1({
23339
23502
  listId: { $bind: { from: "listId" } },
23340
23503
  preset: { $bind: { from: "preset" } },
23341
23504
  includePhone: { $bind: { from: "includePhone" } },
@@ -24503,6 +24666,7 @@ var init_layout$2 = __esmMin((() => {
24503
24666
  ];
24504
24667
  const variant = header?.variant;
24505
24668
  if (variant && VALID_VARIANTS.includes(variant)) classes.push(`header-variant-${variant}`);
24669
+ if (header?.barFrame === "inset-shell" && variant === "classic") classes.push("header-bar-frame-inset-shell");
24506
24670
  return joinClasses(classes);
24507
24671
  }
24508
24672
  };
@@ -24538,7 +24702,7 @@ var init_layout$2 = __esmMin((() => {
24538
24702
  const visuals = resolveBackgroundVisualStyles(extractBackgroundColorToken(background, "surface"), context.theme);
24539
24703
  const styleParts = [];
24540
24704
  if (visuals.textColorOverride) styleParts.push({ color: visuals.textColorOverride });
24541
- else if (visuals.textColorToken) styleParts.push(textColorStyle(visuals.textColorToken));
24705
+ else if (visuals.textColorToken) styleParts.push(textColorStyle$1(visuals.textColorToken));
24542
24706
  const borderColorToken = header?.border?.colorToken ?? "border";
24543
24707
  styleParts.push(borderColorStyle(borderColorToken));
24544
24708
  return mergeStyles(...styleParts);
@@ -25033,7 +25197,7 @@ var init_shared$4 = __esmMin((() => {
25033
25197
  }));
25034
25198
  //#endregion
25035
25199
  //#region ../blocks/src/system/blocks/site-header.ts
25036
- var whenTransformed$1, logoRow, centeredLogoRow, createNavRow, headerCta, mobileCta, mobileToggleIcon, mobileToggleButton, mobileOverlayToggleButton, mobileNavList, mobileOverlayHeader, mobileOverlayBody, mobileOverlay, mobileHeaderBar, classicLayout, classicCenteredNavLayout, centeredLayout, transparentLayout, floatingLayout, headerLayout, siteHeaderManifest, siteHeaderBlockDefinition;
25200
+ var whenTransformed, logoRow, centeredLogoRow, createNavRow, headerCta, mobileCta, mobileToggleIcon, mobileToggleButton, mobileOverlayToggleButton, mobileNavList, mobileOverlayHeader, mobileOverlayBody, mobileOverlay, mobileHeaderBar, classicLayout, classicCenteredNavLayout, centeredLayout, transparentLayout, floatingLayout, headerLayout, siteHeaderManifest, siteHeaderBlockDefinition;
25037
25201
  var init_site_header = __esmMin((() => {
25038
25202
  init_builder$1();
25039
25203
  init_fragments$1();
@@ -25042,7 +25206,7 @@ var init_site_header = __esmMin((() => {
25042
25206
  init_shared$4();
25043
25207
  init_colorStyles();
25044
25208
  init_siteChromeOverlayClearance();
25045
- whenTransformed$1 = (from, transformId, equals = true) => (node) => ({
25209
+ whenTransformed = (from, transformId, equals = true) => (node) => ({
25046
25210
  ...node,
25047
25211
  $when: {
25048
25212
  when: {
@@ -25062,15 +25226,15 @@ var init_site_header = __esmMin((() => {
25062
25226
  media({ className: bindProp("$root.theme.header.logo", {
25063
25227
  transforms: pipe(tx("layout.headerLogoMediaClass", { base: "rb-header-logo-sm rb-w-auto rb-transition-all rb-duration-300" })),
25064
25228
  fallback: "rb-header-logo-sm rb-w-auto rb-transition-all rb-duration-300"
25065
- }) }, when("content.logo"), bind$1("content.logo")),
25229
+ }) }, when$1("content.logo"), bind$2("content.logo")),
25066
25230
  stack({ className: "rb-contents" }, [media({ className: bindProp("$root.theme.header.logo", {
25067
25231
  transforms: pipe(tx("layout.headerLogoMediaClass", { base: "rb-header-logo-sm rb-w-auto rb-transition-all rb-duration-300" })),
25068
25232
  fallback: "rb-header-logo-sm rb-w-auto rb-transition-all rb-duration-300"
25069
- }) }, when("site.logo"), bind$1("site.logo"))], when("content.logo", { not: true })),
25233
+ }) }, when$1("site.logo"), bind$2("site.logo"))], when$1("content.logo", { not: true })),
25070
25234
  text({
25071
25235
  as: "strong",
25072
25236
  className: "header-logo-text rb-truncate"
25073
- }, whenTransformed$1("$root.theme.header.logo", "layout.headerLogoTextVisible"), bind$1("site.title", { fallback: "Your Site" }))
25237
+ }, whenTransformed("$root.theme.header.logo", "layout.headerLogoTextVisible"), bind$2("site.title", { fallback: "Your Site" }))
25074
25238
  ]);
25075
25239
  centeredLogoRow = link({
25076
25240
  href: "/",
@@ -25082,15 +25246,15 @@ var init_site_header = __esmMin((() => {
25082
25246
  media({ className: bindProp("$root.theme.header.logo", {
25083
25247
  transforms: pipe(tx("layout.headerLogoMediaClass", { base: "rb-header-logo-lg rb-w-auto rb-transition-all rb-duration-300" })),
25084
25248
  fallback: "rb-header-logo-lg rb-w-auto rb-transition-all rb-duration-300"
25085
- }) }, when("content.logo"), bind$1("content.logo")),
25249
+ }) }, when$1("content.logo"), bind$2("content.logo")),
25086
25250
  stack({ className: "rb-contents" }, [media({ className: bindProp("$root.theme.header.logo", {
25087
25251
  transforms: pipe(tx("layout.headerLogoMediaClass", { base: "rb-header-logo-lg rb-w-auto rb-transition-all rb-duration-300" })),
25088
25252
  fallback: "rb-header-logo-lg rb-w-auto rb-transition-all rb-duration-300"
25089
- }) }, when("site.logo"), bind$1("site.logo"))], when("content.logo", { not: true })),
25253
+ }) }, when$1("site.logo"), bind$2("site.logo"))], when$1("content.logo", { not: true })),
25090
25254
  text({
25091
25255
  as: "strong",
25092
25256
  className: "header-logo-text"
25093
- }, whenTransformed$1("$root.theme.header.logo", "layout.headerLogoTextVisible"), bind$1("site.title", { fallback: "Your Site" }))
25257
+ }, whenTransformed("$root.theme.header.logo", "layout.headerLogoTextVisible"), bind$2("site.title", { fallback: "Your Site" }))
25094
25258
  ]);
25095
25259
  createNavRow = (className, align = "end") => navRow({
25096
25260
  className: `${className} header-nav-row`,
@@ -25222,7 +25386,7 @@ var init_site_header = __esmMin((() => {
25222
25386
  logoRow,
25223
25387
  createNavRow(`rb-ml-auto ${desktopOnlyDisplay("flex")} rb-gap-6`),
25224
25388
  headerCta
25225
- ], whenTransformed$1("$root.theme.header", "layout.classicNavMode", "inline"));
25389
+ ], whenTransformed("$root.theme.header", "layout.classicNavMode", "inline"));
25226
25390
  classicCenteredNavLayout = inline({
25227
25391
  className: bindProp("$root.theme.header.maxWidth", {
25228
25392
  transforms: pipe(tx("layout.maxWidthClass", { base: `rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-items-center rb-gap-6` })),
@@ -25233,7 +25397,7 @@ var init_site_header = __esmMin((() => {
25233
25397
  logoRow,
25234
25398
  createNavRow(`rb-flex-1 rb-justify-center ${desktopOnlyDisplay("flex")} rb-gap-6`, "center"),
25235
25399
  headerCta
25236
- ], whenTransformed$1("$root.theme.header", "layout.classicNavMode", "centered"));
25400
+ ], whenTransformed("$root.theme.header", "layout.classicNavMode", "centered"));
25237
25401
  centeredLayout = stack({
25238
25402
  gap: "md",
25239
25403
  align: "center",
@@ -25241,7 +25405,7 @@ var init_site_header = __esmMin((() => {
25241
25405
  transforms: pipe(tx("layout.maxWidthClass", { base: `rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-flex-col rb-items-center rb-gap-5 rb-text-center` })),
25242
25406
  fallback: `rb-container rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-flex-col rb-items-center rb-gap-5 rb-text-center`
25243
25407
  })
25244
- }, [centeredLogoRow, createNavRow(`${desktopOnlyDisplay("flex")} rb-flex-wrap rb-justify-center rb-gap-x-6 rb-gap-y-3`, "center")], when("$root.theme.header.variant", { equals: "centered" }));
25408
+ }, [centeredLogoRow, createNavRow(`${desktopOnlyDisplay("flex")} rb-flex-wrap rb-justify-center rb-gap-x-6 rb-gap-y-3`, "center")], when$1("$root.theme.header.variant", { equals: "centered" }));
25245
25409
  transparentLayout = inline({
25246
25410
  className: bindProp("$root.theme.header.maxWidth", {
25247
25411
  transforms: pipe(tx("layout.maxWidthClass", { base: `rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-items-center rb-gap-6` })),
@@ -25252,7 +25416,7 @@ var init_site_header = __esmMin((() => {
25252
25416
  logoRow,
25253
25417
  createNavRow(`rb-ml-auto ${desktopOnlyDisplay("flex")} rb-gap-6`),
25254
25418
  headerCta
25255
- ], when("$root.theme.header.variant", { equals: "transparent" }));
25419
+ ], when$1("$root.theme.header.variant", { equals: "transparent" }));
25256
25420
  floatingLayout = inline({
25257
25421
  [SITE_CHROME_VISIBLE_HEADER_ATTR]: "true",
25258
25422
  className: bindProp("$root.theme.header.maxWidth", {
@@ -25268,20 +25432,19 @@ var init_site_header = __esmMin((() => {
25268
25432
  logoRow,
25269
25433
  createNavRow(`rb-ml-auto ${desktopOnlyDisplay("flex")} rb-gap-6`),
25270
25434
  headerCta
25271
- ], when("$root.theme.header.variant", { equals: "floating" }));
25435
+ ], when$1("$root.theme.header.variant", { equals: "floating" }));
25272
25436
  headerLayout = headerSection({
25273
25437
  background: bindProp("$root.theme.header", {
25274
25438
  transforms: pipe(tx("layout.headerSectionBackground")),
25275
25439
  fallback: "background"
25276
25440
  }),
25277
- allowOverflow: true,
25278
25441
  className: bindProp("$root.theme.header", {
25279
25442
  transforms: pipe(tx("layout.headerRootClass")),
25280
25443
  fallback: "header-root rb-z-40 rb-w-full transition-theme"
25281
25444
  }),
25282
25445
  style: bindProp("$root.theme.header", {
25283
25446
  transforms: pipe(tx("layout.headerRootStyle")),
25284
- fallback: mergeStyles(textColorStyle("text"), borderColorStyle("border"))
25447
+ fallback: mergeStyles(textColorStyle$1("text"), borderColorStyle("border"))
25285
25448
  })
25286
25449
  }, [
25287
25450
  mobileHeaderBar,
@@ -25327,6 +25490,7 @@ var footerNavGroupsLayout;
25327
25490
  var init_site_footer_nav_groups_layout = __esmMin((() => {
25328
25491
  init_builder$1();
25329
25492
  init_colorStyles();
25493
+ init_footerNav();
25330
25494
  footerNavGroupsLayout = stack({
25331
25495
  gap: "lg",
25332
25496
  align: "start",
@@ -25338,14 +25502,14 @@ var init_site_footer_nav_groups_layout = __esmMin((() => {
25338
25502
  }, [text({
25339
25503
  as: "h3",
25340
25504
  className: "rb-label",
25341
- style: textColorStyle("text/70")
25342
- }, when("group.label"), bind$1("group.label")), stack({
25505
+ style: textColorStyle$1("text/70")
25506
+ }, when$1("group.label"), bind$2("group.label")), stack({
25343
25507
  gap: "sm",
25344
25508
  align: "start",
25345
25509
  className: "rb-space-y-2"
25346
25510
  }, [link({
25347
25511
  className: "rb-block rb-nav-text transition-theme rb-hover-opacity-80",
25348
- style: textColorStyle("text"),
25512
+ style: textColorStyle$1("text"),
25349
25513
  href: { $bind: {
25350
25514
  from: "entry.link",
25351
25515
  transforms: [{ id: "links.resolve" }]
@@ -25353,177 +25517,143 @@ var init_site_footer_nav_groups_layout = __esmMin((() => {
25353
25517
  linkRequired: true,
25354
25518
  target: { $bind: { from: "entry.target" } },
25355
25519
  rel: { $bind: { from: "entry.rel" } }
25356
- }, [text({ as: "span" }, bind$1("entry.label"))], repeat("group.children", "entry"))])], repeat("footerMenu.groups", "group"))], when("footerMenu.groups"));
25520
+ }, [text({ as: "span" }, bind$2("entry.label"))], repeat("group.children", "entry"))])], repeat("footerMenu.groups", "group"))], whenCollectionHasItems("footerMenu.groups"));
25357
25521
  }));
25358
25522
  //#endregion
25359
25523
  //#region ../blocks/src/system/blocks/site-footer.ts
25360
- var footerTextLayout, whenTransformed, bottomBarTextLayout, bodyTextLayout, businessAddressLayout, inlineBottomTextLayout, simpleFooterLayout, columnsFooterLayout, splitFooterLayout, footerLayout, siteFooterManifest, siteFooterBlockDefinition;
25524
+ var brandLogo, navigation, legalNavigation, address, contact, hours, socials, authoredCopy, footerGroup, footerMainRegion, footerBottomRegion, footerLayout, siteFooterManifest, siteFooterBlockDefinition;
25361
25525
  var init_site_footer = __esmMin((() => {
25362
25526
  init_fragments$1();
25363
25527
  init_builder$1();
25364
- init_fragments();
25365
25528
  init_defineBlock();
25366
25529
  init_site_footer_nav_groups_layout();
25367
25530
  init_colorStyles();
25368
25531
  init_surfaces();
25369
- footerTextLayout = () => materializeFragment({ fragment: footerBottomTextFragment }).layout;
25370
- whenTransformed = (from, transformId, equals = true) => (node) => ({
25371
- ...node,
25372
- $when: {
25373
- when: {
25374
- from,
25375
- transforms: [{ id: transformId }]
25376
- },
25377
- equals
25378
- }
25379
- });
25380
- bottomBarTextLayout = () => {
25381
- const bottomTextNode = footerTextLayout()[1];
25382
- return bottomTextNode ? [bottomTextNode] : [];
25383
- };
25384
- bodyTextLayout = () => {
25385
- const bodyTextNode = footerTextLayout()[0];
25386
- return bodyTextNode ? [bodyTextNode] : [];
25387
- };
25388
- businessAddressLayout = () => [text({
25389
- as: "p",
25390
- className: "rb-caption rb-opacity-80"
25391
- }, bind$1("site.businessAddress.displayAddress"), when("content.showBusinessAddress", { equals: true }))];
25392
- inlineBottomTextLayout = () => {
25393
- const bottomTextNode = footerTextLayout()[1];
25394
- if (!bottomTextNode) return [];
25395
- return [when("$root.theme.footer.bottomBar.enabled", {
25396
- equals: true,
25397
- not: true
25398
- })(bottomTextNode)];
25399
- };
25400
- simpleFooterLayout = stack({
25401
- gap: "md",
25402
- align: "start",
25403
- className: { $bind: {
25404
- from: "$root.theme.footer",
25405
- transforms: [{ id: "layout.footerSimpleRootClass" }],
25406
- fallback: "rb-container rb-flex rb-w-full rb-flex-col rb-items-start rb-gap-4 rb-py-10 rb-text-left"
25407
- } }
25408
- }, [
25409
- link({
25410
- href: "/",
25411
- className: { $bind: {
25412
- from: "$root.theme.footer.logo",
25413
- transforms: [{
25414
- id: "layout.footerLogoClass",
25415
- options: { requireExplicitShow: true }
25416
- }],
25417
- fallback: "rb-hidden"
25418
- } }
25419
- }, [
25420
- media({ className: { $bind: {
25421
- from: "$root.theme.footer.logo",
25422
- transforms: [{ id: "layout.footerLogoMediaClass" }],
25423
- fallback: "rb-w-auto"
25424
- } } }, when("content.logo"), bind$1("content.logo")),
25425
- stack({ className: "rb-contents" }, [media({ className: { $bind: {
25426
- from: "$root.theme.footer.logo",
25427
- transforms: [{ id: "layout.footerLogoMediaClass" }],
25428
- fallback: "rb-w-auto"
25429
- } } }, when("site.logo"), bind$1("site.logo"))], when("content.logo", { not: true })),
25430
- text({
25431
- as: "strong",
25432
- className: "footer-logo-text rb-nav-text"
25433
- }, whenTransformed("$root.theme.footer", "layout.footerLogoTextVisible"), bind$1("site.title", { fallback: "Your Site" }))
25434
- ]),
25435
- footerNav({
25436
- collectionPath: "footerMenu.items",
25437
- mode: "flatten",
25438
- className: { $bind: {
25439
- from: "$root.theme.footer.navLayout",
25440
- transforms: [{ id: "layout.footerSimpleNavClass" }],
25441
- fallback: "footer-nav rb-flex rb-flex-wrap rb-justify-start rb-gap-x-6 rb-gap-y-3"
25442
- } },
25443
- linkClassName: "footer-nav-link rb-inline-flex rb-items-center rb-px-4 rb-py-2 rb-nav-text transition-theme-standard"
25444
- }),
25445
- ...bodyTextLayout(),
25446
- ...businessAddressLayout(),
25447
- ...inlineBottomTextLayout()
25448
- ], when("$root.theme.footer.variant", { equals: "simple" }));
25449
- columnsFooterLayout = stack({
25450
- gap: "xl",
25451
- align: "start",
25532
+ brandLogo = link({
25533
+ href: "/",
25452
25534
  className: { $bind: {
25453
- from: "$root.theme.footer.maxWidth",
25535
+ from: "$root.theme.footer.logo",
25454
25536
  transforms: [{
25455
- id: "layout.maxWidthClass",
25456
- options: { base: "rb-flex rb-w-full rb-flex-col rb-gap-10 rb-py-12" }
25537
+ id: "layout.footerLogoClass",
25538
+ options: { base: "footer-logo rb-inline-flex rb-items-center rb-gap-3 rb-no-underline" }
25457
25539
  }],
25458
- fallback: "rb-container rb-flex rb-w-full rb-flex-col rb-gap-10 rb-py-12"
25540
+ fallback: "footer-logo rb-inline-flex rb-items-center rb-gap-3 rb-no-underline"
25459
25541
  } }
25460
- }, [
25461
- footerNavGroupsLayout,
25462
- inline({ className: "rb-flex rb-w-full rb-flex-wrap rb-items-center rb-justify-between rb-gap-4" }, [text({
25463
- as: "strong",
25464
- className: "rb-block rb-nav-text",
25465
- style: textColorStyle("text")
25466
- }, whenTransformed("$root.theme.footer", "layout.footerLogoTextVisible"), bind$1("site.title", { fallback: "Your Site" })), footerNav({
25467
- collectionPath: "footerMenu.items",
25468
- mode: "links-only",
25469
- className: "rb-flex rb-flex-wrap rb-justify-end rb-gap-x-6 rb-gap-y-3",
25470
- linkClassName: "footer-nav-link rb-inline-flex rb-items-center rb-px-4 rb-py-2 rb-nav-text transition-theme-standard"
25471
- })]),
25472
- ...bodyTextLayout(),
25473
- ...businessAddressLayout(),
25474
- ...inlineBottomTextLayout()
25475
- ], when("$root.theme.footer.variant", { equals: "columns" }));
25476
- splitFooterLayout = stack({
25477
- gap: "xl",
25478
- align: "start",
25542
+ }, [media({ className: { $bind: {
25543
+ from: "$root.theme.footer.logo",
25544
+ transforms: [{
25545
+ id: "layout.footerLogoMediaClass",
25546
+ options: { base: "rb-h-10 rb-w-auto" }
25547
+ }],
25548
+ fallback: "rb-h-10 rb-w-auto"
25549
+ } } }, when$1("module.showLogo", { equals: true }), when$1("content.logo"), bind$2("content.logo")), text({
25550
+ as: "strong",
25551
+ className: "footer-logo-text rb-nav-text"
25552
+ }, when$1("module.showTitle", { equals: true }), bind$2("site.title", { fallback: "Your Site" }))], when$1("module.kind", { equals: "brand" }));
25553
+ navigation = stack({
25554
+ gap: "md",
25555
+ className: "rb-w-full"
25556
+ }, [footerNavGroupsLayout, footerNav({
25557
+ collectionPath: "footerMenu.items",
25558
+ mode: "links-only",
25479
25559
  className: { $bind: {
25480
- from: "$root.theme.footer.maxWidth",
25481
- transforms: [{
25482
- id: "layout.maxWidthClass",
25483
- options: { base: "rb-flex rb-w-full rb-flex-col rb-gap-10 rb-py-12" }
25484
- }],
25485
- fallback: "rb-container rb-flex rb-w-full rb-flex-col rb-gap-10 rb-py-12"
25486
- } }
25560
+ from: "module.navigationClassName",
25561
+ fallback: "footer-nav rb-flex rb-flex-wrap rb-gap-x-6 rb-gap-y-3"
25562
+ } },
25563
+ linkClassName: "footer-nav-link rb-nav-text transition-theme-standard"
25564
+ })], when$1("module.kind", { equals: "navigation" }));
25565
+ legalNavigation = footerNav({
25566
+ collectionPath: "legalFooterMenu.items",
25567
+ mode: "links-only",
25568
+ className: "rb-flex rb-flex-wrap rb-gap-x-4 rb-gap-y-2",
25569
+ linkClassName: "footer-nav-link rb-caption transition-theme-standard"
25570
+ });
25571
+ address = text({
25572
+ as: "address",
25573
+ className: "rb-not-italic rb-opacity-80"
25574
+ }, when$1("module.kind", { equals: "business-address" }), bind$2("module.address"));
25575
+ contact = stack({
25576
+ gap: "sm",
25577
+ className: "rb-items-start"
25578
+ }, [link({
25579
+ href: { $bind: { from: "contactLink.href" } },
25580
+ className: "rb-nav-text rb-break-words transition-theme-standard"
25581
+ }, [text({ as: "span" }, bind$2("contactLink.label"))], repeat("module.contactLinks", "contactLink"))], when$1("module.kind", { equals: "contact" }));
25582
+ hours = stack({
25583
+ gap: "sm",
25584
+ className: "rb-w-full"
25585
+ }, [inline({ className: "rb-flex rb-w-full rb-justify-between rb-gap-4" }, [text({
25586
+ as: "span",
25587
+ className: "rb-label"
25588
+ }, bind$2("hoursDay.weekday")), text({
25589
+ as: "span",
25590
+ className: "rb-caption rb-opacity-80"
25591
+ }, bind$2("hoursDay.hours"))], repeat("module.openingHours", "hoursDay")), text({
25592
+ as: "p",
25593
+ className: "rb-caption rb-opacity-70"
25594
+ }, bind$2("module.timeZone"), when$1("module.timeZone"))], when$1("module.kind", { equals: "opening-hours" }));
25595
+ socials = inline({ className: "rb-flex rb-flex-wrap rb-gap-x-5 rb-gap-y-3" }, [link({
25596
+ href: { $bind: { from: "social.href" } },
25597
+ target: "_blank",
25598
+ rel: "noreferrer noopener",
25599
+ "aria-label": { $bind: { from: "social.label" } },
25600
+ className: "rb-nav-text transition-theme-standard"
25601
+ }, [icon({ className: "rb-h-5 rb-w-5" }, bind$2("social.icon"), when$1("social.icon")), text({ as: "span" }, bind$2("social.label"), when$1("social.icon", { equals: null }))], repeat("module.socialLinks", "social"))], when$1("module.kind", { equals: "social-links" }));
25602
+ authoredCopy = richText$1({
25603
+ className: "rb-prose rb-prose-sm rb-max-w-none",
25604
+ style: textColorStyle$1("text/80")
25605
+ }, when$1("module.content"), bind$2("module.content", { transforms: [{
25606
+ id: "content.interpolateRichTextTokens",
25607
+ options: { tokens: ["year", "site_name"] }
25608
+ }] }));
25609
+ footerGroup = stack({
25610
+ gap: "md",
25611
+ align: "stretch",
25612
+ className: "rb-min-w-0",
25613
+ "data-footer-group": { $bind: { from: "group.kind" } }
25614
+ }, [stack({
25615
+ gap: "md",
25616
+ align: "start",
25617
+ "data-preview-footer-module-id": { $bind: { from: "module.id" } }
25487
25618
  }, [
25488
- inline({ className: { $bind: {
25489
- from: "$root.theme.footer.logo",
25490
- transforms: [{ id: "layout.footerSplitMainClass" }],
25491
- fallback: "rb-flex rb-w-full rb-flex-col rb-items-start rb-justify-between rb-gap-8 rb-md-flex-row rb-md-items-end"
25492
- } } }, [stack({}, [footerNav({
25493
- collectionPath: "footerMenu.items",
25494
- mode: "flatten",
25495
- className: { $bind: {
25496
- from: "$root.theme.footer.navLayout",
25497
- transforms: [{ id: "layout.footerSplitNavSingleClass" }],
25498
- fallback: "rb-w-full rb-space-y-3 rb-text-left"
25499
- } },
25500
- linkClassName: "footer-nav-link rb-inline-flex rb-items-center rb-whitespace-nowrap rb-nav-text transition-theme-standard"
25501
- })]), link({
25502
- href: "/",
25503
- className: { $bind: {
25504
- from: "$root.theme.footer.logo",
25505
- transforms: [{ id: "layout.footerLogoClass" }],
25506
- fallback: "footer-logo rb-inline-flex rb-items-center rb-justify-end rb-gap-3 rb-self-end rb-no-underline rb-text-right rb-transition-opacity rb-hover-opacity-80"
25507
- } }
25508
- }, [
25509
- media({ className: { $bind: {
25510
- from: "$root.theme.footer.logo",
25511
- transforms: [{ id: "layout.footerLogoMediaClass" }],
25512
- fallback: "rb-w-auto"
25513
- } } }, when("content.logo"), bind$1("content.logo")),
25514
- stack({ className: "rb-contents" }, [media({ className: { $bind: {
25515
- from: "$root.theme.footer.logo",
25516
- transforms: [{ id: "layout.footerLogoMediaClass" }],
25517
- fallback: "rb-w-auto"
25518
- } } }, when("site.logo"), bind$1("site.logo"))], when("content.logo", { not: true })),
25519
- text({
25520
- as: "strong",
25521
- className: "footer-logo-text rb-nav-text"
25522
- }, whenTransformed("$root.theme.footer", "layout.footerLogoTextVisible"), bind$1("site.title", { fallback: "Your Site" }))
25523
- ])]),
25524
- ...businessAddressLayout(),
25525
- ...inlineBottomTextLayout()
25526
- ], when("$root.theme.footer.variant", { equals: "split" }));
25619
+ text({
25620
+ as: "h2",
25621
+ className: "rb-label",
25622
+ style: textColorStyle$1("text/70")
25623
+ }, bind$2("module.heading"), when$1("module.heading")),
25624
+ brandLogo,
25625
+ navigation,
25626
+ stack({
25627
+ gap: "sm",
25628
+ className: "rb-w-full"
25629
+ }, [legalNavigation], when$1("module.kind", { equals: "legal-navigation" })),
25630
+ address,
25631
+ contact,
25632
+ hours,
25633
+ socials,
25634
+ stack({ className: "rb-w-full" }, [authoredCopy], when$1("module.kind", { equals: "supporting-text" })),
25635
+ stack({ className: "rb-w-full rb-lg-col-span-3" }, [authoredCopy], when$1("module.kind", { equals: "legal" }))
25636
+ ], repeat("group.modules", "module"))], repeat("region.groups", "group"));
25637
+ footerMainRegion = stack({
25638
+ className: { $bind: { from: "region.className" } },
25639
+ "data-footer-region": { $bind: { from: "region.kind" } }
25640
+ }, [footerGroup], when$1("region.kind", { equals: "main" }), repeat("content.footerRuntime.regions", "region"));
25641
+ footerBottomRegion = stack({ className: { $bind: {
25642
+ from: "$root.theme.footer",
25643
+ transforms: [{ id: "layout.footerBottomBarContainerClass" }],
25644
+ fallback: "rb-w-full"
25645
+ } } }, [stack({
25646
+ className: { $bind: {
25647
+ from: "$root.theme.footer",
25648
+ transforms: [{ id: "layout.footerBottomBarClass" }],
25649
+ fallback: "rb-w-full rb-border-t rb-px-6 rb-py-6 rb-text-center"
25650
+ } },
25651
+ style: { $bind: {
25652
+ from: "$root.theme.footer",
25653
+ transforms: [{ id: "layout.footerBottomBarStyle" }]
25654
+ } },
25655
+ "data-footer-region": "bottom"
25656
+ }, [footerGroup])], when$1("region.kind", { equals: "bottom" }), repeat("content.footerRuntime.regions", "region"));
25527
25657
  footerLayout = section({
25528
25658
  background: "background",
25529
25659
  className: { $bind: {
@@ -25535,46 +25665,16 @@ var init_site_footer = __esmMin((() => {
25535
25665
  from: "$root.theme.footer",
25536
25666
  transforms: [{ id: "layout.footerRootStyle" }],
25537
25667
  fallback: mergeStyles(backgroundColorStyle("surface"), surfaceForegroundStyle({ text: "rgb(var(--tb-text))" }), borderColorStyle("border"))
25538
- } }
25539
- }, [
25540
- simpleFooterLayout,
25541
- columnsFooterLayout,
25542
- splitFooterLayout,
25543
- stack({
25544
- className: { $bind: {
25545
- from: "$root.theme.footer",
25546
- transforms: [{ id: "layout.footerBottomBarClass" }],
25547
- fallback: "rb-w-full rb-border-t rb-py-5"
25548
- } },
25549
- style: { $bind: {
25550
- from: "$root.theme.footer",
25551
- transforms: [{ id: "layout.footerBottomBarStyle" }]
25552
- } }
25553
- }, [stack({ className: { $bind: {
25554
- from: "$root.theme.footer",
25555
- transforms: [{ id: "layout.footerBottomBarContainerClass" }],
25556
- fallback: "rb-container"
25557
- } } }, [...bottomBarTextLayout()])], when("$root.theme.footer.bottomBar.enabled", { equals: true }))
25558
- ]);
25668
+ } },
25669
+ "data-footer-membership": { $bind: { from: "content.footerRuntime.membershipKey" } }
25670
+ }, [footerMainRegion, footerBottomRegion]);
25559
25671
  siteFooterManifest = createBlockManifest({
25560
25672
  id: "block.site-footer",
25561
25673
  title: "Site Footer",
25562
25674
  category: "layout",
25563
- fragments: [{
25564
- fragment: footerBottomTextFragment,
25565
- fieldPriority: 0
25566
- }],
25567
25675
  skipSectionStyles: true,
25568
- additionalFields: [{
25569
- id: "showBusinessAddress",
25570
- type: "boolean",
25571
- label: "Add business address to site footer?",
25572
- required: false,
25573
- defaultValue: false,
25574
- ui: { intent: "content" }
25575
- }],
25576
25676
  layout: footerLayout,
25577
- description: "Site-wide footer with navigation links and optional columns.",
25677
+ description: "Site-wide composed footer with canonical shared details.",
25578
25678
  styleTokens: { spacing: "md" },
25579
25679
  paletteHidden: true
25580
25680
  });
@@ -25611,11 +25711,11 @@ var init_testimonials = __esmMin((() => {
25611
25711
  children: el$1("div", { className: "rb-testimonials-split-grid rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-items-start" }, [el$1("div", { className: "rb-testimonials-split-grid-heading" }, [stack({
25612
25712
  gap: "md",
25613
25713
  className: "rb-testimonials-split-heading-copy rb-max-w-xl"
25614
- }, [text({ as: "h2" }, when("content.heading"), bind$1("content.heading")), text({
25714
+ }, [text({ as: "h2" }, when$1("content.heading"), bind$2("content.heading")), text({
25615
25715
  as: "p",
25616
25716
  className: "rb-prose",
25617
- style: textColorStyle("mutedText")
25618
- }, when("content.subheading"), bind$1("content.subheading"))])]), el$1("div", { className: "rb-testimonials-split-grid-cards" }, [buildGridCardsLayout("rb-testimonials-split-grid-card-list")])])
25717
+ style: textColorStyle$1("mutedText")
25718
+ }, when$1("content.subheading"), bind$2("content.subheading"))])]), el$1("div", { className: "rb-testimonials-split-grid-cards" }, [buildGridCardsLayout("rb-testimonials-split-grid-card-list")])])
25619
25719
  }),
25620
25720
  baseClass: "",
25621
25721
  spacing: "comfortable",
@@ -25631,11 +25731,11 @@ var init_testimonials = __esmMin((() => {
25631
25731
  as: "h2",
25632
25732
  className: "rb-text-left",
25633
25733
  headingDecoration: "off"
25634
- }, when("content.heading"), bind$1("content.heading")), el$1("div", { className: "rb-testimonials-fe-leadin" }, [text({
25734
+ }, when$1("content.heading"), bind$2("content.heading")), el$1("div", { className: "rb-testimonials-fe-leadin" }, [text({
25635
25735
  as: "p",
25636
25736
  className: "rb-prose",
25637
- style: textColorStyle("mutedText")
25638
- }, when("content.subheading"), bind$1("content.subheading"))])]), buildFeaturedEditorialLayout()])
25737
+ style: textColorStyle$1("mutedText")
25738
+ }, when$1("content.subheading"), bind$2("content.subheading"))])]), buildFeaturedEditorialLayout()])
25639
25739
  }),
25640
25740
  baseClass: "",
25641
25741
  spacing: "comfortable",
@@ -26083,7 +26183,7 @@ var init_collection = __esmMin((() => {
26083
26183
  id: "boxStyles.all",
26084
26184
  options: {
26085
26185
  axis: "all",
26086
- baseClass: "rb-collection-item rb-relative rb-isolate rb-overflow-hidden rb-border"
26186
+ baseClass: "rb-collection-item rb-relative rb-isolate rb-overflow-visible rb-border"
26087
26187
  }
26088
26188
  }]
26089
26189
  },
@@ -27175,10 +27275,10 @@ var init_feature_cards = __esmMin((() => {
27175
27275
  }, [text({
27176
27276
  as: "h2",
27177
27277
  className: "rb-feature-cards-title rb-text-center"
27178
- }, when("content.title"), bind$1("content.title")), richText({
27278
+ }, when$1("content.title"), bind$2("content.title")), richText$1({
27179
27279
  className: "rb-feature-cards-description rb-prose rb-mx-auto rb-max-w-none",
27180
- style: textColorStyle("mutedText")
27181
- }, when("content.description"), bind$1("content.description"))]);
27280
+ style: textColorStyle$1("mutedText")
27281
+ }, when$1("content.description"), bind$2("content.description"))]);
27182
27282
  editorialSectionHeading = stack({
27183
27283
  gap: "sm",
27184
27284
  className: "rb-feature-cards-heading rb-feature-cards-heading--editorial rb-max-w-3xl"
@@ -27186,20 +27286,20 @@ var init_feature_cards = __esmMin((() => {
27186
27286
  text({
27187
27287
  as: "p",
27188
27288
  className: "rb-feature-cards-eyebrow"
27189
- }, when("content.eyebrow"), bind$1("content.eyebrow")),
27289
+ }, when$1("content.eyebrow"), bind$2("content.eyebrow")),
27190
27290
  text({
27191
27291
  as: "h2",
27192
27292
  className: "rb-feature-cards-title"
27193
- }, when("content.title"), bind$1("content.title")),
27194
- richText({
27293
+ }, when$1("content.title"), bind$2("content.title")),
27294
+ richText$1({
27195
27295
  className: "rb-feature-cards-description rb-prose rb-max-w-none",
27196
- style: textColorStyle("mutedText")
27197
- }, when("content.description"), bind$1("content.description"))
27296
+ style: textColorStyle$1("mutedText")
27297
+ }, when$1("content.description"), bind$2("content.description"))
27198
27298
  ]);
27199
27299
  featureCard = styledCard([el$1("div", { className: "rb-feature-card-media-frame rb-overflow-hidden rb-w-full" }, [media({
27200
27300
  className: "rb-feature-card-media rb-w-full rb-h-auto rb-object-cover",
27201
27301
  style: { aspectRatio: { $bind: { from: "card.aspectRatio" } } }
27202
- }, bind$1("card.media"))], when("card.media")), stack({
27302
+ }, bind$2("card.media"))], when$1("card.media")), stack({
27203
27303
  gap: "sm",
27204
27304
  className: "rb-feature-card-content rb-flex-1 rb-p-6"
27205
27305
  }, [
@@ -27213,7 +27313,7 @@ var init_feature_cards = __esmMin((() => {
27213
27313
  fallback: FEATURE_CARD_GENERATED_ICON_SIZE_PX.default
27214
27314
  } },
27215
27315
  generatedAssets: { $bind: { from: "data.generatedIconAssets" } }
27216
- }, null, bind$1("card.icon")),
27316
+ }, null, bind$2("card.icon")),
27217
27317
  el$1("div", {
27218
27318
  className: "rb-feature-card-number-zone",
27219
27319
  "aria-hidden": "true"
@@ -27221,11 +27321,11 @@ var init_feature_cards = __esmMin((() => {
27221
27321
  text({
27222
27322
  as: "h3",
27223
27323
  className: "rb-feature-card-title"
27224
- }, bind$1("card.title")),
27225
- richText({
27324
+ }, bind$2("card.title")),
27325
+ richText$1({
27226
27326
  className: "rb-feature-card-body rb-prose rb-max-w-none",
27227
- style: textColorStyle("mutedText")
27228
- }, when("card.body"), bind$1("card.body")),
27327
+ style: textColorStyle$1("mutedText")
27328
+ }, when$1("card.body"), bind$2("card.body")),
27229
27329
  ctaRow({
27230
27330
  collectionPath: "ctas",
27231
27331
  itemName: "cta",
@@ -27885,18 +27985,18 @@ var init_media_text = __esmMin((() => {
27885
27985
  const copyHeading = el$1("div", { className: titleClassNameFromAlignment }, [text({
27886
27986
  as: "p",
27887
27987
  className: eyebrowClassName("rb-eyebrow heading-eyebrow")
27888
- }, when("content.eyebrow"), bind$1("content.eyebrow")), text({ as: "h2" }, bind$1("content.title"))], when("content.title"));
27889
- const defaultTextColumn = el$1("div", {}, [styledCard([richText({ className: "rb-prose rb-max-w-none" }, bind$1("content.text"))], {
27988
+ }, when$1("content.eyebrow"), bind$2("content.eyebrow")), text({ as: "h2" }, bind$2("content.title"))], when$1("content.title"));
27989
+ const defaultTextColumn = el$1("div", {}, [styledCard([richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("content.text"))], {
27890
27990
  stylesFrom: "content._textCardStyles",
27891
27991
  backgroundFrom: "content._textCardStyles.background"
27892
- }, when("content.wrapTextInCard")), richText({ className: "rb-prose rb-max-w-none" }, when("content.wrapTextInCard", { not: true }), bind$1("content.text"))]);
27992
+ }, when$1("content.wrapTextInCard")), richText$1({ className: "rb-prose rb-max-w-none" }, when$1("content.wrapTextInCard", { not: true }), bind$2("content.text"))]);
27893
27993
  const bioTextColumn = el$1("div", { className: "rb-flex rb-h-full rb-w-full rb-max-w-prose rb-flex-col rb-justify-center rb-gap-5" }, [
27894
27994
  copyHeading,
27895
- styledCard([richText({ className: bodyClassNameFromAlignment }, bind$1("content.text"))], {
27995
+ styledCard([richText$1({ className: bodyClassNameFromAlignment }, bind$2("content.text"))], {
27896
27996
  stylesFrom: "content._textCardStyles",
27897
27997
  backgroundFrom: "content._textCardStyles.background"
27898
- }, when("content.wrapTextInCard")),
27899
- richText({ className: bodyClassNameFromAlignment }, when("content.wrapTextInCard", { not: true }), bind$1("content.text"))
27998
+ }, when$1("content.wrapTextInCard")),
27999
+ richText$1({ className: bodyClassNameFromAlignment }, when$1("content.wrapTextInCard", { not: true }), bind$2("content.text"))
27900
28000
  ]);
27901
28001
  const defaultImageCommonProps = {
27902
28002
  className: { $bind: {
@@ -27909,7 +28009,7 @@ var init_media_text = __esmMin((() => {
27909
28009
  } },
27910
28010
  style: { aspectRatio: { $bind: { from: "content.aspectRatio" } } }
27911
28011
  };
27912
- const defaultSingleImage = media(defaultImageCommonProps, bind$1("content.images[0].image"));
28012
+ const defaultSingleImage = media(defaultImageCommonProps, bind$2("content.images[0].image"));
27913
28013
  const defaultCarouselImages = carousel({
27914
28014
  className: "rb-media-text-carousel",
27915
28015
  transition: { $bind: {
@@ -27936,7 +28036,7 @@ var init_media_text = __esmMin((() => {
27936
28036
  showControls: true,
27937
28037
  loop: true,
27938
28038
  slidesToShow: 1
27939
- }, [media(defaultImageCommonProps, bind$1("item.image"), repeat("content.images", "item"))]);
28039
+ }, [media(defaultImageCommonProps, bind$2("item.image"), repeat("content.images", "item"))]);
27940
28040
  const defaultImagesLayout = el$1("div", {}, [responsiveTwoColumn({
27941
28041
  image: el$1("div", {}, [el$1("div", {}, [defaultSingleImage], whenImagesLength(1)), el$1("div", {}, [defaultCarouselImages], whenImagesLength(1, { not: true }))]),
27942
28042
  text: defaultTextColumn,
@@ -27959,20 +28059,20 @@ var init_media_text = __esmMin((() => {
27959
28059
  imageWrapperClassName: "rb-w-full rb-shrink-0",
27960
28060
  textWrapperClassName: "rb-w-full rb-min-w-0 rb-flex-1 rb-self-stretch"
27961
28061
  })], whenImagesLength(0, { not: true }));
27962
- const defaultTextOnlyLayout = el$1("div", {}, [styledCard([richText({ className: "rb-prose rb-max-w-none" }, bind$1("content.text"))], {
28062
+ const defaultTextOnlyLayout = el$1("div", {}, [styledCard([richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("content.text"))], {
27963
28063
  stylesFrom: "content._textCardStyles",
27964
28064
  backgroundFrom: "content._textCardStyles.background"
27965
- }, when("content.wrapTextInCard")), richText({ className: "rb-prose rb-max-w-none" }, when("content.wrapTextInCard", { not: true }), bind$1("content.text"))], whenImagesLength(0));
28065
+ }, when$1("content.wrapTextInCard")), richText$1({ className: "rb-prose rb-max-w-none" }, when$1("content.wrapTextInCard", { not: true }), bind$2("content.text"))], whenImagesLength(0));
27966
28066
  const bioTextOnlyLayout = el$1("div", { className: "rb-flex rb-w-full rb-max-w-prose rb-flex-col rb-gap-5" }, [
27967
28067
  text({
27968
28068
  as: "h2",
27969
28069
  className: titleClassNameFromAlignment
27970
- }, when("content.title"), bind$1("content.title")),
27971
- styledCard([richText({ className: bodyClassNameFromAlignment }, bind$1("content.text"))], {
28070
+ }, when$1("content.title"), bind$2("content.title")),
28071
+ styledCard([richText$1({ className: bodyClassNameFromAlignment }, bind$2("content.text"))], {
27972
28072
  stylesFrom: "content._textCardStyles",
27973
28073
  backgroundFrom: "content._textCardStyles.background"
27974
- }, when("content.wrapTextInCard")),
27975
- richText({ className: bodyClassNameFromAlignment }, when("content.wrapTextInCard", { not: true }), bind$1("content.text"))
28074
+ }, when$1("content.wrapTextInCard")),
28075
+ richText$1({ className: bodyClassNameFromAlignment }, when$1("content.wrapTextInCard", { not: true }), bind$2("content.text"))
27976
28076
  ], whenImagesLength(0));
27977
28077
  const defaultInner = el$1("div", {}, [defaultImagesLayout, defaultTextOnlyLayout]);
27978
28078
  const bioInner = el$1("div", {}, [bioImagesLayout, bioTextOnlyLayout]);
@@ -28094,8 +28194,8 @@ var init_appointment_booking = __esmMin((() => {
28094
28194
  icon: "Calendar",
28095
28195
  layout: [styledSection({
28096
28196
  children: sectionContainer([
28097
- text({ as: "h2" }, bind$1("content.heading"), when("content.heading")),
28098
- richText({}, bind$1("content.description"), when("content.description")),
28197
+ text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")),
28198
+ richText$1({}, bind$2("content.description"), when$1("content.description")),
28099
28199
  bookingForm(withApiBindings$1({
28100
28200
  portalToken: { $bind: {
28101
28201
  from: "$root.portalToken",
@@ -28270,8 +28370,8 @@ var init_weekly_slot_availability = __esmMin((() => {
28270
28370
  icon: "CalendarDays",
28271
28371
  layout: [styledSection({
28272
28372
  children: sectionContainer([
28273
- text({ as: "h2" }, bind$1("content.heading"), when("content.heading")),
28274
- richText({}, bind$1("content.description"), when("content.description")),
28373
+ text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")),
28374
+ richText$1({}, bind$2("content.description"), when$1("content.description")),
28275
28375
  el$1("weekly-slot-availability", withApiBindings$1({
28276
28376
  serviceId: { $bind: { from: "content.serviceId" } },
28277
28377
  resourceId: { $bind: {
@@ -29142,8 +29242,8 @@ var init_filtering = __esmMin((() => {
29142
29242
  //#endregion
29143
29243
  //#region ../blocks/src/system/blocks/events/shared/layout.ts
29144
29244
  function eventSectionHeaderLayoutNodes(options = {}) {
29145
- const headingNode = text({ as: "h2" }, bind$1("content.heading"), when("content.heading", { authoringPresence: recoverEmptyHeadingWhenActive }));
29146
- const descriptionNode = richText({ className: "rb-prose rb-max-w-none" }, bind$1("content.description"), when("content.description", { authoringPresence: recoverEmptyDescriptionWhenActive }));
29245
+ const headingNode = text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading", { authoringPresence: recoverEmptyHeadingWhenActive }));
29246
+ const descriptionNode = richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("content.description"), when$1("content.description", { authoringPresence: recoverEmptyDescriptionWhenActive }));
29147
29247
  if (options.splitClassName) return [el$1("div", { className: options.splitClassName }, [headingNode, descriptionNode])];
29148
29248
  return [headingNode, descriptionNode];
29149
29249
  }
@@ -29967,8 +30067,8 @@ var init_event_registration = __esmMin((() => {
29967
30067
  baseClass: "",
29968
30068
  spacing: "spacious",
29969
30069
  children: sectionContainer([
29970
- text({ as: "h2" }, bind$1("content.heading"), when("content.heading")),
29971
- richText({ className: "rb-prose rb-max-w-none" }, bind$1("content.description"), when("content.description")),
30070
+ text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")),
30071
+ richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("content.description"), when$1("content.description")),
29972
30072
  eventRegistration(withApiBindings$1({
29973
30073
  occurrenceContext: { $bind: { from: "$root.occurrenceContext" } },
29974
30074
  contentEntry: { $bind: { from: "$root.contentEntry" } },
@@ -30331,8 +30431,8 @@ var init_course_registration = __esmMin((() => {
30331
30431
  baseClass: "",
30332
30432
  spacing: "spacious",
30333
30433
  children: sectionContainer([
30334
- text({ as: "h2" }, bind$1("content.heading"), when("content.heading")),
30335
- richText({ className: "rb-prose rb-max-w-none" }, bind$1("content.description"), when("content.description")),
30434
+ text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")),
30435
+ richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("content.description"), when$1("content.description")),
30336
30436
  courseRegistration(withApiBindings$1({
30337
30437
  contentEntry: { $bind: { from: "$root.contentEntry" } },
30338
30438
  entrySubrouteContext: { $bind: {
@@ -30514,7 +30614,7 @@ var init_event_details = __esmMin((() => {
30514
30614
  layout: [styledSection({
30515
30615
  baseClass: "",
30516
30616
  spacing: "spacious",
30517
- children: sectionContainer([text({ as: "h2" }, bind$1("content.heading"), when("content.heading")), el$1("event-details", {
30617
+ children: sectionContainer([text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")), el$1("event-details", {
30518
30618
  occurrenceContext: { $bind: {
30519
30619
  from: "$root.occurrenceContext",
30520
30620
  fallback: null
@@ -30755,7 +30855,7 @@ var init_course_details = __esmMin((() => {
30755
30855
  layout: [styledSection({
30756
30856
  baseClass: "",
30757
30857
  spacing: "spacious",
30758
- children: sectionContainer([text({ as: "h2" }, bind$1("content.heading"), when("content.heading")), el$1("course-details", {
30858
+ children: sectionContainer([text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")), el$1("course-details", {
30759
30859
  contentEntry: { $bind: {
30760
30860
  from: "$root.contentEntry",
30761
30861
  fallback: null
@@ -33059,12 +33159,12 @@ var init_recurring_schedule = __esmMin((() => {
33059
33159
  text({
33060
33160
  as: "p",
33061
33161
  className: "recurring-schedule-eyebrow"
33062
- }, bind$1("content.eyebrow"), when("content.eyebrow")),
33162
+ }, bind$2("content.eyebrow"), when$1("content.eyebrow")),
33063
33163
  text({
33064
33164
  as: "h2",
33065
33165
  className: "recurring-schedule-heading-title"
33066
- }, bind$1("content.heading"), when("content.heading")),
33067
- richText({ className: "recurring-schedule-description rb-prose rb-max-w-none" }, bind$1("content.description"), when("content.description"))
33166
+ }, bind$2("content.heading"), when$1("content.heading")),
33167
+ richText$1({ className: "recurring-schedule-description rb-prose rb-max-w-none" }, bind$2("content.description"), when$1("content.description"))
33068
33168
  ]), button({
33069
33169
  href: { $bind: {
33070
33170
  from: "content.seeAllUrl",
@@ -33076,7 +33176,7 @@ var init_recurring_schedule = __esmMin((() => {
33076
33176
  from: "content.seeAllButtonVariant",
33077
33177
  fallback: "secondary"
33078
33178
  } }
33079
- }, [text({}, bind$1("content.seeAllLabel"))], when("content.seeAllUrl"))]), el$1("recurring-schedule", {
33179
+ }, [text({}, bind$2("content.seeAllLabel"))], when$1("content.seeAllUrl"))]), el$1("recurring-schedule", {
33080
33180
  schedule: { $bind: { from: "data.schedule" } },
33081
33181
  buttonText: { $bind: {
33082
33182
  from: "content.buttonText",
@@ -33677,8 +33777,8 @@ var init_offerings_preview = __esmMin((() => {
33677
33777
  text({
33678
33778
  as: "h2",
33679
33779
  className: "rb-text-center"
33680
- }, bind$1("content.heading"), when("content.heading")),
33681
- richText({ className: "rb-prose rb-max-w-none" }, bind$1("content.description"), when("content.description")),
33780
+ }, bind$2("content.heading"), when$1("content.heading")),
33781
+ richText$1({ className: "rb-prose rb-max-w-none" }, bind$2("content.description"), when$1("content.description")),
33682
33782
  el$1("offerings-preview", {
33683
33783
  bookingOfferingPresets: { $bind: {
33684
33784
  from: "$root.bookingOfferingPresets",
@@ -33942,12 +34042,12 @@ var init_embed = __esmMin((() => {
33942
34042
  children: sectionContainer([
33943
34043
  text({
33944
34044
  as: "h2",
33945
- style: textColorStyle("heading")
33946
- }, bind$1("content.heading"), when("content.heading")),
34045
+ style: textColorStyle$1("heading")
34046
+ }, bind$2("content.heading"), when$1("content.heading")),
33947
34047
  el$1("richText", {
33948
34048
  className: "rb-mt-2 rb-prose rb-max-w-none",
33949
- style: textColorStyle("mutedText")
33950
- }, void 0, bind$1("content.subheading"), when("content.subheading")),
34049
+ style: textColorStyle$1("mutedText")
34050
+ }, void 0, bind$2("content.subheading"), when$1("content.subheading")),
33951
34051
  stack({
33952
34052
  gap: "md",
33953
34053
  className: "rb-mt-8"
@@ -33957,19 +34057,19 @@ var init_embed = __esmMin((() => {
33957
34057
  style: mergeStyles(borderColorStyle("border"), backgroundColorStyle("surface"))
33958
34058
  }, [text({
33959
34059
  as: "h3",
33960
- style: textColorStyle("heading")
33961
- }, bind$1("entry.title")), text({
34060
+ style: textColorStyle$1("heading")
34061
+ }, bind$2("entry.title")), text({
33962
34062
  as: "p",
33963
34063
  className: "rb-caption",
33964
- style: textColorStyle("mutedText")
33965
- }, bind$1("entry.slug"), when("entry.slug"))], repeat("data.entries", "entry"))], when("data.entries")),
34064
+ style: textColorStyle$1("mutedText")
34065
+ }, bind$2("entry.slug"), when$1("entry.slug"))], repeat("data.entries", "entry"))], when$1("data.entries")),
33966
34066
  stack({
33967
34067
  gap: "sm",
33968
34068
  className: "rb-py-12 rb-text-center"
33969
34069
  }, [text({
33970
34070
  as: "p",
33971
- style: textColorStyle("mutedText")
33972
- }, bind$1("content.emptyMessage", { fallback: "No entries found." }))], when("data.entries", { not: true }))
34071
+ style: textColorStyle$1("mutedText")
34072
+ }, bind$2("content.emptyMessage", { fallback: "No entries found." }))], when$1("data.entries", { not: true }))
33973
34073
  ]),
33974
34074
  baseClass: "",
33975
34075
  spacing: "comfortable"
@@ -34086,11 +34186,11 @@ var init_image_gallery = __esmMin((() => {
34086
34186
  $prepend: `${options.imageClassName} `
34087
34187
  },
34088
34188
  ...options.bindAspectRatio && { style: { aspectRatio: { $bind: { from: "content.aspectRatio" } } } }
34089
- }, bind$1("item.image"))]), text({
34189
+ }, bind$2("item.image"))]), text({
34090
34190
  as: "figcaption",
34091
34191
  className: "rb-caption rb-text-center",
34092
- style: textColorStyle("mutedText")
34093
- }, bind$1("item.caption"), when("item.caption"))], repeat("content.images", "item"));
34192
+ style: textColorStyle$1("mutedText")
34193
+ }, bind$2("item.caption"), when$1("item.caption"))], repeat("content.images", "item"));
34094
34194
  gridLayout = grid$1({ className: "rb-grid rb-grid-cols-1 rb-gap-4 rb-sm-grid-cols-2 rb-md-grid-cols-3" }, [galleryItem({
34095
34195
  imageClassName: "rb-w-full rb-h-full rb-object-cover",
34096
34196
  bindAspectRatio: true
@@ -34207,11 +34307,11 @@ var init_image_gallery = __esmMin((() => {
34207
34307
  $prepend: "rb-w-full rb-h-full rb-object-cover "
34208
34308
  },
34209
34309
  style: { aspectRatio: "1 / 1" }
34210
- }, bind$1("item.image"))]), text({
34310
+ }, bind$2("item.image"))]), text({
34211
34311
  as: "figcaption",
34212
34312
  className: "rb-caption rb-text-center",
34213
- style: textColorStyle("mutedText")
34214
- }, bind$1("item.caption"), when("item.caption"))]),
34313
+ style: textColorStyle$1("mutedText")
34314
+ }, bind$2("item.caption"), when$1("item.caption"))]),
34215
34315
  $repeat: {
34216
34316
  collection: {
34217
34317
  from: "content.images",
@@ -34237,7 +34337,7 @@ var init_image_gallery = __esmMin((() => {
34237
34337
  type: "text",
34238
34338
  props: {
34239
34339
  as: "p",
34240
- style: textColorStyle("mutedText")
34340
+ style: textColorStyle$1("mutedText")
34241
34341
  },
34242
34342
  $bind: {
34243
34343
  from: "content.emptyMessage",
@@ -34848,19 +34948,19 @@ var init_video_grid = __esmMin((() => {
34848
34948
  from: "item.aspectRatio",
34849
34949
  fallback: "16/9"
34850
34950
  } } }
34851
- }, bind$1("item.url"), when("item.aspectRatio")),
34951
+ }, bind$2("item.url"), when$1("item.aspectRatio")),
34852
34952
  videoEmbed({
34853
34953
  className: "rb-w-full rb-rounded-lg rb-overflow-hidden",
34854
34954
  style: { aspectRatio: { $bind: {
34855
34955
  from: "content.aspectRatio",
34856
34956
  fallback: "16/9"
34857
34957
  } } }
34858
- }, bind$1("item.url"), when("item.aspectRatio", { not: true })),
34958
+ }, bind$2("item.url"), when$1("item.aspectRatio", { not: true })),
34859
34959
  text({
34860
34960
  as: "figcaption",
34861
34961
  className: "rb-caption rb-text-center",
34862
- style: textColorStyle("mutedText")
34863
- }, bind$1("item.caption"), when("item.caption"))
34962
+ style: textColorStyle$1("mutedText")
34963
+ }, bind$2("item.caption"), when$1("item.caption"))
34864
34964
  ], repeat("content.videos", "item"));
34865
34965
  gridColumnsClass = (columns) => {
34866
34966
  switch (columns) {
@@ -34871,7 +34971,7 @@ var init_video_grid = __esmMin((() => {
34871
34971
  default: return "rb-grid rb-grid-cols-1 rb-gap-6 rb-sm-grid-cols-2 rb-md-grid-cols-3";
34872
34972
  }
34873
34973
  };
34874
- createGridLayout = (columns) => grid({ className: gridColumnsClass(columns) }, [videoItem({})], when("content.columns", { equals: String(columns) }));
34974
+ createGridLayout = (columns) => grid({ className: gridColumnsClass(columns) }, [videoItem({})], when$1("content.columns", { equals: String(columns) }));
34875
34975
  gridLayout1 = createGridLayout(1);
34876
34976
  gridLayout2 = createGridLayout(2);
34877
34977
  gridLayout3 = createGridLayout(3);
@@ -34888,7 +34988,7 @@ var init_video_grid = __esmMin((() => {
34888
34988
  type: "text",
34889
34989
  props: {
34890
34990
  as: "p",
34891
- style: textColorStyle("mutedText")
34991
+ style: textColorStyle$1("mutedText")
34892
34992
  },
34893
34993
  $bind: {
34894
34994
  from: "content.emptyMessage",
@@ -34912,12 +35012,12 @@ var init_video_grid = __esmMin((() => {
34912
35012
  className: "rb-text-center rb-mb-8"
34913
35013
  }, [text({
34914
35014
  as: "h2",
34915
- style: textColorStyle("heading")
34916
- }, bind$1("content.heading"), when("content.heading")), text({
35015
+ style: textColorStyle$1("heading")
35016
+ }, bind$2("content.heading"), when$1("content.heading")), text({
34917
35017
  as: "p",
34918
35018
  className: "rb-max-w-2xl rb-mx-auto",
34919
- style: textColorStyle("text")
34920
- }, bind$1("content.subheading"), when("content.subheading"))]),
35019
+ style: textColorStyle$1("text")
35020
+ }, bind$2("content.subheading"), when$1("content.subheading"))]),
34921
35021
  gridLayout1,
34922
35022
  gridLayout2,
34923
35023
  gridLayout3,
@@ -35113,26 +35213,26 @@ var init_audio_player = __esmMin((() => {
35113
35213
  resize: "cover",
35114
35214
  quality: 80
35115
35215
  }
35116
- }, bind$1("content.coverImage"), when("content.coverImage")), stack({
35216
+ }, bind$2("content.coverImage"), when$1("content.coverImage")), stack({
35117
35217
  gap: "md",
35118
35218
  className: "rb-p-5 rb-sm-p-6"
35119
35219
  }, [
35120
35220
  stack({ gap: "xs" }, [text({
35121
35221
  as: "h2",
35122
35222
  className: "rb-m-0",
35123
- style: textColorStyle("heading")
35124
- }, bind$1("content.title"), when("content.title")), text({
35223
+ style: textColorStyle$1("heading")
35224
+ }, bind$2("content.title"), when$1("content.title")), text({
35125
35225
  as: "p",
35126
35226
  className: "rb-m-0 rb-max-w-prose",
35127
- style: textColorStyle("mutedText")
35128
- }, bind$1("content.description"), when("content.description"))]),
35129
- media({ className: "rb-w-full" }, bind$1("content.audio"), when("content.audio")),
35227
+ style: textColorStyle$1("mutedText")
35228
+ }, bind$2("content.description"), when$1("content.description"))]),
35229
+ media({ className: "rb-w-full" }, bind$2("content.audio"), when$1("content.audio")),
35130
35230
  text({
35131
35231
  as: "p",
35132
35232
  className: "rb-caption rb-m-0",
35133
- style: textColorStyle("mutedText"),
35233
+ style: textColorStyle$1("mutedText"),
35134
35234
  value: "Choose an audio file to publish this player."
35135
- }, when("content.audio", { not: true }))
35235
+ }, when$1("content.audio", { not: true }))
35136
35236
  ])])]),
35137
35237
  spacing: "medium",
35138
35238
  baseClass: ""
@@ -35217,12 +35317,12 @@ var init_file_download = __esmMin((() => {
35217
35317
  from: "content.buttonVariant",
35218
35318
  fallback: "primary"
35219
35319
  } }
35220
- }, bind$1("content.file"), when("content.file")), text({
35320
+ }, bind$2("content.file"), when$1("content.file")), text({
35221
35321
  as: "p",
35222
35322
  className: "rb-caption rb-m-0",
35223
- style: textColorStyle("mutedText"),
35323
+ style: textColorStyle$1("mutedText"),
35224
35324
  value: "Choose a public downloadable file."
35225
- }, when("content.file", { not: true }))]),
35325
+ }, when$1("content.file", { not: true }))]),
35226
35326
  spacing: "medium",
35227
35327
  baseClass: ""
35228
35328
  });
@@ -37494,7 +37594,7 @@ var init_team_members = __esmMin((() => {
37494
37594
  equals: "site_staff",
37495
37595
  not: true
37496
37596
  };
37497
- headingNode = text({ as: "h2" }, bind$1("content.heading"), when("content.heading"));
37597
+ headingNode = text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading"));
37498
37598
  wrapVariant = (variantLayout) => styledSection({
37499
37599
  children: sectionContainer([stack({
37500
37600
  gap: "md",
@@ -37540,20 +37640,20 @@ var init_team_members = __esmMin((() => {
37540
37640
  quality: 85,
37541
37641
  resize: "cover"
37542
37642
  }
37543
- }, when("photo"), bind$1("photo"))])]), stack({
37643
+ }, when$1("photo"), bind$2("photo"))])]), stack({
37544
37644
  gap: "sm",
37545
37645
  className: "rb-team-member-body rb-flex-1 rb-min-w-0"
37546
37646
  }, [
37547
37647
  link({
37548
37648
  href: { $bind: { from: "profilePath" } },
37549
37649
  className: "rb-team-member-name-link"
37550
- }, [text({ as: "h3" }, bind$1("name"))], when("profilePath")),
37551
- text({ as: "h3" }, when("profilePath", { not: true }), bind$1("name")),
37650
+ }, [text({ as: "h3" }, bind$2("name"))], when$1("profilePath")),
37651
+ text({ as: "h3" }, when$1("profilePath", { not: true }), bind$2("name")),
37552
37652
  text({
37553
37653
  as: "p",
37554
37654
  className: "rb-team-member-role"
37555
- }, when("role"), bind$1("role")),
37556
- richText({ className: "rb-prose rb-max-w-none" }, when("bio"), bind$1("bio"))
37655
+ }, when$1("role"), bind$2("role")),
37656
+ richText$1({ className: "rb-prose rb-max-w-none" }, when$1("bio"), bind$2("bio"))
37557
37657
  ])]);
37558
37658
  gridVariant = wrapVariant(el$1("grid", {
37559
37659
  cols: { $bind: {
@@ -37565,12 +37665,12 @@ var init_team_members = __esmMin((() => {
37565
37665
  from: "content.gap",
37566
37666
  fallback: "medium"
37567
37667
  } }
37568
- }, [when("content.source", manualSourceWhen)(repeaterFragmentLayout({
37668
+ }, [when$1("content.source", manualSourceWhen)(repeaterFragmentLayout({
37569
37669
  collectionPath: "content.members",
37570
37670
  itemName: ITEM_NAME,
37571
37671
  fragments: { teamMember: teamMemberFragment },
37572
37672
  itemGap: "sm"
37573
- })), when("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
37673
+ })), when$1("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
37574
37674
  collectionPath: "data.members",
37575
37675
  itemName: ITEM_NAME,
37576
37676
  fragments: { teamMember: teamMemberFragment },
@@ -37582,13 +37682,13 @@ var init_team_members = __esmMin((() => {
37582
37682
  from: "content.gap",
37583
37683
  fallback: "medium"
37584
37684
  } } },
37585
- children: [when("content.source", manualSourceWhen)(repeaterFragmentLayout({
37685
+ children: [when$1("content.source", manualSourceWhen)(repeaterFragmentLayout({
37586
37686
  collectionPath: "content.members",
37587
37687
  itemName: ITEM_NAME,
37588
37688
  fragments: { teamMember: teamMemberFragment },
37589
37689
  layoutOverrides: { teamMember: teamMemberStackLayout },
37590
37690
  itemGap: "sm"
37591
- })), when("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
37691
+ })), when$1("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
37592
37692
  collectionPath: "data.members",
37593
37693
  itemName: ITEM_NAME,
37594
37694
  fragments: { teamMember: teamMemberFragment },
@@ -38194,7 +38294,7 @@ var init_location_map = __esmMin((() => {
38194
38294
  layout: styledSection({
38195
38295
  baseClass: "",
38196
38296
  spacing: "comfortable",
38197
- children: sectionContainer([text({ as: "h2" }, bind$1("content.heading"), when("content.heading")), el$1("location-map", {
38297
+ children: sectionContainer([text({ as: "h2" }, bind$2("content.heading"), when$1("content.heading")), el$1("location-map", {
38198
38298
  location: { $bind: {
38199
38299
  from: "content.location",
38200
38300
  fallback: null
@@ -39396,16 +39496,17 @@ var init_background = __esmMin((() => {
39396
39496
  run: (value, _options, context) => resolveSurfaceForegroundStyles(value, context)
39397
39497
  },
39398
39498
  {
39399
- id: "background.resolveAllowOverflow",
39499
+ id: "background.resolveFrameClassName",
39400
39500
  kind: "formatter",
39401
- summary: "Resolve allowOverflow from background config (explicit overflow or scaled image)",
39402
- run: (value) => {
39403
- if (!value || typeof value !== "object") return false;
39501
+ summary: "Resolve clipping on a decorative background frame without clipping foreground content",
39502
+ run: (value, options) => {
39503
+ const baseClass = options?.baseClass?.trim() ?? "";
39504
+ if (!value || typeof value !== "object") return `${baseClass} rb-overflow-hidden`.trim();
39404
39505
  const input = value;
39405
- if (input.overflow === true) return true;
39506
+ if (input.overflow === true) return `${baseClass} rb-overflow-visible`.trim();
39406
39507
  const objectFit = isString(input.objectFit) ? input.objectFit.trim() : null;
39407
39508
  const scale = isString(input.scale) ? input.scale.trim() : isNumber(input.scale) ? String(input.scale) : null;
39408
- return Boolean((objectFit === "custom" || objectFit === "original") && scale && scale.trim().length > 0);
39509
+ return `${baseClass} ${Boolean((objectFit === "custom" || objectFit === "original") && scale && scale.trim().length > 0) ? "rb-overflow-visible" : "rb-overflow-hidden"}`.trim();
39409
39510
  }
39410
39511
  },
39411
39512
  resolveImageStyleTransform,
@@ -40677,38 +40778,6 @@ var init_src$1 = __esmMin((() => {
40677
40778
  //#region ../api/src/url.ts
40678
40779
  var init_url = __esmMin((() => {
40679
40780
  init_src$1();
40680
- })), API_ERROR_CODES;
40681
- var init_envelope = __esmMin((() => {
40682
- API_ERROR_CODES = [
40683
- "auth:unauthenticated",
40684
- "auth:token_expired",
40685
- "auth:token_invalid",
40686
- "auth:forbidden",
40687
- "auth:mfa_required",
40688
- "auth:sudo_required",
40689
- "auth:insufficient_permissions",
40690
- "auth:impersonation_restricted",
40691
- "validation:invalid_input",
40692
- "validation:missing_field",
40693
- "validation:invalid_format",
40694
- "validation:payload_too_large",
40695
- "resource:not_found",
40696
- "resource:already_exists",
40697
- "resource:conflict",
40698
- "resource:gone",
40699
- "rate_limit:exceeded",
40700
- "billing:payment_required",
40701
- "billing:plan_limit_exceeded",
40702
- "billing:pass_redemption_failed",
40703
- "server:internal_error",
40704
- "server:unavailable",
40705
- "external:service_error",
40706
- "external:registrar_orphaned_contact_profile",
40707
- "network:connection_error",
40708
- "network:timeout",
40709
- "network:dns_error"
40710
- ];
40711
- new Set(API_ERROR_CODES);
40712
40781
  }));
40713
40782
  //#endregion
40714
40783
  //#region ../api/src/request.ts
@@ -41609,6 +41678,7 @@ var init_auth = __esmMin((() => {
41609
41678
  //#region ../api/src/index.ts
41610
41679
  var init_src = __esmMin((() => {
41611
41680
  init_endpoints();
41681
+ init_footerSettings();
41612
41682
  init_demoDashboardMutationSurfaces();
41613
41683
  init_accessAdmin();
41614
41684
  init_media$4();