@jxsuite/starters 3.3.2 → 3.5.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 (513) hide show
  1. package/package.json +5 -5
  2. package/sites/blog/components/bl-author-bio.jxn +64 -0
  3. package/sites/blog/components/bl-contact-form.jxn +77 -0
  4. package/sites/blog/components/bl-contact-info.jxn +32 -0
  5. package/sites/blog/components/bl-cta.jxn +52 -0
  6. package/sites/blog/components/bl-footer.jxn +85 -0
  7. package/sites/blog/components/bl-masthead.jxn +111 -0
  8. package/sites/blog/components/bl-nav.jxn +62 -0
  9. package/sites/blog/components/bl-newsletter-cta.jxn +104 -0
  10. package/sites/blog/components/bl-post-card.jxn +106 -0
  11. package/sites/blog/components/bl-post-list.jxn +11 -0
  12. package/sites/blog/components/bl-prose.jxn +67 -0
  13. package/sites/blog/components/bl-section-header.jxn +52 -0
  14. package/sites/blog/components/bl-tag-pill.jxn +19 -0
  15. package/sites/blog/document.schema.json +11 -2
  16. package/sites/blog/layouts/base.jxn +17 -0
  17. package/sites/blog/layouts/post.jxn +13 -0
  18. package/sites/blog/package.json +3 -3
  19. package/sites/blog/pages/[slug].jxn +107 -0
  20. package/sites/blog/project.jxn +86 -0
  21. package/sites/course/components/co-application.jxn +106 -0
  22. package/sites/course/components/co-cohort.jxn +132 -0
  23. package/sites/course/components/co-cta.jxn +95 -0
  24. package/sites/course/components/co-curriculum-accordion.jxn +917 -0
  25. package/sites/course/components/co-faq.jxn +348 -0
  26. package/sites/course/components/co-footer.jxn +138 -0
  27. package/sites/course/components/co-hero.jxn +354 -0
  28. package/sites/course/components/co-instructor-card.jxn +128 -0
  29. package/sites/course/components/co-mentor.jxn +51 -0
  30. package/sites/course/components/co-module-card.jxn +101 -0
  31. package/sites/course/components/co-nav.jxn +172 -0
  32. package/sites/course/components/co-outcome-card.jxn +57 -0
  33. package/sites/course/components/co-outcomes.jxn +179 -0
  34. package/sites/course/components/co-pricing.jxn +145 -0
  35. package/sites/course/components/co-section-header.jxn +55 -0
  36. package/sites/course/components/co-testimonial-card.jxn +69 -0
  37. package/sites/course/document.schema.json +11 -2
  38. package/sites/course/layouts/base.jxn +17 -0
  39. package/sites/course/package.json +3 -3
  40. package/sites/course/project.jxn +94 -0
  41. package/sites/event/components/ev-agenda-tabs.jxn +663 -0
  42. package/sites/event/components/ev-cta.jxn +93 -0
  43. package/sites/event/components/ev-feature.jxn +46 -0
  44. package/sites/event/components/ev-footer.jxn +135 -0
  45. package/sites/event/components/ev-hero.jxn +323 -0
  46. package/sites/event/components/ev-nav.jxn +142 -0
  47. package/sites/event/components/ev-reason.jxn +50 -0
  48. package/sites/event/components/ev-savedate.jxn +268 -0
  49. package/sites/event/components/ev-section-header.jxn +51 -0
  50. package/sites/event/components/ev-session-row.jxn +103 -0
  51. package/sites/event/components/ev-speaker-card.jxn +104 -0
  52. package/sites/event/components/ev-sponsors.jxn +110 -0
  53. package/sites/event/components/ev-stat.jxn +39 -0
  54. package/sites/event/components/ev-ticket-card.jxn +169 -0
  55. package/sites/event/components/ev-venue.jxn +61 -0
  56. package/sites/event/document.schema.json +11 -2
  57. package/sites/event/layouts/base.jxn +12 -0
  58. package/sites/event/package.json +3 -3
  59. package/sites/event/project.jxn +114 -0
  60. package/sites/fitness-studio/components/fs-band.jxn +119 -0
  61. package/sites/fitness-studio/components/fs-booking.jxn +92 -0
  62. package/sites/fitness-studio/components/fs-class-card.jxn +103 -0
  63. package/sites/fitness-studio/components/fs-class-grid.jxn +23 -0
  64. package/sites/fitness-studio/components/fs-cta.jxn +81 -0
  65. package/sites/fitness-studio/components/fs-feature.jxn +40 -0
  66. package/sites/fitness-studio/components/fs-footer.jxn +116 -0
  67. package/sites/fitness-studio/components/fs-hero.jxn +290 -0
  68. package/sites/fitness-studio/components/fs-hours.jxn +78 -0
  69. package/sites/fitness-studio/components/fs-instructor-card.jxn +104 -0
  70. package/sites/fitness-studio/components/fs-intro.jxn +231 -0
  71. package/sites/fitness-studio/components/fs-modality.jxn +133 -0
  72. package/sites/fitness-studio/components/fs-nav.jxn +95 -0
  73. package/sites/fitness-studio/components/fs-pricing-card.jxn +190 -0
  74. package/sites/fitness-studio/components/fs-pricing-table.jxn +322 -0
  75. package/sites/fitness-studio/components/fs-review.jxn +59 -0
  76. package/sites/fitness-studio/components/fs-schedule.jxn +714 -0
  77. package/sites/fitness-studio/components/fs-section-header.jxn +55 -0
  78. package/sites/fitness-studio/document.schema.json +11 -2
  79. package/sites/fitness-studio/layouts/base.jxn +17 -0
  80. package/sites/fitness-studio/package.json +3 -3
  81. package/sites/fitness-studio/project.jxn +124 -0
  82. package/sites/home-services/components/hs-callbar.jxn +60 -0
  83. package/sites/home-services/components/hs-cta.jxn +139 -0
  84. package/sites/home-services/components/hs-feature.jxn +43 -0
  85. package/sites/home-services/components/hs-footer.jxn +169 -0
  86. package/sites/home-services/components/hs-gallery.jxn +51 -0
  87. package/sites/home-services/components/hs-hero.jxn +308 -0
  88. package/sites/home-services/components/hs-intro.jxn +97 -0
  89. package/sites/home-services/components/hs-nav.jxn +207 -0
  90. package/sites/home-services/components/hs-reservation.jxn +125 -0
  91. package/sites/home-services/components/hs-review.jxn +84 -0
  92. package/sites/home-services/components/hs-section-header.jxn +56 -0
  93. package/sites/home-services/components/hs-service-card.jxn +68 -0
  94. package/sites/home-services/components/hs-stat.jxn +40 -0
  95. package/sites/home-services/components/hs-step.jxn +67 -0
  96. package/sites/home-services/components/hs-trust-bar.jxn +183 -0
  97. package/sites/home-services/document.schema.json +11 -2
  98. package/sites/home-services/layouts/base.jxn +22 -0
  99. package/sites/home-services/package.json +3 -3
  100. package/sites/home-services/project.jxn +113 -0
  101. package/sites/museum/components/mu-band.jxn +63 -0
  102. package/sites/museum/components/mu-cta.jxn +76 -0
  103. package/sites/museum/components/mu-exhibition-card.jxn +118 -0
  104. package/sites/museum/components/mu-exhibition-row.jxn +142 -0
  105. package/sites/museum/components/mu-fact.jxn +40 -0
  106. package/sites/museum/components/mu-footer.jxn +206 -0
  107. package/sites/museum/components/mu-hero.jxn +165 -0
  108. package/sites/museum/components/mu-more.jxn +30 -0
  109. package/sites/museum/components/mu-oculus.jxn +33 -0
  110. package/sites/museum/components/mu-pagehead.jxn +76 -0
  111. package/sites/museum/components/mu-quote.jxn +36 -0
  112. package/sites/museum/document.schema.json +11 -2
  113. package/sites/museum/layouts/ar.jxn +31 -0
  114. package/sites/museum/layouts/base.jxn +227 -0
  115. package/sites/museum/layouts/fr-ca.jxn +30 -0
  116. package/sites/museum/package.json +3 -3
  117. package/sites/museum/pages/about.jxn +228 -0
  118. package/sites/museum/pages/ar/about.jxn +232 -0
  119. package/sites/museum/pages/ar/exhibitions/[slug].jxn +150 -0
  120. package/sites/museum/pages/ar/exhibitions/index.jxn +82 -0
  121. package/sites/museum/pages/ar/index.jxn +206 -0
  122. package/sites/museum/pages/ar/visit.jxn +270 -0
  123. package/sites/museum/pages/exhibitions/[slug].jxn +146 -0
  124. package/sites/museum/pages/exhibitions/index.jxn +78 -0
  125. package/sites/museum/pages/fr-ca/a-propos.jxn +233 -0
  126. package/sites/museum/pages/fr-ca/expositions/[slug].jxn +151 -0
  127. package/sites/museum/pages/fr-ca/expositions/index.jxn +83 -0
  128. package/sites/museum/pages/fr-ca/index.jxn +206 -0
  129. package/sites/museum/pages/fr-ca/visite.jxn +271 -0
  130. package/sites/museum/pages/index.jxn +202 -0
  131. package/sites/museum/pages/visit.jxn +266 -0
  132. package/sites/museum/project.jxn +130 -0
  133. package/sites/nonprofit/components/np-contact-form.jxn +97 -0
  134. package/sites/nonprofit/components/np-contact-info.jxn +104 -0
  135. package/sites/nonprofit/components/np-cta.jxn +163 -0
  136. package/sites/nonprofit/components/np-donate-tier.jxn +103 -0
  137. package/sites/nonprofit/components/np-feature.jxn +46 -0
  138. package/sites/nonprofit/components/np-footer.jxn +194 -0
  139. package/sites/nonprofit/components/np-hero.jxn +275 -0
  140. package/sites/nonprofit/components/np-impact-band.jxn +83 -0
  141. package/sites/nonprofit/components/np-intro.jxn +130 -0
  142. package/sites/nonprofit/components/np-nav.jxn +157 -0
  143. package/sites/nonprofit/components/np-program-card.jxn +95 -0
  144. package/sites/nonprofit/components/np-section-header.jxn +63 -0
  145. package/sites/nonprofit/components/np-stat.jxn +51 -0
  146. package/sites/nonprofit/components/np-step.jxn +73 -0
  147. package/sites/nonprofit/components/np-team-member.jxn +60 -0
  148. package/sites/nonprofit/components/np-testimonial.jxn +120 -0
  149. package/sites/nonprofit/document.schema.json +11 -2
  150. package/sites/nonprofit/layouts/base.jxn +17 -0
  151. package/sites/nonprofit/package.json +3 -3
  152. package/sites/nonprofit/project.jxn +99 -0
  153. package/sites/portfolio/components/pv-about-split.jxn +53 -0
  154. package/sites/portfolio/components/pv-category-pill.jxn +19 -0
  155. package/sites/portfolio/components/pv-contact-form.jxn +72 -0
  156. package/sites/portfolio/components/pv-cta.jxn +62 -0
  157. package/sites/portfolio/components/pv-feature.jxn +28 -0
  158. package/sites/portfolio/components/pv-footer.jxn +113 -0
  159. package/sites/portfolio/components/pv-gallery.jxn +40 -0
  160. package/sites/portfolio/components/pv-hero.jxn +109 -0
  161. package/sites/portfolio/components/pv-nav.jxn +76 -0
  162. package/sites/portfolio/components/pv-project-card.jxn +118 -0
  163. package/sites/portfolio/components/pv-project-grid.jxn +29 -0
  164. package/sites/portfolio/components/pv-section-header.jxn +65 -0
  165. package/sites/portfolio/document.schema.json +11 -2
  166. package/sites/portfolio/layouts/base.jxn +12 -0
  167. package/sites/portfolio/package.json +3 -3
  168. package/sites/portfolio/pages/[slug].jxn +177 -0
  169. package/sites/portfolio/project.jxn +85 -0
  170. package/sites/professional-firm/components/pf-article-header.jxn +60 -0
  171. package/sites/professional-firm/components/pf-contact-form.jxn +74 -0
  172. package/sites/professional-firm/components/pf-contact-info.jxn +101 -0
  173. package/sites/professional-firm/components/pf-cta.jxn +63 -0
  174. package/sites/professional-firm/components/pf-feature.jxn +32 -0
  175. package/sites/professional-firm/components/pf-footer.jxn +171 -0
  176. package/sites/professional-firm/components/pf-hero.jxn +139 -0
  177. package/sites/professional-firm/components/pf-insight-row.jxn +111 -0
  178. package/sites/professional-firm/components/pf-intro.jxn +68 -0
  179. package/sites/professional-firm/components/pf-logo-bar.jxn +90 -0
  180. package/sites/professional-firm/components/pf-nav.jxn +93 -0
  181. package/sites/professional-firm/components/pf-section-header.jxn +53 -0
  182. package/sites/professional-firm/components/pf-service-row.jxn +67 -0
  183. package/sites/professional-firm/components/pf-statband.jxn +135 -0
  184. package/sites/professional-firm/components/pf-team-member.jxn +53 -0
  185. package/sites/professional-firm/document.schema.json +11 -2
  186. package/sites/professional-firm/layouts/article.jxn +88 -0
  187. package/sites/professional-firm/layouts/base.jxn +12 -0
  188. package/sites/professional-firm/package.json +3 -3
  189. package/sites/professional-firm/pages/insights/[slug].jxn +106 -0
  190. package/sites/professional-firm/project.jxn +94 -0
  191. package/sites/real-estate/components/re-agent-band.jxn +165 -0
  192. package/sites/real-estate/components/re-agent-card.jxn +78 -0
  193. package/sites/real-estate/components/re-contact-form.jxn +119 -0
  194. package/sites/real-estate/components/re-cta.jxn +98 -0
  195. package/sites/real-estate/components/re-detail-row.jxn +18 -0
  196. package/sites/real-estate/components/re-feature.jxn +41 -0
  197. package/sites/real-estate/components/re-footer.jxn +219 -0
  198. package/sites/real-estate/components/re-hero.jxn +367 -0
  199. package/sites/real-estate/components/re-intro.jxn +43 -0
  200. package/sites/real-estate/components/re-listing-card.jxn +210 -0
  201. package/sites/real-estate/components/re-listings-filter.jxn +371 -0
  202. package/sites/real-estate/components/re-nav.jxn +162 -0
  203. package/sites/real-estate/components/re-neighborhood.jxn +101 -0
  204. package/sites/real-estate/components/re-section-header.jxn +55 -0
  205. package/sites/real-estate/components/re-stat.jxn +26 -0
  206. package/sites/real-estate/components/re-step.jxn +42 -0
  207. package/sites/real-estate/components/re-testimonial.jxn +66 -0
  208. package/sites/real-estate/document.schema.json +11 -2
  209. package/sites/real-estate/layouts/base.jxn +17 -0
  210. package/sites/real-estate/package.json +3 -3
  211. package/sites/real-estate/pages/[slug].jxn +452 -0
  212. package/sites/real-estate/project.jxn +103 -0
  213. package/sites/restaurant/components/bit-cta.jxn +105 -0
  214. package/sites/restaurant/components/bit-feature.jxn +38 -0
  215. package/sites/restaurant/components/bit-footer.jxn +142 -0
  216. package/sites/restaurant/components/bit-gallery.jxn +50 -0
  217. package/sites/restaurant/components/bit-hero.jxn +194 -0
  218. package/sites/restaurant/components/bit-hours.jxn +145 -0
  219. package/sites/restaurant/components/bit-intro.jxn +75 -0
  220. package/sites/restaurant/components/bit-menu-group.jxn +51 -0
  221. package/sites/restaurant/components/bit-menu-item.jxn +50 -0
  222. package/sites/restaurant/components/bit-nav.jxn +145 -0
  223. package/sites/restaurant/components/bit-reservation.jxn +90 -0
  224. package/sites/restaurant/components/bit-review.jxn +54 -0
  225. package/sites/restaurant/components/bit-section-header.jxn +73 -0
  226. package/sites/restaurant/document.schema.json +11 -2
  227. package/sites/restaurant/layouts/base.jxn +17 -0
  228. package/sites/restaurant/package.json +3 -3
  229. package/sites/restaurant/project.jxn +93 -0
  230. package/sites/saas/components/sa-check-item.jxn +25 -0
  231. package/sites/saas/components/sa-contact-form.jxn +94 -0
  232. package/sites/saas/components/sa-cta.jxn +68 -0
  233. package/sites/saas/components/sa-faq.jxn +347 -0
  234. package/sites/saas/components/sa-feature-card.jxn +57 -0
  235. package/sites/saas/components/sa-feature-split.jxn +43 -0
  236. package/sites/saas/components/sa-footer.jxn +106 -0
  237. package/sites/saas/components/sa-hero.jxn +217 -0
  238. package/sites/saas/components/sa-logo-cloud.jxn +98 -0
  239. package/sites/saas/components/sa-nav.jxn +108 -0
  240. package/sites/saas/components/sa-pricing.jxn +317 -0
  241. package/sites/saas/components/sa-section-header.jxn +43 -0
  242. package/sites/saas/components/sa-stat.jxn +32 -0
  243. package/sites/saas/components/sa-testimonial-card.jxn +37 -0
  244. package/sites/saas/document.schema.json +11 -2
  245. package/sites/saas/layouts/base.jxn +17 -0
  246. package/sites/saas/package.json +3 -3
  247. package/sites/saas/project.jxn +119 -0
  248. package/sites/shop/components/shp-badge.jxn +17 -0
  249. package/sites/shop/components/shp-category-tile.jxn +79 -0
  250. package/sites/shop/components/shp-contact-form.jxn +84 -0
  251. package/sites/shop/components/shp-cta.jxn +85 -0
  252. package/sites/shop/components/shp-feature.jxn +44 -0
  253. package/sites/shop/components/shp-footer.jxn +311 -0
  254. package/sites/shop/components/shp-hero.jxn +311 -0
  255. package/sites/shop/components/shp-intro.jxn +42 -0
  256. package/sites/shop/components/shp-nav.jxn +273 -0
  257. package/sites/shop/components/shp-newsletter.jxn +119 -0
  258. package/sites/shop/components/shp-product-card.jxn +187 -0
  259. package/sites/shop/components/shp-product-filter.jxn +263 -0
  260. package/sites/shop/components/shp-review.jxn +38 -0
  261. package/sites/shop/components/shp-section-header.jxn +61 -0
  262. package/sites/shop/components/shp-service.jxn +58 -0
  263. package/sites/shop/components/shp-stat.jxn +27 -0
  264. package/sites/shop/components/shp-trust.jxn +39 -0
  265. package/sites/shop/components/shp-visit-info.jxn +82 -0
  266. package/sites/shop/document.schema.json +11 -2
  267. package/sites/shop/layouts/base.jxn +17 -0
  268. package/sites/shop/package.json +3 -3
  269. package/sites/shop/pages/products/[sku].jxn +351 -0
  270. package/sites/shop/project.jxn +100 -0
  271. package/sites/blog/components/bl-author-bio.json +0 -86
  272. package/sites/blog/components/bl-contact-form.json +0 -114
  273. package/sites/blog/components/bl-contact-info.json +0 -54
  274. package/sites/blog/components/bl-cta.json +0 -68
  275. package/sites/blog/components/bl-footer.json +0 -122
  276. package/sites/blog/components/bl-masthead.json +0 -134
  277. package/sites/blog/components/bl-nav.json +0 -90
  278. package/sites/blog/components/bl-newsletter-cta.json +0 -134
  279. package/sites/blog/components/bl-post-card.json +0 -132
  280. package/sites/blog/components/bl-post-list.json +0 -10
  281. package/sites/blog/components/bl-prose.json +0 -89
  282. package/sites/blog/components/bl-section-header.json +0 -70
  283. package/sites/blog/components/bl-tag-pill.json +0 -29
  284. package/sites/blog/layouts/base.json +0 -22
  285. package/sites/blog/layouts/post.json +0 -15
  286. package/sites/blog/pages/[slug].json +0 -148
  287. package/sites/blog/project.json +0 -140
  288. package/sites/course/components/co-application.json +0 -225
  289. package/sites/course/components/co-cohort.json +0 -172
  290. package/sites/course/components/co-cta.json +0 -126
  291. package/sites/course/components/co-curriculum-accordion.json +0 -1476
  292. package/sites/course/components/co-faq.json +0 -524
  293. package/sites/course/components/co-footer.json +0 -195
  294. package/sites/course/components/co-hero.json +0 -475
  295. package/sites/course/components/co-instructor-card.json +0 -159
  296. package/sites/course/components/co-mentor.json +0 -65
  297. package/sites/course/components/co-module-card.json +0 -138
  298. package/sites/course/components/co-nav.json +0 -244
  299. package/sites/course/components/co-outcome-card.json +0 -84
  300. package/sites/course/components/co-outcomes.json +0 -248
  301. package/sites/course/components/co-pricing.json +0 -178
  302. package/sites/course/components/co-section-header.json +0 -74
  303. package/sites/course/components/co-testimonial-card.json +0 -109
  304. package/sites/course/layouts/base.json +0 -22
  305. package/sites/course/project.json +0 -141
  306. package/sites/event/components/ev-agenda-tabs.json +0 -828
  307. package/sites/event/components/ev-cta.json +0 -126
  308. package/sites/event/components/ev-feature.json +0 -62
  309. package/sites/event/components/ev-footer.json +0 -197
  310. package/sites/event/components/ev-hero.json +0 -431
  311. package/sites/event/components/ev-nav.json +0 -186
  312. package/sites/event/components/ev-reason.json +0 -64
  313. package/sites/event/components/ev-savedate.json +0 -331
  314. package/sites/event/components/ev-section-header.json +0 -70
  315. package/sites/event/components/ev-session-row.json +0 -132
  316. package/sites/event/components/ev-speaker-card.json +0 -130
  317. package/sites/event/components/ev-sponsors.json +0 -131
  318. package/sites/event/components/ev-stat.json +0 -47
  319. package/sites/event/components/ev-ticket-card.json +0 -214
  320. package/sites/event/components/ev-venue.json +0 -86
  321. package/sites/event/layouts/base.json +0 -22
  322. package/sites/event/project.json +0 -163
  323. package/sites/fitness-studio/components/fs-band.json +0 -149
  324. package/sites/fitness-studio/components/fs-booking.json +0 -147
  325. package/sites/fitness-studio/components/fs-class-card.json +0 -143
  326. package/sites/fitness-studio/components/fs-class-grid.json +0 -36
  327. package/sites/fitness-studio/components/fs-cta.json +0 -106
  328. package/sites/fitness-studio/components/fs-feature.json +0 -56
  329. package/sites/fitness-studio/components/fs-footer.json +0 -178
  330. package/sites/fitness-studio/components/fs-hero.json +0 -375
  331. package/sites/fitness-studio/components/fs-hours.json +0 -109
  332. package/sites/fitness-studio/components/fs-instructor-card.json +0 -136
  333. package/sites/fitness-studio/components/fs-intro.json +0 -294
  334. package/sites/fitness-studio/components/fs-modality.json +0 -171
  335. package/sites/fitness-studio/components/fs-nav.json +0 -128
  336. package/sites/fitness-studio/components/fs-pricing-card.json +0 -243
  337. package/sites/fitness-studio/components/fs-pricing-table.json +0 -458
  338. package/sites/fitness-studio/components/fs-review.json +0 -88
  339. package/sites/fitness-studio/components/fs-schedule.json +0 -1165
  340. package/sites/fitness-studio/components/fs-section-header.json +0 -77
  341. package/sites/fitness-studio/layouts/base.json +0 -22
  342. package/sites/fitness-studio/project.json +0 -175
  343. package/sites/home-services/components/hs-callbar.json +0 -72
  344. package/sites/home-services/components/hs-cta.json +0 -184
  345. package/sites/home-services/components/hs-feature.json +0 -62
  346. package/sites/home-services/components/hs-footer.json +0 -232
  347. package/sites/home-services/components/hs-gallery.json +0 -104
  348. package/sites/home-services/components/hs-hero.json +0 -446
  349. package/sites/home-services/components/hs-intro.json +0 -122
  350. package/sites/home-services/components/hs-nav.json +0 -278
  351. package/sites/home-services/components/hs-reservation.json +0 -225
  352. package/sites/home-services/components/hs-review.json +0 -114
  353. package/sites/home-services/components/hs-section-header.json +0 -70
  354. package/sites/home-services/components/hs-service-card.json +0 -89
  355. package/sites/home-services/components/hs-stat.json +0 -54
  356. package/sites/home-services/components/hs-step.json +0 -80
  357. package/sites/home-services/components/hs-trust-bar.json +0 -256
  358. package/sites/home-services/layouts/base.json +0 -24
  359. package/sites/home-services/project.json +0 -160
  360. package/sites/museum/components/mu-band.json +0 -92
  361. package/sites/museum/components/mu-cta.json +0 -101
  362. package/sites/museum/components/mu-exhibition-card.json +0 -191
  363. package/sites/museum/components/mu-exhibition-row.json +0 -237
  364. package/sites/museum/components/mu-fact.json +0 -64
  365. package/sites/museum/components/mu-footer.json +0 -256
  366. package/sites/museum/components/mu-hero.json +0 -236
  367. package/sites/museum/components/mu-more.json +0 -63
  368. package/sites/museum/components/mu-oculus.json +0 -44
  369. package/sites/museum/components/mu-pagehead.json +0 -105
  370. package/sites/museum/components/mu-quote.json +0 -49
  371. package/sites/museum/layouts/ar.json +0 -29
  372. package/sites/museum/layouts/base.json +0 -329
  373. package/sites/museum/layouts/fr-ca.json +0 -28
  374. package/sites/museum/pages/about.json +0 -378
  375. package/sites/museum/pages/ar/about.json +0 -314
  376. package/sites/museum/pages/ar/exhibitions/[slug].json +0 -211
  377. package/sites/museum/pages/ar/exhibitions/index.json +0 -103
  378. package/sites/museum/pages/ar/index.json +0 -246
  379. package/sites/museum/pages/ar/visit.json +0 -327
  380. package/sites/museum/pages/exhibitions/[slug].json +0 -200
  381. package/sites/museum/pages/exhibitions/index.json +0 -93
  382. package/sites/museum/pages/fr-ca/a-propos.json +0 -313
  383. package/sites/museum/pages/fr-ca/expositions/[slug].json +0 -215
  384. package/sites/museum/pages/fr-ca/expositions/index.json +0 -104
  385. package/sites/museum/pages/fr-ca/index.json +0 -246
  386. package/sites/museum/pages/fr-ca/visite.json +0 -328
  387. package/sites/museum/pages/index.json +0 -236
  388. package/sites/museum/pages/visit.json +0 -317
  389. package/sites/museum/project.json +0 -179
  390. package/sites/nonprofit/components/np-contact-form.json +0 -162
  391. package/sites/nonprofit/components/np-contact-info.json +0 -159
  392. package/sites/nonprofit/components/np-cta.json +0 -203
  393. package/sites/nonprofit/components/np-donate-tier.json +0 -116
  394. package/sites/nonprofit/components/np-feature.json +0 -57
  395. package/sites/nonprofit/components/np-footer.json +0 -257
  396. package/sites/nonprofit/components/np-hero.json +0 -360
  397. package/sites/nonprofit/components/np-impact-band.json +0 -108
  398. package/sites/nonprofit/components/np-intro.json +0 -166
  399. package/sites/nonprofit/components/np-nav.json +0 -216
  400. package/sites/nonprofit/components/np-program-card.json +0 -129
  401. package/sites/nonprofit/components/np-section-header.json +0 -79
  402. package/sites/nonprofit/components/np-stat.json +0 -69
  403. package/sites/nonprofit/components/np-step.json +0 -84
  404. package/sites/nonprofit/components/np-team-member.json +0 -74
  405. package/sites/nonprofit/components/np-testimonial.json +0 -169
  406. package/sites/nonprofit/layouts/base.json +0 -22
  407. package/sites/nonprofit/project.json +0 -147
  408. package/sites/portfolio/components/pv-about-split.json +0 -71
  409. package/sites/portfolio/components/pv-category-pill.json +0 -25
  410. package/sites/portfolio/components/pv-contact-form.json +0 -126
  411. package/sites/portfolio/components/pv-cta.json +0 -80
  412. package/sites/portfolio/components/pv-feature.json +0 -48
  413. package/sites/portfolio/components/pv-footer.json +0 -167
  414. package/sites/portfolio/components/pv-gallery.json +0 -50
  415. package/sites/portfolio/components/pv-hero.json +0 -139
  416. package/sites/portfolio/components/pv-nav.json +0 -100
  417. package/sites/portfolio/components/pv-project-card.json +0 -160
  418. package/sites/portfolio/components/pv-project-grid.json +0 -30
  419. package/sites/portfolio/components/pv-section-header.json +0 -90
  420. package/sites/portfolio/layouts/base.json +0 -22
  421. package/sites/portfolio/pages/[slug].json +0 -260
  422. package/sites/portfolio/project.json +0 -137
  423. package/sites/professional-firm/components/pf-article-header.json +0 -93
  424. package/sites/professional-firm/components/pf-contact-form.json +0 -146
  425. package/sites/professional-firm/components/pf-contact-info.json +0 -147
  426. package/sites/professional-firm/components/pf-cta.json +0 -86
  427. package/sites/professional-firm/components/pf-feature.json +0 -52
  428. package/sites/professional-firm/components/pf-footer.json +0 -231
  429. package/sites/professional-firm/components/pf-hero.json +0 -174
  430. package/sites/professional-firm/components/pf-insight-row.json +0 -144
  431. package/sites/professional-firm/components/pf-intro.json +0 -93
  432. package/sites/professional-firm/components/pf-logo-bar.json +0 -113
  433. package/sites/professional-firm/components/pf-nav.json +0 -135
  434. package/sites/professional-firm/components/pf-section-header.json +0 -77
  435. package/sites/professional-firm/components/pf-service-row.json +0 -104
  436. package/sites/professional-firm/components/pf-statband.json +0 -183
  437. package/sites/professional-firm/components/pf-team-member.json +0 -75
  438. package/sites/professional-firm/layouts/article.json +0 -130
  439. package/sites/professional-firm/layouts/base.json +0 -22
  440. package/sites/professional-firm/pages/insights/[slug].json +0 -129
  441. package/sites/professional-firm/project.json +0 -145
  442. package/sites/real-estate/components/re-agent-band.json +0 -240
  443. package/sites/real-estate/components/re-agent-card.json +0 -93
  444. package/sites/real-estate/components/re-contact-form.json +0 -181
  445. package/sites/real-estate/components/re-cta.json +0 -128
  446. package/sites/real-estate/components/re-detail-row.json +0 -26
  447. package/sites/real-estate/components/re-feature.json +0 -57
  448. package/sites/real-estate/components/re-footer.json +0 -291
  449. package/sites/real-estate/components/re-hero.json +0 -536
  450. package/sites/real-estate/components/re-intro.json +0 -60
  451. package/sites/real-estate/components/re-listing-card.json +0 -286
  452. package/sites/real-estate/components/re-listings-filter.json +0 -454
  453. package/sites/real-estate/components/re-nav.json +0 -216
  454. package/sites/real-estate/components/re-neighborhood.json +0 -135
  455. package/sites/real-estate/components/re-section-header.json +0 -69
  456. package/sites/real-estate/components/re-stat.json +0 -37
  457. package/sites/real-estate/components/re-step.json +0 -58
  458. package/sites/real-estate/components/re-testimonial.json +0 -91
  459. package/sites/real-estate/layouts/base.json +0 -22
  460. package/sites/real-estate/pages/[slug].json +0 -629
  461. package/sites/real-estate/project.json +0 -163
  462. package/sites/restaurant/components/bit-cta.json +0 -140
  463. package/sites/restaurant/components/bit-feature.json +0 -61
  464. package/sites/restaurant/components/bit-footer.json +0 -191
  465. package/sites/restaurant/components/bit-gallery.json +0 -74
  466. package/sites/restaurant/components/bit-hero.json +0 -253
  467. package/sites/restaurant/components/bit-hours.json +0 -183
  468. package/sites/restaurant/components/bit-intro.json +0 -96
  469. package/sites/restaurant/components/bit-menu-group.json +0 -74
  470. package/sites/restaurant/components/bit-menu-item.json +0 -72
  471. package/sites/restaurant/components/bit-nav.json +0 -214
  472. package/sites/restaurant/components/bit-reservation.json +0 -155
  473. package/sites/restaurant/components/bit-review.json +0 -84
  474. package/sites/restaurant/components/bit-section-header.json +0 -98
  475. package/sites/restaurant/layouts/base.json +0 -22
  476. package/sites/restaurant/project.json +0 -145
  477. package/sites/saas/components/sa-check-item.json +0 -40
  478. package/sites/saas/components/sa-contact-form.json +0 -153
  479. package/sites/saas/components/sa-cta.json +0 -102
  480. package/sites/saas/components/sa-faq.json +0 -413
  481. package/sites/saas/components/sa-feature-card.json +0 -69
  482. package/sites/saas/components/sa-feature-split.json +0 -60
  483. package/sites/saas/components/sa-footer.json +0 -145
  484. package/sites/saas/components/sa-hero.json +0 -277
  485. package/sites/saas/components/sa-logo-cloud.json +0 -119
  486. package/sites/saas/components/sa-nav.json +0 -138
  487. package/sites/saas/components/sa-pricing.json +0 -428
  488. package/sites/saas/components/sa-section-header.json +0 -55
  489. package/sites/saas/components/sa-stat.json +0 -44
  490. package/sites/saas/components/sa-testimonial-card.json +0 -57
  491. package/sites/saas/layouts/base.json +0 -22
  492. package/sites/saas/project.json +0 -166
  493. package/sites/shop/components/shp-badge.json +0 -18
  494. package/sites/shop/components/shp-category-tile.json +0 -104
  495. package/sites/shop/components/shp-contact-form.json +0 -156
  496. package/sites/shop/components/shp-cta.json +0 -121
  497. package/sites/shop/components/shp-feature.json +0 -60
  498. package/sites/shop/components/shp-footer.json +0 -411
  499. package/sites/shop/components/shp-hero.json +0 -395
  500. package/sites/shop/components/shp-intro.json +0 -59
  501. package/sites/shop/components/shp-nav.json +0 -358
  502. package/sites/shop/components/shp-newsletter.json +0 -166
  503. package/sites/shop/components/shp-product-card.json +0 -238
  504. package/sites/shop/components/shp-product-filter.json +0 -366
  505. package/sites/shop/components/shp-review.json +0 -54
  506. package/sites/shop/components/shp-section-header.json +0 -75
  507. package/sites/shop/components/shp-service.json +0 -83
  508. package/sites/shop/components/shp-stat.json +0 -37
  509. package/sites/shop/components/shp-trust.json +0 -58
  510. package/sites/shop/components/shp-visit-info.json +0 -132
  511. package/sites/shop/layouts/base.json +0 -22
  512. package/sites/shop/pages/products/[sku].json +0 -482
  513. package/sites/shop/project.json +0 -156
