@jxsuite/starters 3.4.0 → 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 (500) 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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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 +1 -1
  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/course/components/co-application.json +0 -225
  288. package/sites/course/components/co-cohort.json +0 -172
  289. package/sites/course/components/co-cta.json +0 -126
  290. package/sites/course/components/co-curriculum-accordion.json +0 -1476
  291. package/sites/course/components/co-faq.json +0 -524
  292. package/sites/course/components/co-footer.json +0 -195
  293. package/sites/course/components/co-hero.json +0 -475
  294. package/sites/course/components/co-instructor-card.json +0 -159
  295. package/sites/course/components/co-mentor.json +0 -65
  296. package/sites/course/components/co-module-card.json +0 -138
  297. package/sites/course/components/co-nav.json +0 -244
  298. package/sites/course/components/co-outcome-card.json +0 -84
  299. package/sites/course/components/co-outcomes.json +0 -248
  300. package/sites/course/components/co-pricing.json +0 -178
  301. package/sites/course/components/co-section-header.json +0 -74
  302. package/sites/course/components/co-testimonial-card.json +0 -109
  303. package/sites/course/layouts/base.json +0 -22
  304. package/sites/event/components/ev-agenda-tabs.json +0 -828
  305. package/sites/event/components/ev-cta.json +0 -126
  306. package/sites/event/components/ev-feature.json +0 -62
  307. package/sites/event/components/ev-footer.json +0 -197
  308. package/sites/event/components/ev-hero.json +0 -431
  309. package/sites/event/components/ev-nav.json +0 -186
  310. package/sites/event/components/ev-reason.json +0 -64
  311. package/sites/event/components/ev-savedate.json +0 -331
  312. package/sites/event/components/ev-section-header.json +0 -70
  313. package/sites/event/components/ev-session-row.json +0 -132
  314. package/sites/event/components/ev-speaker-card.json +0 -130
  315. package/sites/event/components/ev-sponsors.json +0 -131
  316. package/sites/event/components/ev-stat.json +0 -47
  317. package/sites/event/components/ev-ticket-card.json +0 -214
  318. package/sites/event/components/ev-venue.json +0 -86
  319. package/sites/event/layouts/base.json +0 -22
  320. package/sites/fitness-studio/components/fs-band.json +0 -149
  321. package/sites/fitness-studio/components/fs-booking.json +0 -147
  322. package/sites/fitness-studio/components/fs-class-card.json +0 -143
  323. package/sites/fitness-studio/components/fs-class-grid.json +0 -36
  324. package/sites/fitness-studio/components/fs-cta.json +0 -106
  325. package/sites/fitness-studio/components/fs-feature.json +0 -56
  326. package/sites/fitness-studio/components/fs-footer.json +0 -178
  327. package/sites/fitness-studio/components/fs-hero.json +0 -375
  328. package/sites/fitness-studio/components/fs-hours.json +0 -109
  329. package/sites/fitness-studio/components/fs-instructor-card.json +0 -136
  330. package/sites/fitness-studio/components/fs-intro.json +0 -294
  331. package/sites/fitness-studio/components/fs-modality.json +0 -171
  332. package/sites/fitness-studio/components/fs-nav.json +0 -128
  333. package/sites/fitness-studio/components/fs-pricing-card.json +0 -243
  334. package/sites/fitness-studio/components/fs-pricing-table.json +0 -458
  335. package/sites/fitness-studio/components/fs-review.json +0 -88
  336. package/sites/fitness-studio/components/fs-schedule.json +0 -1165
  337. package/sites/fitness-studio/components/fs-section-header.json +0 -77
  338. package/sites/fitness-studio/layouts/base.json +0 -22
  339. package/sites/home-services/components/hs-callbar.json +0 -72
  340. package/sites/home-services/components/hs-cta.json +0 -184
  341. package/sites/home-services/components/hs-feature.json +0 -62
  342. package/sites/home-services/components/hs-footer.json +0 -232
  343. package/sites/home-services/components/hs-gallery.json +0 -104
  344. package/sites/home-services/components/hs-hero.json +0 -446
  345. package/sites/home-services/components/hs-intro.json +0 -122
  346. package/sites/home-services/components/hs-nav.json +0 -278
  347. package/sites/home-services/components/hs-reservation.json +0 -225
  348. package/sites/home-services/components/hs-review.json +0 -114
  349. package/sites/home-services/components/hs-section-header.json +0 -70
  350. package/sites/home-services/components/hs-service-card.json +0 -89
  351. package/sites/home-services/components/hs-stat.json +0 -54
  352. package/sites/home-services/components/hs-step.json +0 -80
  353. package/sites/home-services/components/hs-trust-bar.json +0 -256
  354. package/sites/home-services/layouts/base.json +0 -24
  355. package/sites/museum/components/mu-band.json +0 -92
  356. package/sites/museum/components/mu-cta.json +0 -101
  357. package/sites/museum/components/mu-exhibition-card.json +0 -191
  358. package/sites/museum/components/mu-exhibition-row.json +0 -237
  359. package/sites/museum/components/mu-fact.json +0 -64
  360. package/sites/museum/components/mu-footer.json +0 -256
  361. package/sites/museum/components/mu-hero.json +0 -236
  362. package/sites/museum/components/mu-more.json +0 -63
  363. package/sites/museum/components/mu-oculus.json +0 -44
  364. package/sites/museum/components/mu-pagehead.json +0 -105
  365. package/sites/museum/components/mu-quote.json +0 -49
  366. package/sites/museum/layouts/ar.json +0 -29
  367. package/sites/museum/layouts/base.json +0 -329
  368. package/sites/museum/layouts/fr-ca.json +0 -28
  369. package/sites/museum/pages/about.json +0 -378
  370. package/sites/museum/pages/ar/about.json +0 -314
  371. package/sites/museum/pages/ar/exhibitions/[slug].json +0 -211
  372. package/sites/museum/pages/ar/exhibitions/index.json +0 -103
  373. package/sites/museum/pages/ar/index.json +0 -246
  374. package/sites/museum/pages/ar/visit.json +0 -327
  375. package/sites/museum/pages/exhibitions/[slug].json +0 -200
  376. package/sites/museum/pages/exhibitions/index.json +0 -93
  377. package/sites/museum/pages/fr-ca/a-propos.json +0 -313
  378. package/sites/museum/pages/fr-ca/expositions/[slug].json +0 -215
  379. package/sites/museum/pages/fr-ca/expositions/index.json +0 -104
  380. package/sites/museum/pages/fr-ca/index.json +0 -246
  381. package/sites/museum/pages/fr-ca/visite.json +0 -328
  382. package/sites/museum/pages/index.json +0 -236
  383. package/sites/museum/pages/visit.json +0 -317
  384. package/sites/nonprofit/components/np-contact-form.json +0 -162
  385. package/sites/nonprofit/components/np-contact-info.json +0 -159
  386. package/sites/nonprofit/components/np-cta.json +0 -203
  387. package/sites/nonprofit/components/np-donate-tier.json +0 -116
  388. package/sites/nonprofit/components/np-feature.json +0 -57
  389. package/sites/nonprofit/components/np-footer.json +0 -257
  390. package/sites/nonprofit/components/np-hero.json +0 -360
  391. package/sites/nonprofit/components/np-impact-band.json +0 -108
  392. package/sites/nonprofit/components/np-intro.json +0 -166
  393. package/sites/nonprofit/components/np-nav.json +0 -216
  394. package/sites/nonprofit/components/np-program-card.json +0 -129
  395. package/sites/nonprofit/components/np-section-header.json +0 -79
  396. package/sites/nonprofit/components/np-stat.json +0 -69
  397. package/sites/nonprofit/components/np-step.json +0 -84
  398. package/sites/nonprofit/components/np-team-member.json +0 -74
  399. package/sites/nonprofit/components/np-testimonial.json +0 -169
  400. package/sites/nonprofit/layouts/base.json +0 -22
  401. package/sites/portfolio/components/pv-about-split.json +0 -71
  402. package/sites/portfolio/components/pv-category-pill.json +0 -25
  403. package/sites/portfolio/components/pv-contact-form.json +0 -126
  404. package/sites/portfolio/components/pv-cta.json +0 -80
  405. package/sites/portfolio/components/pv-feature.json +0 -48
  406. package/sites/portfolio/components/pv-footer.json +0 -167
  407. package/sites/portfolio/components/pv-gallery.json +0 -50
  408. package/sites/portfolio/components/pv-hero.json +0 -139
  409. package/sites/portfolio/components/pv-nav.json +0 -100
  410. package/sites/portfolio/components/pv-project-card.json +0 -160
  411. package/sites/portfolio/components/pv-project-grid.json +0 -30
  412. package/sites/portfolio/components/pv-section-header.json +0 -90
  413. package/sites/portfolio/layouts/base.json +0 -22
  414. package/sites/portfolio/pages/[slug].json +0 -260
  415. package/sites/professional-firm/components/pf-article-header.json +0 -93
  416. package/sites/professional-firm/components/pf-contact-form.json +0 -146
  417. package/sites/professional-firm/components/pf-contact-info.json +0 -147
  418. package/sites/professional-firm/components/pf-cta.json +0 -86
  419. package/sites/professional-firm/components/pf-feature.json +0 -52
  420. package/sites/professional-firm/components/pf-footer.json +0 -231
  421. package/sites/professional-firm/components/pf-hero.json +0 -174
  422. package/sites/professional-firm/components/pf-insight-row.json +0 -144
  423. package/sites/professional-firm/components/pf-intro.json +0 -93
  424. package/sites/professional-firm/components/pf-logo-bar.json +0 -113
  425. package/sites/professional-firm/components/pf-nav.json +0 -135
  426. package/sites/professional-firm/components/pf-section-header.json +0 -77
  427. package/sites/professional-firm/components/pf-service-row.json +0 -104
  428. package/sites/professional-firm/components/pf-statband.json +0 -183
  429. package/sites/professional-firm/components/pf-team-member.json +0 -75
  430. package/sites/professional-firm/layouts/article.json +0 -130
  431. package/sites/professional-firm/layouts/base.json +0 -22
  432. package/sites/professional-firm/pages/insights/[slug].json +0 -129
  433. package/sites/real-estate/components/re-agent-band.json +0 -240
  434. package/sites/real-estate/components/re-agent-card.json +0 -93
  435. package/sites/real-estate/components/re-contact-form.json +0 -181
  436. package/sites/real-estate/components/re-cta.json +0 -128
  437. package/sites/real-estate/components/re-detail-row.json +0 -26
  438. package/sites/real-estate/components/re-feature.json +0 -57
  439. package/sites/real-estate/components/re-footer.json +0 -291
  440. package/sites/real-estate/components/re-hero.json +0 -536
  441. package/sites/real-estate/components/re-intro.json +0 -60
  442. package/sites/real-estate/components/re-listing-card.json +0 -286
  443. package/sites/real-estate/components/re-listings-filter.json +0 -454
  444. package/sites/real-estate/components/re-nav.json +0 -216
  445. package/sites/real-estate/components/re-neighborhood.json +0 -135
  446. package/sites/real-estate/components/re-section-header.json +0 -69
  447. package/sites/real-estate/components/re-stat.json +0 -37
  448. package/sites/real-estate/components/re-step.json +0 -58
  449. package/sites/real-estate/components/re-testimonial.json +0 -91
  450. package/sites/real-estate/layouts/base.json +0 -22
  451. package/sites/real-estate/pages/[slug].json +0 -629
  452. package/sites/restaurant/components/bit-cta.json +0 -140
  453. package/sites/restaurant/components/bit-feature.json +0 -61
  454. package/sites/restaurant/components/bit-footer.json +0 -191
  455. package/sites/restaurant/components/bit-gallery.json +0 -74
  456. package/sites/restaurant/components/bit-hero.json +0 -253
  457. package/sites/restaurant/components/bit-hours.json +0 -183
  458. package/sites/restaurant/components/bit-intro.json +0 -96
  459. package/sites/restaurant/components/bit-menu-group.json +0 -74
  460. package/sites/restaurant/components/bit-menu-item.json +0 -72
  461. package/sites/restaurant/components/bit-nav.json +0 -214
  462. package/sites/restaurant/components/bit-reservation.json +0 -155
  463. package/sites/restaurant/components/bit-review.json +0 -84
  464. package/sites/restaurant/components/bit-section-header.json +0 -98
  465. package/sites/restaurant/layouts/base.json +0 -22
  466. package/sites/saas/components/sa-check-item.json +0 -40
  467. package/sites/saas/components/sa-contact-form.json +0 -153
  468. package/sites/saas/components/sa-cta.json +0 -102
  469. package/sites/saas/components/sa-faq.json +0 -413
  470. package/sites/saas/components/sa-feature-card.json +0 -69
  471. package/sites/saas/components/sa-feature-split.json +0 -60
  472. package/sites/saas/components/sa-footer.json +0 -145
  473. package/sites/saas/components/sa-hero.json +0 -277
  474. package/sites/saas/components/sa-logo-cloud.json +0 -119
  475. package/sites/saas/components/sa-nav.json +0 -138
  476. package/sites/saas/components/sa-pricing.json +0 -428
  477. package/sites/saas/components/sa-section-header.json +0 -55
  478. package/sites/saas/components/sa-stat.json +0 -44
  479. package/sites/saas/components/sa-testimonial-card.json +0 -57
  480. package/sites/saas/layouts/base.json +0 -22
  481. package/sites/shop/components/shp-badge.json +0 -18
  482. package/sites/shop/components/shp-category-tile.json +0 -104
  483. package/sites/shop/components/shp-contact-form.json +0 -156
  484. package/sites/shop/components/shp-cta.json +0 -121
  485. package/sites/shop/components/shp-feature.json +0 -60
  486. package/sites/shop/components/shp-footer.json +0 -411
  487. package/sites/shop/components/shp-hero.json +0 -395
  488. package/sites/shop/components/shp-intro.json +0 -59
  489. package/sites/shop/components/shp-nav.json +0 -358
  490. package/sites/shop/components/shp-newsletter.json +0 -166
  491. package/sites/shop/components/shp-product-card.json +0 -238
  492. package/sites/shop/components/shp-product-filter.json +0 -366
  493. package/sites/shop/components/shp-review.json +0 -54
  494. package/sites/shop/components/shp-section-header.json +0 -75
  495. package/sites/shop/components/shp-service.json +0 -83
  496. package/sites/shop/components/shp-stat.json +0 -37
  497. package/sites/shop/components/shp-trust.json +0 -58
  498. package/sites/shop/components/shp-visit-info.json +0 -132
  499. package/sites/shop/layouts/base.json +0 -22
  500. package/sites/shop/pages/products/[sku].json +0 -482