@@ -0,0 +1,271 @@
1
+ /- kdl-version 2
2
+ $layout "./layouts/fr-ca.jxn"
3
+ $translationKey visit
4
+ $head {
5
+ meta name=description content="Heures, admission, transport et accessibilité au musée municipal d'art et d'histoire Atrium. Entrée libre, du mardi au dimanche, de 10 h à 18 h."
6
+ }
7
+
8
+ $element .title="Préparer sa visite — Atrium" .description="Heures, admission, transport et accessibilité au musée municipal d'art et d'histoire Atrium. Entrée libre, du mardi au dimanche, de 10 h à 18 h." {
9
+ state {
10
+ tourPrice {
11
+ $expression {
12
+ operator call
13
+ target (ref)"window#/Intl/formatNumber"
14
+ value {
15
+ - 12
16
+ - #null
17
+ - style=currency currency=CAD
18
+ }
19
+ }
20
+ }
21
+ membership {
22
+ $expression {
23
+ operator call
24
+ target (ref)"window#/Intl/formatNumber"
25
+ value {
26
+ - 45
27
+ - #null
28
+ - style=currency currency=CAD
29
+ }
30
+ }
31
+ }
32
+ trams {
33
+ $expression {
34
+ operator call
35
+ target (ref)"window#/Intl/formatList"
36
+ value {
37
+ - "2" "6" "11"
38
+ }
39
+ }
40
+ }
41
+ closedFrom {
42
+ $expression {
43
+ operator call
44
+ target (ref)"window#/Intl/formatDate"
45
+ value {
46
+ - "2026-12-24"
47
+ - #null
48
+ - day=numeric month=long
49
+ }
50
+ }
51
+ }
52
+ closedTo {
53
+ $expression {
54
+ operator call
55
+ target (ref)"window#/Intl/formatDate"
56
+ value {
57
+ - "2026-12-26"
58
+ - #null
59
+ - day=numeric month=long year=numeric
60
+ }
61
+ }
62
+ }
63
+ }
64
+ mu-pagehead {
65
+ $props {
66
+ kicker Visite
67
+ title "De dix heures à six heures, six jours sur sept"
68
+ standfirst "Il n'y a pas de billetterie, parce qu'il n'y a pas de billet. Entrez par le côté du quai, laissez votre sac au comptoir s'il est plus gros qu'une sacoche, et commencez où vous voulez."
69
+ metaLabel Adresse
70
+ metaValue "2, quai des Écluses, Vieux-Port"
71
+ }
72
+ }
73
+ mu-band {
74
+ $props index="01" label=Heures tone=chalk
75
+ div {
76
+ style {
77
+ display grid
78
+ gridTemplateColumns "repeat(2, minmax(0, 1fr))"
79
+ columnGap "clamp(2rem, 5vw, 4rem)"
80
+ @--md gridTemplateColumns="minmax(0, 1fr)"
81
+ }
82
+ div {
83
+ mu-fact {
84
+ $props {
85
+ term "Mar. – ven."
86
+ value "10 h – 18 h"
87
+ note "Dernière entrée à la salle de lecture à 17 h."
88
+ }
89
+ }
90
+ mu-fact {
91
+ $props {
92
+ term "Sam. – dim."
93
+ value "10 h – 18 h"
94
+ note "La cour reste ouverte jusqu'à 19 h de mai à septembre."
95
+ }
96
+ }
97
+ }
98
+ div {
99
+ mu-fact {
100
+ $props {
101
+ term Lundi
102
+ value Fermé
103
+ note "Journée de conservation. Le café côté quai reste ouvert."
104
+ }
105
+ }
106
+ mu-fact {
107
+ $props {
108
+ term "Fermeture d'hiver"
109
+ value "Du ${state.closedFrom} au ${state.closedTo}"
110
+ note "Les trois seuls jours consécutifs de fermeture de toute l'année."
111
+ }
112
+ }
113
+ }
114
+ }
115
+ }
116
+ mu-band {
117
+ $props index="02" label=Admission tone=card
118
+ div {
119
+ style {
120
+ display grid
121
+ gridTemplateColumns "minmax(0, 1fr) minmax(0, 1fr)"
122
+ columnGap "clamp(2rem, 5vw, 4rem)"
123
+ rowGap "1.5rem"
124
+ @--md gridTemplateColumns="minmax(0, 1fr)"
125
+ }
126
+ div {
127
+ style {
128
+ border "2px solid var(--color-ink)"
129
+ backgroundColor "var(--color-pigment)"
130
+ color "var(--color-card)"
131
+ padding "clamp(1.5rem, 3.5vw, 2.25rem)"
132
+ }
133
+ p "Admission générale" {
134
+ style {
135
+ margin "0 0 0.9rem"
136
+ fontFamily "var(--font-label)"
137
+ fontSize "0.66rem"
138
+ letterSpacing "var(--label-tracking)"
139
+ textTransform "var(--label-case)"
140
+ opacity "0.8"
141
+ }
142
+ }
143
+ p Gratuite {
144
+ style {
145
+ margin "0"
146
+ fontFamily "var(--font-display)"
147
+ fontSize "clamp(2.4rem, 6vw, 3.6rem)"
148
+ fontWeight "700"
149
+ lineHeight "calc(1 * var(--leading-scale))"
150
+ letterSpacing "var(--display-tracking)"
151
+ }
152
+ }
153
+ p "Inscrite dans la souscription fondatrice de 1897 et jamais modifiée depuis. Pas de billet, pas de réservation, pas d'heure réservée aux membres." {
154
+ style margin="1.1rem 0 0" lineHeight="1.65" maxWidth="34ch"
155
+ }
156
+ }
157
+ div {
158
+ mu-fact {
159
+ $props {
160
+ term "Visite guidée"
161
+ value "${state.tourPrice}"
162
+ note "Quatre-vingt-dix minutes, le samedi à 11 h et à 15 h. Réservation au comptoir."
163
+ }
164
+ }
165
+ mu-fact {
166
+ $props {
167
+ term Adhésion
168
+ value "${state.membership}"
169
+ note "Une année de visites guidées, la revue trimestrielle et un droit de vote à l'assemblée annuelle."
170
+ }
171
+ }
172
+ mu-fact {
173
+ $props {
174
+ term Écoles
175
+ value "Jamais de frais"
176
+ note "L'autobus compris. Écrivez au service éducatif six semaines à l'avance."
177
+ }
178
+ }
179
+ }
180
+ }
181
+ }
182
+ mu-band {
183
+ $props index="03" label="S'y rendre" tone=chalk
184
+ div {
185
+ style {
186
+ display grid
187
+ gridTemplateColumns "repeat(2, minmax(0, 1fr))"
188
+ columnGap "clamp(2rem, 5vw, 4rem)"
189
+ @--md gridTemplateColumns="minmax(0, 1fr)"
190
+ }
191
+ div {
192
+ mu-fact {
193
+ $props {
194
+ term Tramway
195
+ value "Lignes ${state.trams}"
196
+ note "Arrêt Écluses. La halle est le toit de verre à votre gauche en descendant."
197
+ }
198
+ }
199
+ mu-fact {
200
+ $props {
201
+ term "À pied"
202
+ value "Onze minutes de la porte de la vieille ville"
203
+ note "Suivez le quai ; le dernier tronçon est pavé et inégal."
204
+ }
205
+ }
206
+ }
207
+ div {
208
+ mu-fact {
209
+ $props {
210
+ term "À vélo"
211
+ value "Quarante supports sous l'auvent nord"
212
+ note "Couverts, éclairés et à la vue du comptoir d'accueil."
213
+ }
214
+ }
215
+ mu-fact {
216
+ $props {
217
+ term "En auto"
218
+ value "Pas de stationnement au musée"
219
+ note "Stationnement public au Bassin Nord, à six minutes de marche par le pont de l'écluse."
220
+ }
221
+ }
222
+ }
223
+ }
224
+ }
225
+ mu-band {
226
+ $props index="04" label=Accessibilité tone=card
227
+ div {
228
+ style maxWidth="var(--measure)"
229
+ p "Toutes les salles sont accessibles sans marche depuis l'entrée côté quai, y compris la cour et la salle de lecture. Seule exception : le passage de la douane, qui compte quatre marches de pierre sans main courante ; un contournement de plain-pied est indiqué dès l'entrée." {
230
+ style margin="0 0 1.5rem" lineHeight="1.75"
231
+ }
232
+ mu-fact {
233
+ $props {
234
+ term "Sans marche"
235
+ value "Toutes les salles et la salle de lecture"
236
+ note "Deux ascenseurs, tous deux assez grands pour un fauteuil roulant et un accompagnateur."
237
+ }
238
+ }
239
+ mu-fact {
240
+ $props {
241
+ term "Places assises"
242
+ value "Un banc dans chaque salle"
243
+ note "Tabourets pliants au comptoir, prêtés gratuitement, sans dépôt."
244
+ }
245
+ }
246
+ mu-fact {
247
+ $props {
248
+ term "Heure calme"
249
+ value "Le mercredi, de 10 h à 11 h"
250
+ note "Éclairage doux, son coupé, et deux fois moins de monde qu'à l'habitude."
251
+ }
252
+ }
253
+ mu-fact {
254
+ $props {
255
+ term "Chiens d'assistance"
256
+ value "Bienvenus partout"
257
+ note "Bols d'eau aux deux entrées et dans la cour."
258
+ }
259
+ }
260
+ }
261
+ }
262
+ mu-cta {
263
+ $props {
264
+ kicker "Avant de venir"
265
+ heading "Voyez ce qui est accroché cette semaine."
266
+ text "Trois expositions sont ouvertes, et la programmation indique ce qui change ensuite."
267
+ label "À l'affiche"
268
+ href "/fr-ca/expositions/"
269
+ }
270
+ }
271
+ }
@@ -0,0 +1,202 @@
1
+ /- kdl-version 2
2
+
3
+ $element .title="Atrium — City Museum of Art and History" .description="A city museum in a glass hall: four centuries of the harbour, its makers and its maps. Free entry, Tuesday to Sunday, in English, French and Arabic." {
4
+ state {
5
+ objects {
6
+ $expression {
7
+ operator call
8
+ target (ref)"window#/Intl/formatNumber"
9
+ value {
10
+ - 18400
11
+ }
12
+ }
13
+ }
14
+ visitors {
15
+ $expression {
16
+ operator call
17
+ target (ref)"window#/Intl/formatNumber"
18
+ value {
19
+ - 212000
20
+ }
21
+ }
22
+ }
23
+ founded {
24
+ $expression {
25
+ operator call
26
+ target (ref)"window#/Intl/formatDate"
27
+ value {
28
+ - "1897-11-04"
29
+ - #null
30
+ - day=numeric month=long year=numeric
31
+ }
32
+ }
33
+ }
34
+ openDays {
35
+ $expression {
36
+ operator call
37
+ target (ref)"window#/Intl/formatList"
38
+ value {
39
+ - Tuesday Wednesday Thursday Friday Saturday Sunday
40
+ }
41
+ }
42
+ }
43
+ shows {
44
+ $prototype ContentCollection
45
+ $src "@jxsuite/parser/ContentCollection.class.json"
46
+ contentType exhibitions
47
+ filter {
48
+ - field=lang op="==" value=en
49
+ }
50
+ sort {
51
+ - field=order order=asc
52
+ }
53
+ limit 3
54
+ }
55
+ }
56
+ mu-hero {
57
+ $props {
58
+ kicker "City Museum of Art & History"
59
+ title "Four centuries, one glass hall"
60
+ standfirst "Atrium holds what the city made, bought, salvaged and argued over since the first stone quay went in — and shows it free, in three languages, six days a week."
61
+ primaryLabel "Plan your visit"
62
+ primaryHref "/visit/"
63
+ secondaryLabel "What's on"
64
+ secondaryHref "/exhibitions/"
65
+ noteLabel "Free entry"
66
+ note "Tuesday to Sunday, 10:00–18:00"
67
+ }
68
+ }
69
+ mu-band {
70
+ $props index="01" label="Now on view" tone=chalk
71
+ h2 "Three exhibitions, all of them about this place" {
72
+ style {
73
+ margin "0 0 2.25rem"
74
+ fontFamily "var(--font-display)"
75
+ fontSize "clamp(1.7rem, 3.6vw, 2.6rem)"
76
+ fontWeight "500"
77
+ lineHeight "calc(1.08 * var(--leading-scale))"
78
+ letterSpacing "var(--display-tracking)"
79
+ maxWidth "22ch"
80
+ }
81
+ }
82
+ div {
83
+ style {
84
+ display grid
85
+ gridTemplateColumns "repeat(3, minmax(0, 1fr))"
86
+ gap "clamp(1rem, 2.5vw, 1.75rem)"
87
+ @--md gridTemplateColumns="repeat(2, minmax(0, 1fr))"
88
+ @--sm gridTemplateColumns="minmax(0, 1fr)"
89
+ }
90
+ .children {
91
+ $array items=(ref)"#/state/shows" {
92
+ mu-exhibition-card {
93
+ $props {
94
+ title "${item.data.title}"
95
+ description "${item.data.description}"
96
+ gallery "${item.data.gallery}"
97
+ status "Open now"
98
+ href "/exhibitions/${item.id}/"
99
+ hue "${item.data.hue}"
100
+ date "${item.data.date}"
101
+ until "${item.data.until}"
102
+ locale "${$page.locale}"
103
+ }
104
+ }
105
+ }
106
+ }
107
+ }
108
+ mu-more {
109
+ $props label="The whole programme" href="/exhibitions/" space="2rem"
110
+ }
111
+ }
112
+ mu-band {
113
+ $props index="02" label="The museum in numbers" tone=card
114
+ div {
115
+ style {
116
+ display grid
117
+ gridTemplateColumns "repeat(2, minmax(0, 1fr))"
118
+ columnGap "clamp(2rem, 5vw, 4rem)"
119
+ @--md gridTemplateColumns="minmax(0, 1fr)"
120
+ }
121
+ div {
122
+ mu-fact {
123
+ $props {
124
+ term Objects
125
+ value "${state.objects}"
126
+ note "Catalogued, of which about a tenth are on show at any one time."
127
+ }
128
+ }
129
+ mu-fact {
130
+ $props {
131
+ term Visitors
132
+ value "${state.visitors}"
133
+ note "In the last full year, counted at the door."
134
+ }
135
+ }
136
+ }
137
+ div {
138
+ mu-fact {
139
+ $props {
140
+ term Founded
141
+ value "${state.founded}"
142
+ note "By a subscription of 240 households, in a room above the customs house."
143
+ }
144
+ }
145
+ mu-fact {
146
+ $props {
147
+ term Open
148
+ value "${state.openDays}"
149
+ note "Closed Mondays, and on the two days a year the hall is cleaned."
150
+ }
151
+ }
152
+ }
153
+ }
154
+ p "Every figure here is formatted by the page's own language: this document renders 18,400 in English, 18 400 in French and ١٨٬٤٠٠ in Arabic, because the route already said which language it is." {
155
+ style {
156
+ margin "2rem 0 0"
157
+ paddingBlockStart "1.1rem"
158
+ borderBlockStart "1px solid var(--color-hairline)"
159
+ fontSize "0.95rem"
160
+ lineHeight "1.6"
161
+ color "var(--color-muted)"
162
+ maxWidth "var(--measure)"
163
+ }
164
+ }
165
+ }
166
+ mu-band {
167
+ $props index="03" label="From the reading room" tone=chalk
168
+ div {
169
+ style {
170
+ display grid
171
+ gridTemplateColumns "minmax(0, 1.05fr) minmax(0, 1fr)"
172
+ columnGap "clamp(2rem, 5vw, 4rem)"
173
+ alignItems start
174
+ @--md gridTemplateColumns="minmax(0, 1fr)" rowGap="2rem"
175
+ }
176
+ mu-quote {
177
+ $props {
178
+ quote "A museum is a room where a city keeps the things it cannot agree about."
179
+ attribution "Hélène Fournier, first curator, 1897"
180
+ }
181
+ }
182
+ div {
183
+ style maxWidth="var(--measure)"
184
+ p "The reading room on the second floor is open to anyone with a question. Its shelves hold the harbour ledgers, the survey notebooks, four hundred boxes of workshop correspondence, and the museum's own minute books — including the ones recording arguments the trustees would rather have kept quiet." {
185
+ style margin="0" lineHeight="1.75"
186
+ }
187
+ p "No appointment is needed to read; one is needed to handle. Ask at the desk and a member of staff will bring the box up within the hour." {
188
+ style margin="1.1rem 0 0" lineHeight="1.75"
189
+ }
190
+ }
191
+ }
192
+ }
193
+ mu-cta {
194
+ $props {
195
+ kicker "Free entry"
196
+ heading "The hall is open. Come and disagree with us."
197
+ text "Six days a week, ten to six, no ticket and no booking. The courtyard stays open an hour later through the summer."
198
+ label "Plan your visit"
199
+ href "/visit/"
200
+ }
201
+ }
202
+ }