@@ -0,0 +1,354 @@
1
+ /- kdl-version 2
2
+
3
+ co-hero {
4
+ state {
5
+ eyebrow ""
6
+ heading ""
7
+ headingAccent ""
8
+ subheading ""
9
+ cta "Enroll Now"
10
+ ctaHref "/enroll/"
11
+ cta2 ""
12
+ cta2Href "/curriculum/"
13
+ note ""
14
+ o1 ""
15
+ o2 ""
16
+ o3 ""
17
+ }
18
+ style {
19
+ display block
20
+ position relative
21
+ overflow hidden
22
+ backgroundColor "var(--color-bg-white)"
23
+ backgroundImage "radial-gradient(ellipse 45% 50% at 88% 0%, rgba(79,70,229,0.12), transparent 60%), radial-gradient(ellipse 40% 45% at 5% 95%, rgba(34,211,238,0.08), transparent 60%)"
24
+ }
25
+ div {
26
+ style {
27
+ position absolute
28
+ inset "0"
29
+ backgroundImage "radial-gradient(circle, rgba(15,20,36,0.05) 1px, transparent 1px)"
30
+ backgroundSize "30px 30px"
31
+ opacity "0.6"
32
+ pointerEvents none
33
+ }
34
+ }
35
+ div {
36
+ style {
37
+ position relative
38
+ zIndex "2"
39
+ maxWidth "var(--max-width)"
40
+ margin "0 auto"
41
+ padding "clamp(3rem, 7vw, 5.5rem) 1.5rem clamp(3.5rem, 7vw, 6rem)"
42
+ display grid
43
+ gridTemplateColumns "1.02fr 0.98fr"
44
+ gap "clamp(2.5rem, 5vw, 4.5rem)"
45
+ alignItems center
46
+ @--lg gridTemplateColumns="1fr" gap="3rem"
47
+ }
48
+ div {
49
+ p {
50
+ style {
51
+ display "${state.eyebrow ? 'inline-flex' : 'none'}"
52
+ alignItems center
53
+ gap "0.55rem"
54
+ fontFamily "var(--font-mono)"
55
+ fontSize "0.8rem"
56
+ fontWeight "600"
57
+ color "var(--color-primary)"
58
+ backgroundColor "var(--color-indigo-050)"
59
+ border "1px solid var(--color-indigo-line)"
60
+ padding "0.4rem 0.85rem"
61
+ borderRadius "999px"
62
+ margin "0 0 1.5rem"
63
+ }
64
+ span {
65
+ style {
66
+ width "0.45rem"
67
+ height "0.45rem"
68
+ borderRadius "999px"
69
+ backgroundColor "var(--color-accent)"
70
+ boxShadow "0 0 0 3px rgba(163,230,53,0.25)"
71
+ }
72
+ }
73
+ span "${state.eyebrow}"
74
+ }
75
+ h1 {
76
+ style {
77
+ fontFamily "var(--font-heading)"
78
+ fontSize "clamp(2.4rem, 5.4vw, 4rem)"
79
+ fontWeight "800"
80
+ lineHeight "1.04"
81
+ letterSpacing "-0.035em"
82
+ margin "0 0 1.35rem"
83
+ color "var(--color-text-primary)"
84
+ }
85
+ span "${state.heading} "
86
+ span {
87
+ style position=relative color="var(--color-primary)" whiteSpace=nowrap
88
+ span "${state.headingAccent}"
89
+ }
90
+ }
91
+ p "${state.subheading}" {
92
+ style {
93
+ fontSize "clamp(1.05rem, 1.6vw, 1.22rem)"
94
+ lineHeight "1.6"
95
+ color "var(--color-text-muted)"
96
+ margin "0 0 1.85rem"
97
+ maxWidth "50ch"
98
+ }
99
+ }
100
+ div {
101
+ style display=flex gap="0.75rem" flexWrap=wrap marginBottom="1.65rem"
102
+ a href="${state.ctaHref}" "${state.cta}" {
103
+ style {
104
+ display inline-flex
105
+ alignItems center
106
+ gap "0.5rem"
107
+ backgroundColor "var(--color-primary)"
108
+ color "var(--color-text-white)"
109
+ padding "0.9rem 1.9rem"
110
+ borderRadius "999px"
111
+ fontSize "1.02rem"
112
+ fontWeight "600"
113
+ textDecoration none
114
+ boxShadow "0 14px 30px -12px rgba(79,70,229,0.9)"
115
+ transition "transform 0.15s, background-color 0.15s"
116
+ :hover {
117
+ backgroundColor "var(--color-primary-hover)"
118
+ transform "translateY(-2px)"
119
+ }
120
+ }
121
+ }
122
+ a href="${state.cta2Href}" "${state.cta2}" {
123
+ style {
124
+ display "${state.cta2 ? 'inline-flex' : 'none'}"
125
+ alignItems center
126
+ gap "0.5rem"
127
+ border "1px solid var(--color-border-strong)"
128
+ backgroundColor "var(--color-bg-white)"
129
+ color "var(--color-text-primary)"
130
+ padding "0.9rem 1.7rem"
131
+ borderRadius "999px"
132
+ fontSize "1.02rem"
133
+ fontWeight "600"
134
+ textDecoration none
135
+ transition "border-color 0.15s, color 0.15s"
136
+ :hover borderColor="var(--color-primary)" color="var(--color-primary)"
137
+ }
138
+ }
139
+ }
140
+ div {
141
+ style {
142
+ display "${state.o1 ? 'flex' : 'none'}"
143
+ flexWrap wrap
144
+ gap "0.55rem"
145
+ marginBottom "1.35rem"
146
+ }
147
+ span {
148
+ style {
149
+ display inline-flex
150
+ alignItems center
151
+ gap "0.45rem"
152
+ fontFamily "var(--font-mono)"
153
+ fontSize "0.8rem"
154
+ fontWeight "500"
155
+ color "var(--color-text-primary)"
156
+ backgroundColor "var(--color-bg-cream)"
157
+ border "1px solid var(--color-border)"
158
+ padding "0.4rem 0.8rem"
159
+ borderRadius "0.5rem"
160
+ }
161
+ span ✔ {
162
+ style color="#65a30d" fontWeight="700"
163
+ }
164
+ span "${state.o1}"
165
+ }
166
+ span {
167
+ style {
168
+ display inline-flex
169
+ alignItems center
170
+ gap "0.45rem"
171
+ fontFamily "var(--font-mono)"
172
+ fontSize "0.8rem"
173
+ fontWeight "500"
174
+ color "var(--color-text-primary)"
175
+ backgroundColor "var(--color-bg-cream)"
176
+ border "1px solid var(--color-border)"
177
+ padding "0.4rem 0.8rem"
178
+ borderRadius "0.5rem"
179
+ }
180
+ span ✔ {
181
+ style color="#65a30d" fontWeight="700"
182
+ }
183
+ span "${state.o2}"
184
+ }
185
+ span {
186
+ style {
187
+ display inline-flex
188
+ alignItems center
189
+ gap "0.45rem"
190
+ fontFamily "var(--font-mono)"
191
+ fontSize "0.8rem"
192
+ fontWeight "500"
193
+ color "var(--color-text-primary)"
194
+ backgroundColor "var(--color-bg-cream)"
195
+ border "1px solid var(--color-border)"
196
+ padding "0.4rem 0.8rem"
197
+ borderRadius "0.5rem"
198
+ }
199
+ span ✔ {
200
+ style color="#65a30d" fontWeight="700"
201
+ }
202
+ span "${state.o3}"
203
+ }
204
+ }
205
+ p {
206
+ style {
207
+ display "${state.note ? 'flex' : 'none'}"
208
+ alignItems center
209
+ gap "0.5rem"
210
+ margin "0"
211
+ fontFamily "var(--font-mono)"
212
+ fontSize "0.82rem"
213
+ color "var(--color-text-muted)"
214
+ }
215
+ span ▸ {
216
+ style color="var(--color-primary)"
217
+ }
218
+ span "${state.note}"
219
+ }
220
+ }
221
+ div {
222
+ style position=relative
223
+ div {
224
+ style {
225
+ position absolute
226
+ inset "-12% -8% -14% -8%"
227
+ background "radial-gradient(circle at 60% 40%, rgba(79,70,229,0.28), transparent 65%)"
228
+ filter "blur(12px)"
229
+ pointerEvents none
230
+ }
231
+ }
232
+ div {
233
+ style {
234
+ position relative
235
+ borderRadius "0.9rem"
236
+ overflow hidden
237
+ backgroundColor "var(--color-terminal)"
238
+ border "1px solid var(--color-terminal-line)"
239
+ boxShadow "0 40px 80px -32px rgba(11,16,32,0.75)"
240
+ }
241
+ div {
242
+ style {
243
+ display flex
244
+ alignItems center
245
+ gap "0.5rem"
246
+ padding "0.75rem 1rem"
247
+ borderBottom "1px solid var(--color-terminal-line)"
248
+ backgroundColor "var(--color-terminal-2)"
249
+ }
250
+ span {
251
+ style {
252
+ width "0.72rem"
253
+ height "0.72rem"
254
+ borderRadius "999px"
255
+ backgroundColor "#ff5f57"
256
+ }
257
+ }
258
+ span {
259
+ style {
260
+ width "0.72rem"
261
+ height "0.72rem"
262
+ borderRadius "999px"
263
+ backgroundColor "#febc2e"
264
+ }
265
+ }
266
+ span {
267
+ style {
268
+ width "0.72rem"
269
+ height "0.72rem"
270
+ borderRadius "999px"
271
+ backgroundColor "#28c840"
272
+ }
273
+ }
274
+ span "~/craft-code — start-here.sh" {
275
+ style {
276
+ marginLeft "0.75rem"
277
+ fontFamily "var(--font-mono)"
278
+ fontSize "0.75rem"
279
+ color "var(--color-text-faint)"
280
+ }
281
+ }
282
+ }
283
+ div {
284
+ style {
285
+ padding "1.35rem 1.5rem 1.6rem"
286
+ fontFamily "var(--font-mono)"
287
+ fontSize "0.9rem"
288
+ lineHeight "2"
289
+ color "rgba(255,255,255,0.92)"
290
+ }
291
+ div {
292
+ span "$ " {
293
+ style color="var(--color-accent)"
294
+ }
295
+ span "enroll "
296
+ span "--track " {
297
+ style color="var(--color-accent-cyan)"
298
+ }
299
+ span web-dev {
300
+ style color="#fcd34d"
301
+ }
302
+ }
303
+ div "# 14 weeks · 6 guided modules · live cohort" {
304
+ style color="var(--color-text-faint)"
305
+ }
306
+ div {
307
+ span "✔ " {
308
+ style color="var(--color-accent)" fontWeight="700"
309
+ }
310
+ span "mentorship + small-group code review"
311
+ }
312
+ div {
313
+ span "✔ " {
314
+ style color="var(--color-accent)" fontWeight="700"
315
+ }
316
+ span "build real, portfolio-ready projects"
317
+ }
318
+ div {
319
+ span "✔ " {
320
+ style color="var(--color-accent)" fontWeight="700"
321
+ }
322
+ span "deploy a full-stack capstone"
323
+ }
324
+ div {
325
+ style marginTop="0.35rem"
326
+ span "$ " {
327
+ style color="var(--color-accent)"
328
+ }
329
+ span "./ship-your-career.sh"
330
+ }
331
+ div {
332
+ style display=flex alignItems=center gap="0.4rem"
333
+ span → {
334
+ style color="var(--color-primary-light)"
335
+ }
336
+ span "92% hired within 6 months" {
337
+ style color="#ffffff" fontWeight="600"
338
+ }
339
+ span {
340
+ style {
341
+ display inline-block
342
+ width "0.62rem"
343
+ height "1.15rem"
344
+ backgroundColor "var(--color-accent)"
345
+ marginLeft "0.15rem"
346
+ borderRadius "1px"
347
+ }
348
+ }
349
+ }
350
+ }
351
+ }
352
+ }
353
+ }
354
+ }
@@ -0,0 +1,128 @@
1
+ /- kdl-version 2
2
+
3
+ co-instructor-card {
4
+ state {
5
+ name ""
6
+ role ""
7
+ bio ""
8
+ image type=string format=image default=""
9
+ }
10
+ style {
11
+ display grid
12
+ gridTemplateColumns "auto 1fr"
13
+ gap "clamp(1.75rem, 4vw, 2.75rem)"
14
+ alignItems center
15
+ maxWidth "var(--max-width-narrow)"
16
+ margin "0 auto"
17
+ padding "clamp(1.75rem, 4vw, 2.5rem)"
18
+ backgroundColor "var(--color-bg-white)"
19
+ border "1px solid var(--color-border)"
20
+ borderRadius "var(--radius)"
21
+ boxShadow "0 24px 60px -32px rgba(15,20,36,0.35)"
22
+ @--sm gridTemplateColumns="1fr" textAlign=center justifyItems=center
23
+ }
24
+ div {
25
+ style position=relative flex=none
26
+ div {
27
+ style {
28
+ position absolute
29
+ inset "-0.6rem -0.6rem 0.4rem 0.4rem"
30
+ borderRadius "0.9rem"
31
+ backgroundColor "var(--color-indigo-050)"
32
+ border "1px solid var(--color-indigo-line)"
33
+ }
34
+ }
35
+ img src="${state.image}" alt="${state.name}" loading=lazy {
36
+ style {
37
+ position relative
38
+ width "155px"
39
+ height "185px"
40
+ objectFit cover
41
+ borderRadius "0.7rem"
42
+ display block
43
+ border "1px solid var(--color-border)"
44
+ }
45
+ }
46
+ div "// lead instructor" {
47
+ style {
48
+ position relative
49
+ marginTop "0.65rem"
50
+ textAlign center
51
+ fontFamily "var(--font-mono)"
52
+ fontSize "0.72rem"
53
+ color "var(--color-text-faint)"
54
+ }
55
+ }
56
+ }
57
+ div {
58
+ h3 "${state.name}" {
59
+ style {
60
+ fontFamily "var(--font-heading)"
61
+ fontSize "1.55rem"
62
+ fontWeight "800"
63
+ letterSpacing "-0.02em"
64
+ margin "0 0 0.3rem"
65
+ color "var(--color-text-primary)"
66
+ }
67
+ }
68
+ div "${state.role}" {
69
+ style {
70
+ fontFamily "var(--font-mono)"
71
+ color "var(--color-primary)"
72
+ fontWeight "500"
73
+ fontSize "0.85rem"
74
+ marginBottom "0.95rem"
75
+ }
76
+ }
77
+ p "${state.bio}" {
78
+ style {
79
+ margin "0 0 1.25rem"
80
+ color "var(--color-text-muted)"
81
+ fontSize "1rem"
82
+ lineHeight "1.7"
83
+ }
84
+ }
85
+ div {
86
+ style {
87
+ display flex
88
+ flexWrap wrap
89
+ gap "0.5rem"
90
+ justifyContent "${state.name ? 'flex-start' : 'flex-start'}"
91
+ @--sm justifyContent=center
92
+ }
93
+ span "10+ yrs shipping" {
94
+ style {
95
+ fontFamily "var(--font-mono)"
96
+ fontSize "0.75rem"
97
+ color "var(--color-text-primary)"
98
+ backgroundColor "var(--color-bg-cream)"
99
+ border "1px solid var(--color-border)"
100
+ padding "0.3rem 0.7rem"
101
+ borderRadius "0.5rem"
102
+ }
103
+ }
104
+ span "mentored 500+ devs" {
105
+ style {
106
+ fontFamily "var(--font-mono)"
107
+ fontSize "0.75rem"
108
+ color "var(--color-text-primary)"
109
+ backgroundColor "var(--color-bg-cream)"
110
+ border "1px solid var(--color-border)"
111
+ padding "0.3rem 0.7rem"
112
+ borderRadius "0.5rem"
113
+ }
114
+ }
115
+ span "ex-Staff Engineer" {
116
+ style {
117
+ fontFamily "var(--font-mono)"
118
+ fontSize "0.75rem"
119
+ color "var(--color-text-primary)"
120
+ backgroundColor "var(--color-bg-cream)"
121
+ border "1px solid var(--color-border)"
122
+ padding "0.3rem 0.7rem"
123
+ borderRadius "0.5rem"
124
+ }
125
+ }
126
+ }
127
+ }
128
+ }
@@ -0,0 +1,51 @@
1
+ /- kdl-version 2
2
+
3
+ co-mentor {
4
+ state name="" role="" initials=""
5
+ style {
6
+ display flex
7
+ alignItems center
8
+ gap "0.95rem"
9
+ padding "1.1rem 1.25rem"
10
+ backgroundColor "var(--color-bg-white)"
11
+ border "1px solid var(--color-border)"
12
+ borderRadius "var(--radius)"
13
+ transition "border-color 0.15s"
14
+ :hover borderColor="var(--color-primary-light)"
15
+ }
16
+ div "${state.initials}" {
17
+ style {
18
+ flex none
19
+ display flex
20
+ alignItems center
21
+ justifyContent center
22
+ width "3rem"
23
+ height "3rem"
24
+ borderRadius "0.7rem"
25
+ backgroundColor "var(--color-indigo-050)"
26
+ border "1px solid var(--color-indigo-line)"
27
+ color "var(--color-primary)"
28
+ fontFamily "var(--font-mono)"
29
+ fontWeight "700"
30
+ fontSize "1rem"
31
+ }
32
+ }
33
+ div {
34
+ div "${state.name}" {
35
+ style {
36
+ fontFamily "var(--font-heading)"
37
+ fontSize "1.02rem"
38
+ fontWeight "700"
39
+ color "var(--color-text-primary)"
40
+ }
41
+ }
42
+ div "${state.role}" {
43
+ style {
44
+ fontFamily "var(--font-mono)"
45
+ fontSize "0.78rem"
46
+ color "var(--color-text-muted)"
47
+ marginTop "0.15rem"
48
+ }
49
+ }
50
+ }
51
+ }
@@ -0,0 +1,101 @@
1
+ /- kdl-version 2
2
+
3
+ co-module-card {
4
+ state order="" title="" summary="" duration=""
5
+ style display=grid gridTemplateColumns="3rem 1fr" gap="1.25rem" {
6
+ @--sm gridTemplateColumns="2.5rem 1fr" gap="0.9rem"
7
+ }
8
+ div {
9
+ style display=flex flexDirection=column alignItems=center
10
+ div {
11
+ style {
12
+ position relative
13
+ zIndex "2"
14
+ flex none
15
+ display flex
16
+ alignItems center
17
+ justifyContent center
18
+ width "3rem"
19
+ height "3rem"
20
+ borderRadius "0.7rem"
21
+ backgroundColor "var(--color-primary)"
22
+ color "var(--color-text-white)"
23
+ fontFamily "var(--font-mono)"
24
+ fontWeight "700"
25
+ fontSize "1.05rem"
26
+ boxShadow "0 8px 18px -8px rgba(79,70,229,0.8)"
27
+ @--sm width="2.5rem" height="2.5rem" fontSize="0.95rem"
28
+ }
29
+ span "0" {
30
+ style opacity="0.55" fontSize="0.7em"
31
+ }
32
+ span "${state.order}"
33
+ }
34
+ div {
35
+ style {
36
+ width "2px"
37
+ flex "1"
38
+ marginTop "0.35rem"
39
+ backgroundColor "var(--color-indigo-line)"
40
+ }
41
+ }
42
+ }
43
+ div {
44
+ style paddingBottom="1.5rem"
45
+ div {
46
+ style {
47
+ padding "1.35rem 1.5rem"
48
+ backgroundColor "var(--color-bg-white)"
49
+ border "1px solid var(--color-border)"
50
+ borderRadius "var(--radius)"
51
+ transition "border-color 0.15s, box-shadow 0.15s"
52
+ :hover {
53
+ borderColor "var(--color-primary-light)"
54
+ boxShadow "0 14px 34px -18px rgba(79,70,229,0.35)"
55
+ }
56
+ }
57
+ div {
58
+ style {
59
+ display flex
60
+ justifyContent space-between
61
+ alignItems baseline
62
+ gap "1rem"
63
+ flexWrap wrap
64
+ }
65
+ h3 "${state.title}" {
66
+ style {
67
+ fontFamily "var(--font-heading)"
68
+ fontSize "1.22rem"
69
+ fontWeight "700"
70
+ letterSpacing "-0.01em"
71
+ margin "0"
72
+ color "var(--color-text-primary)"
73
+ }
74
+ }
75
+ span "${state.duration}" {
76
+ style {
77
+ display "${state.duration ? 'inline-block' : 'none'}"
78
+ flex none
79
+ fontFamily "var(--font-mono)"
80
+ fontSize "0.74rem"
81
+ fontWeight "600"
82
+ color "var(--color-primary)"
83
+ backgroundColor "var(--color-indigo-050)"
84
+ border "1px solid var(--color-indigo-line)"
85
+ padding "0.25rem 0.65rem"
86
+ borderRadius "999px"
87
+ }
88
+ }
89
+ }
90
+ p "${state.summary}" {
91
+ style {
92
+ display "${state.summary ? 'block' : 'none'}"
93
+ margin "0.55rem 0 0"
94
+ color "var(--color-text-muted)"
95
+ fontSize "0.98rem"
96
+ lineHeight "1.65"
97
+ }
98
+ }
99
+ }
100
+ }
101
+ }