@amulet-laboratories/hex 0.3.0 → 0.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 (189) hide show
  1. package/dist/beacon.css +1 -0
  2. package/dist/brass.css +5 -0
  3. package/dist/cardinal.css +5 -0
  4. package/dist/citron.css +5 -0
  5. package/dist/clover.css +5 -0
  6. package/dist/cobalt.css +5 -0
  7. package/dist/copper.css +5 -0
  8. package/dist/cypress.css +5 -0
  9. package/dist/damson.css +5 -0
  10. package/dist/fern.css +5 -0
  11. package/dist/forge.css +2 -2
  12. package/dist/garden.css +2 -2
  13. package/dist/greyline.css +2 -2
  14. package/dist/harbor.css +5 -0
  15. package/dist/hearth.css +5 -0
  16. package/dist/hex.css +2 -2
  17. package/dist/iris.css +5 -0
  18. package/dist/juniper.css +5 -0
  19. package/dist/lagoon.css +5 -0
  20. package/dist/ochre.css +5 -0
  21. package/dist/orchid.css +5 -0
  22. package/dist/quartz.css +5 -0
  23. package/dist/roast.css +5 -0
  24. package/dist/sienna.css +5 -0
  25. package/dist/slate.css +5 -0
  26. package/dist/spacewizard.css +2 -2
  27. package/dist/vesper.css +5 -0
  28. package/dist/voltaic.css +1 -0
  29. package/package.json +73 -53
  30. package/src/index.css +3 -3
  31. package/src/scoped/index.css +13 -13
  32. package/src/scoped/themes/{kbcv.css → cardinal.css} +17 -1
  33. package/src/scoped/themes/citron.css +105 -0
  34. package/src/scoped/themes/{compass.css → clover.css} +26 -13
  35. package/src/scoped/themes/{vscode.css → cobalt.css} +10 -5
  36. package/src/scoped/themes/{undertow.css → copper.css} +16 -1
  37. package/src/scoped/themes/{tidemark.css → cypress.css} +24 -11
  38. package/src/scoped/themes/{aldricpace.css → harbor.css} +15 -3
  39. package/src/scoped/themes/hearth.css +134 -0
  40. package/src/scoped/themes/{briarcove.css → iris.css} +13 -2
  41. package/src/scoped/themes/juniper.css +121 -0
  42. package/src/scoped/themes/{duskline.css → lagoon.css} +25 -9
  43. package/src/scoped/themes/{saltsignal.css → ochre.css} +23 -10
  44. package/src/scoped/themes/{marenlys.css → orchid.css} +26 -9
  45. package/src/scoped/themes/{briarcovelib.css → sienna.css} +20 -7
  46. package/src/scoped/themes/{lanternhouse.css → vesper.css} +27 -6
  47. package/src/scoped/tokens.css +2 -0
  48. package/src/shared/components/content.css +772 -0
  49. package/src/shared/components/core.css +88 -720
  50. package/src/shared/components/data.css +24 -126
  51. package/src/shared/components/editor.css +33 -164
  52. package/src/shared/components/extras.css +30 -346
  53. package/src/shared/components/layout.css +21 -369
  54. package/src/shared/components/lists.css +11 -114
  55. package/src/shared/components/menus.css +10 -146
  56. package/src/shared/components/nav.css +112 -501
  57. package/src/shared/components/prose.css +12 -180
  58. package/src/shared/components/shell.css +22 -259
  59. package/src/shared/components/spatial.css +15 -47
  60. package/src/shared/components/temporal.css +28 -68
  61. package/src/shared/components/web.css +42 -1037
  62. package/src/shared/tokens.css +37 -0
  63. package/src/shared/utilities.css +52 -3
  64. package/src/themes/beacon/base.css +59 -0
  65. package/src/themes/beacon/index.css +11 -0
  66. package/src/themes/beacon/tokens.css +219 -0
  67. package/src/themes/brass/base.css +179 -0
  68. package/src/themes/brass/components.css +23 -0
  69. package/src/themes/brass/domains.css +731 -0
  70. package/src/themes/brass/tokens.css +208 -0
  71. package/src/themes/{kbcv → cardinal}/tokens.css +5 -0
  72. package/src/themes/citron/base.css +232 -0
  73. package/src/themes/citron/tokens.css +136 -0
  74. package/src/themes/{vscode → cobalt}/tokens.css +5 -5
  75. package/src/themes/damson/base.css +179 -0
  76. package/src/themes/damson/components.css +23 -0
  77. package/src/themes/damson/domains.css +731 -0
  78. package/src/themes/damson/tokens.css +208 -0
  79. package/src/themes/{quizbit → fern}/base.css +21 -27
  80. package/src/themes/fern/components.css +23 -0
  81. package/src/themes/fern/domains.css +731 -0
  82. package/src/themes/fern/tokens.css +208 -0
  83. package/src/themes/{aldricpace → harbor}/tokens.css +5 -0
  84. package/src/themes/hearth/base.css +111 -0
  85. package/src/themes/hearth/components.css +22 -0
  86. package/src/themes/hearth/domains.css +19 -0
  87. package/src/themes/hearth/tokens.css +179 -0
  88. package/src/themes/juniper/base.css +111 -0
  89. package/src/themes/juniper/components.css +22 -0
  90. package/src/themes/juniper/domains.css +19 -0
  91. package/src/themes/juniper/tokens.css +171 -0
  92. package/src/themes/lagoon/index.css +6 -0
  93. package/src/themes/{duskline → lagoon}/tokens.css +5 -0
  94. package/src/themes/ochre/index.css +6 -0
  95. package/src/themes/{saltsignal → ochre}/tokens.css +8 -8
  96. package/src/themes/orchid/index.css +6 -0
  97. package/src/themes/{marenlys → orchid}/tokens.css +8 -3
  98. package/src/themes/quartz/base.css +114 -0
  99. package/src/themes/quartz/components.css +23 -0
  100. package/src/themes/quartz/domains.css +731 -0
  101. package/src/themes/quartz/index.css +6 -0
  102. package/src/themes/quartz/tokens.css +208 -0
  103. package/src/themes/roast/base.css +114 -0
  104. package/src/themes/roast/components.css +23 -0
  105. package/src/themes/roast/domains.css +731 -0
  106. package/src/themes/roast/index.css +6 -0
  107. package/src/themes/roast/tokens.css +208 -0
  108. package/src/themes/sienna/index.css +6 -0
  109. package/src/themes/slate/base.css +207 -0
  110. package/src/themes/slate/components.css +23 -0
  111. package/src/themes/slate/domains.css +731 -0
  112. package/src/themes/slate/index.css +6 -0
  113. package/src/themes/slate/tokens.css +208 -0
  114. package/src/themes/vesper/index.css +6 -0
  115. package/src/themes/{lanternhouse → vesper}/tokens.css +5 -0
  116. package/dist/aldricpace.css +0 -5
  117. package/dist/briarcove.css +0 -5
  118. package/dist/briarcovelib.css +0 -5
  119. package/dist/compass.css +0 -5
  120. package/dist/duskline.css +0 -5
  121. package/dist/kbcv.css +0 -5
  122. package/dist/lanternhouse.css +0 -5
  123. package/dist/marenlys.css +0 -5
  124. package/dist/quizbit.css +0 -5
  125. package/dist/saltsignal.css +0 -5
  126. package/dist/tidemark.css +0 -5
  127. package/dist/undertow.css +0 -5
  128. package/dist/vscode.css +0 -5
  129. package/src/scoped/themes/quizbit.css +0 -101
  130. package/src/themes/quizbit/tokens.css +0 -132
  131. /package/src/themes/{aldricpace → brass}/index.css +0 -0
  132. /package/src/themes/{kbcv → cardinal}/base.css +0 -0
  133. /package/src/themes/{kbcv → cardinal}/components.css +0 -0
  134. /package/src/themes/{kbcv → cardinal}/domains.css +0 -0
  135. /package/src/themes/{briarcove → cardinal}/index.css +0 -0
  136. /package/src/themes/{quizbit → citron}/components.css +0 -0
  137. /package/src/themes/{quizbit → citron}/domains.css +0 -0
  138. /package/src/themes/{briarcovelib → citron}/index.css +0 -0
  139. /package/src/themes/{compass → clover}/base.css +0 -0
  140. /package/src/themes/{compass → clover}/components.css +0 -0
  141. /package/src/themes/{compass → clover}/domains.css +0 -0
  142. /package/src/themes/{compass → clover}/index.css +0 -0
  143. /package/src/themes/{compass → clover}/tokens.css +0 -0
  144. /package/src/themes/{vscode → cobalt}/base.css +0 -0
  145. /package/src/themes/{vscode → cobalt}/components.css +0 -0
  146. /package/src/themes/{vscode → cobalt}/domains.css +0 -0
  147. /package/src/themes/{vscode → cobalt}/index.css +0 -0
  148. /package/src/themes/{undertow → copper}/base.css +0 -0
  149. /package/src/themes/{undertow → copper}/components.css +0 -0
  150. /package/src/themes/{undertow → copper}/domains.css +0 -0
  151. /package/src/themes/{duskline → copper}/index.css +0 -0
  152. /package/src/themes/{undertow → copper}/tokens.css +0 -0
  153. /package/src/themes/{tidemark → cypress}/base.css +0 -0
  154. /package/src/themes/{tidemark → cypress}/components.css +0 -0
  155. /package/src/themes/{tidemark → cypress}/domains.css +0 -0
  156. /package/src/themes/{kbcv → cypress}/index.css +0 -0
  157. /package/src/themes/{tidemark → cypress}/tokens.css +0 -0
  158. /package/src/themes/{lanternhouse → damson}/index.css +0 -0
  159. /package/src/themes/{marenlys → fern}/index.css +0 -0
  160. /package/src/themes/{aldricpace → harbor}/base.css +0 -0
  161. /package/src/themes/{aldricpace → harbor}/components.css +0 -0
  162. /package/src/themes/{aldricpace → harbor}/domains.css +0 -0
  163. /package/src/themes/{quizbit → harbor}/index.css +0 -0
  164. /package/src/themes/{saltsignal → hearth}/index.css +0 -0
  165. /package/src/themes/{briarcove → iris}/base.css +0 -0
  166. /package/src/themes/{briarcove → iris}/components.css +0 -0
  167. /package/src/themes/{briarcove → iris}/domains.css +0 -0
  168. /package/src/themes/{tidemark → iris}/index.css +0 -0
  169. /package/src/themes/{briarcove → iris}/tokens.css +0 -0
  170. /package/src/themes/{undertow → juniper}/index.css +0 -0
  171. /package/src/themes/{duskline → lagoon}/base.css +0 -0
  172. /package/src/themes/{duskline → lagoon}/components.css +0 -0
  173. /package/src/themes/{duskline → lagoon}/domains.css +0 -0
  174. /package/src/themes/{saltsignal → ochre}/base.css +0 -0
  175. /package/src/themes/{saltsignal → ochre}/components.css +0 -0
  176. /package/src/themes/{saltsignal → ochre}/domains.css +0 -0
  177. /package/src/themes/{marenlys → orchid}/base.css +0 -0
  178. /package/src/themes/{marenlys → orchid}/components.css +0 -0
  179. /package/src/themes/{marenlys → orchid}/domains.css +0 -0
  180. /package/src/themes/{briarcovelib → sienna}/base.css +0 -0
  181. /package/src/themes/{briarcovelib → sienna}/components.css +0 -0
  182. /package/src/themes/{briarcovelib → sienna}/domains.css +0 -0
  183. /package/src/themes/{briarcovelib → sienna}/tokens.css +0 -0
  184. /package/src/themes/{lanternhouse → vesper}/base.css +0 -0
  185. /package/src/themes/{lanternhouse → vesper}/components.css +0 -0
  186. /package/src/themes/{lanternhouse → vesper}/domains.css +0 -0
  187. /package/src/themes/{andrewpassanisi → voltaic}/base.css +0 -0
  188. /package/src/themes/{andrewpassanisi → voltaic}/index.css +0 -0
  189. /package/src/themes/{andrewpassanisi → voltaic}/tokens.css +0 -0
@@ -1,6 +1,6 @@
1
- /* Hex — Shared Web Components
2
- * Styles for Rig's web package: SiteShell, SiteNav, Hero, Section,
3
- * StatRow, CTABanner, Testimonial, SiteFooter.
1
+ /* Hex — Shared Web Components (skin only)
2
+ * Colors, backgrounds, shadows, opacity, color-only transitions, fonts.
3
+ * Structural layout lives in Rig/src/styles/web.css.
4
4
  *
5
5
  * Typography & color conventions
6
6
  * ──────────────────────────────
@@ -13,7 +13,6 @@
13
13
  * All heading elements (h1-h6) inside web components inherit
14
14
  * --font-heading and --color-primary automatically. Body text
15
15
  * inherits --color-muted-foreground. SVG icons inherit --color-primary.
16
- * Consumers should never need inline style= for these properties.
17
16
  */
18
17
 
19
18
  /* ───────── Global Typography Defaults ───────── */
@@ -58,6 +57,11 @@
58
57
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
59
58
  }
60
59
 
60
+ [data-rig-site-nav-brand-link] {
61
+ color: var(--color-foreground);
62
+ font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
63
+ }
64
+
61
65
  /* Border elements inside web components inherit theme border color */
62
66
  [data-rig-site-shell] [class*='border'] {
63
67
  border-color: var(--color-border);
@@ -84,95 +88,33 @@
84
88
  [data-rig-site-footer-grid] h4,
85
89
  [data-rig-site-footer-grid] p:first-child {
86
90
  opacity: 0.9;
87
- font-weight: 700;
88
- text-transform: uppercase;
89
- letter-spacing: 0.05em;
90
- font-size: 0.75rem;
91
91
  }
92
92
 
93
93
  /* ───────── Skip Link ───────── */
94
94
 
95
- [data-rig-skip-link] {
96
- position: absolute;
97
- left: -9999px;
98
- z-index: 50;
99
- font-size: 14px;
100
- font-weight: 500;
101
- white-space: nowrap;
102
- }
103
-
104
95
  [data-rig-skip-link]:focus {
105
- position: fixed;
106
- left: 16px;
107
- top: 16px;
108
- padding: 8px 16px;
109
- border-radius: var(--radius, 4px);
110
96
  background: var(--color-primary);
111
97
  color: var(--color-primary-foreground);
112
- outline: none;
113
98
  }
114
99
 
115
100
  /* ───────── Site Shell ───────── */
116
101
 
117
102
  [data-rig-site-shell] {
118
- display: flex;
119
- flex-direction: column;
120
- min-height: 100vh;
121
103
  background: var(--color-background);
122
104
  color: var(--color-foreground);
123
105
  font-family: var(--font-sans, system-ui, sans-serif);
124
106
  }
125
107
 
126
- [data-rig-site-shell-main] {
127
- flex: 1;
128
- }
129
-
130
108
  /* ───────── Site Nav ───────── */
131
109
 
132
- [data-rig-site-nav][data-sticky] {
133
- position: sticky;
134
- top: 0;
135
- z-index: 50;
136
- }
137
-
138
110
  [data-rig-site-nav-bar] {
139
- border-bottom: 1px solid var(--color-border);
111
+ border-bottom-color: var(--color-border);
140
112
  background: var(--color-background);
141
- padding: 12px 24px;
142
- }
143
-
144
- [data-rig-site-nav-container] {
145
- max-width: var(--site-max-width, 80rem);
146
- margin: 0 auto;
147
- display: flex;
148
- align-items: center;
149
- justify-content: space-between;
150
- }
151
-
152
- [data-rig-site-nav-links] {
153
- display: none;
154
- align-items: center;
155
- gap: 4px;
156
- }
157
-
158
- @media (min-width: 640px) {
159
- [data-rig-site-nav-links] {
160
- display: flex;
161
- }
162
-
163
- [data-rig-site-nav-toggle] {
164
- display: none !important;
165
- }
166
113
  }
167
114
 
168
115
  [data-rig-site-nav-link] {
169
- padding: 6px 12px;
170
- font-size: 14px;
171
- border-radius: var(--radius, 4px);
172
116
  color: var(--color-muted-foreground);
173
117
  background: transparent;
174
- border: none;
175
- cursor: pointer;
176
118
  transition:
177
119
  color 0.15s,
178
120
  background 0.15s;
@@ -185,44 +127,21 @@
185
127
  [data-rig-site-nav-link][data-active] {
186
128
  color: var(--color-primary);
187
129
  background: var(--color-secondary);
188
- font-weight: 500;
189
- }
190
-
191
- [data-rig-site-nav-actions] {
192
- display: flex;
193
- align-items: center;
194
- gap: 8px;
195
130
  }
196
131
 
197
132
  [data-rig-site-nav-toggle] {
198
133
  background: none;
199
- border: none;
200
- cursor: pointer;
201
- display: flex;
202
- align-items: center;
203
- justify-content: center;
204
134
  color: var(--color-primary);
205
- padding: 4px;
206
135
  }
207
136
 
208
137
  [data-rig-site-nav-mobile] {
209
- padding: 16px 24px;
210
- border-top: 1px solid var(--color-border);
211
- display: flex;
212
- flex-direction: column;
213
- gap: 4px;
138
+ border-top-color: var(--color-border);
214
139
  background: var(--color-background);
215
140
  }
216
141
 
217
142
  [data-rig-site-nav-mobile-link] {
218
- padding: 8px 12px;
219
- text-align: left;
220
- font-size: 14px;
221
143
  background: transparent;
222
- border: none;
223
- border-radius: var(--radius, 4px);
224
144
  color: var(--color-muted-foreground);
225
- cursor: pointer;
226
145
  transition:
227
146
  color 0.15s,
228
147
  background 0.15s;
@@ -235,129 +154,15 @@
235
154
  [data-rig-site-nav-mobile-link][data-active] {
236
155
  color: var(--color-primary);
237
156
  background: var(--color-secondary);
238
- font-weight: 500;
239
- }
240
-
241
- @media (min-width: 640px) {
242
- [data-rig-site-nav-mobile] {
243
- display: none;
244
- }
245
157
  }
246
158
 
247
- /* utility-bar slot renders directly — no wrapper element */
248
-
249
159
  /* ───────── Hero ───────── */
250
160
 
251
- [data-rig-hero] {
252
- position: relative;
253
- overflow: hidden;
254
- }
255
-
256
- [data-rig-hero][data-layout='split'] {
257
- display: grid;
258
- grid-template-columns: 1fr;
259
- min-height: 50vh;
260
- }
261
-
262
- @media (min-width: 640px) {
263
- [data-rig-hero][data-layout='split'] {
264
- grid-template-columns: 1fr 1fr;
265
- min-height: 65vh;
266
- }
267
- }
268
-
269
- [data-rig-hero][data-layout='centered'] {
270
- text-align: center;
271
- }
272
-
273
- [data-rig-hero][data-layout='immersive'] {
274
- min-height: 80vh;
275
- display: flex;
276
- flex-direction: column;
277
- justify-content: flex-end;
278
- }
279
-
280
- [data-rig-hero-content] {
281
- display: flex;
282
- flex-direction: column;
283
- justify-content: center;
284
- padding: 48px 24px;
285
- }
286
-
287
- @media (min-width: 640px) {
288
- [data-rig-hero-content] {
289
- padding: 64px 32px;
290
- }
291
- }
292
-
293
- @media (min-width: 1024px) {
294
- [data-rig-hero-content] {
295
- padding: 64px;
296
- }
297
- }
298
-
299
- [data-rig-hero][data-layout='centered'] [data-rig-hero-content] {
300
- align-items: center;
301
- max-width: 48rem;
302
- margin: 0 auto;
303
- }
304
-
305
- [data-rig-hero-eyebrow] {
306
- margin-bottom: 12px;
307
- }
308
-
309
- [data-rig-hero-description] {
310
- margin-top: 20px;
311
- max-width: 32rem;
312
- }
313
-
314
- [data-rig-hero][data-layout='centered'] [data-rig-hero-description] {
315
- max-width: 28rem;
316
- }
317
-
318
- [data-rig-hero-actions] {
319
- margin-top: 32px;
320
- display: flex;
321
- gap: 16px;
322
- flex-wrap: wrap;
323
- }
324
-
325
- [data-rig-hero][data-layout='centered'] [data-rig-hero-actions] {
326
- justify-content: center;
327
- }
328
-
329
- [data-rig-hero-media] {
330
- display: none;
331
- position: relative;
332
- }
333
-
334
- @media (min-width: 640px) {
335
- [data-rig-hero-media] {
336
- display: block;
337
- }
338
- }
339
-
340
- [data-rig-hero][data-layout='immersive'] [data-rig-hero-media] {
341
- display: block;
342
- position: absolute;
343
- inset: 0;
344
- z-index: 0;
345
- }
346
-
347
- [data-rig-hero][data-layout='immersive'] [data-rig-hero-content] {
348
- position: relative;
349
- z-index: 1;
350
- }
351
-
352
- [data-rig-hero-overlay] {
353
- position: relative;
354
- z-index: 1;
161
+ [data-rig-hero-ornament] {
162
+ color: var(--color-primary);
355
163
  }
356
164
 
357
165
  [data-rig-hero-scrim] {
358
- position: absolute;
359
- inset: 0;
360
- z-index: 1;
361
166
  background: linear-gradient(
362
167
  180deg,
363
168
  color-mix(in srgb, var(--color-background) 80%, transparent) 0%,
@@ -368,67 +173,29 @@
368
173
 
369
174
  /* ───────── Section ───────── */
370
175
 
371
- [data-rig-section] {
372
- padding: 64px 24px;
373
- }
374
-
375
176
  [data-rig-section][data-variant='alternate'] {
376
177
  background: var(--color-card);
377
178
  }
378
179
 
379
180
  [data-rig-section][data-variant='bordered'] {
380
- border-top: 1px solid var(--color-border);
381
- border-bottom: 1px solid var(--color-border);
181
+ border-top-color: var(--color-border);
182
+ border-bottom-color: var(--color-border);
382
183
  background: var(--color-card);
383
184
  }
384
185
 
385
- [data-rig-section-container] {
386
- max-width: var(--site-max-width, 80rem);
387
- margin: 0 auto;
388
- }
389
-
390
- [data-rig-section-header] {
391
- margin-bottom: 40px;
392
- }
393
-
394
- [data-rig-section-header][data-centered] {
395
- text-align: center;
396
- }
397
-
398
- [data-rig-section-title] {
399
- font-size: 1.5rem;
400
- font-weight: 700;
401
- line-height: 1.25;
402
- }
403
-
404
186
  [data-rig-section-accent] {
405
- display: block;
406
- width: 3rem;
407
- height: 2px;
408
- margin-top: 0.75rem;
409
187
  background: var(--color-primary);
410
188
  }
411
189
 
412
- [data-rig-section-header][data-centered] [data-rig-section-accent] {
413
- margin-left: auto;
414
- margin-right: auto;
415
- }
416
-
417
190
  [data-rig-section-subtitle] {
418
- margin-top: 0.5rem;
419
- font-size: 0.875rem;
420
191
  color: var(--color-muted-foreground);
421
192
  }
422
193
 
423
194
  /* ───────── Stat Row ───────── */
424
195
 
425
- [data-rig-stat-row] {
426
- padding: 32px 24px;
427
- }
428
-
429
196
  [data-rig-stat-row][data-variant='bordered'] {
430
- border-top: 1px solid var(--color-border);
431
- border-bottom: 1px solid var(--color-border);
197
+ border-top-color: var(--color-border);
198
+ border-bottom-color: var(--color-border);
432
199
  background: var(--color-card);
433
200
  }
434
201
 
@@ -440,24 +207,11 @@
440
207
  background: var(--color-primary);
441
208
  }
442
209
 
443
- [data-rig-stat-row-container] {
444
- max-width: 64rem;
445
- margin: 0 auto;
446
- display: grid;
447
- grid-template-columns: repeat(2, 1fr);
448
- gap: 24px;
449
- text-align: center;
450
- }
451
-
452
- @media (min-width: 640px) {
453
- [data-rig-stat-row-container] {
454
- grid-template-columns: repeat(4, 1fr);
455
- }
210
+ [data-rig-stat-row][data-variant='filled-secondary'] {
211
+ background: var(--color-secondary);
456
212
  }
457
213
 
458
214
  [data-rig-stat-row-value] {
459
- display: block;
460
- font-size: 24px;
461
215
  color: var(--color-primary);
462
216
  }
463
217
 
@@ -466,10 +220,7 @@
466
220
  }
467
221
 
468
222
  [data-rig-stat-row-label] {
469
- display: block;
470
- font-size: 12px;
471
223
  color: var(--color-muted-foreground);
472
- margin-top: 4px;
473
224
  }
474
225
 
475
226
  [data-rig-stat-row][data-variant='filled'] [data-rig-stat-row-label] {
@@ -477,54 +228,17 @@
477
228
  opacity: 0.85;
478
229
  }
479
230
 
480
- [data-rig-stat-row][data-variant='filled-secondary'] {
481
- background: var(--color-secondary);
482
- }
483
-
484
231
  [data-rig-stat-row-change] {
485
- display: block;
486
- font-size: 11px;
487
232
  color: var(--color-muted-foreground);
488
- margin-top: 2px;
489
233
  }
490
234
 
491
235
  /* ───────── CTA Banner ───────── */
492
236
 
493
237
  [data-rig-cta-banner] {
494
- padding: 48px 24px;
495
238
  background: var(--color-primary);
496
239
  color: var(--color-primary-foreground);
497
240
  }
498
241
 
499
- [data-rig-cta-banner-container] {
500
- max-width: 56rem;
501
- margin: 0 auto;
502
- }
503
-
504
- [data-rig-cta-banner][data-layout='row'] [data-rig-cta-banner-container] {
505
- display: flex;
506
- flex-direction: column;
507
- align-items: center;
508
- gap: 16px;
509
- text-align: center;
510
- }
511
-
512
- @media (min-width: 640px) {
513
- [data-rig-cta-banner][data-layout='row'] [data-rig-cta-banner-container] {
514
- flex-direction: row;
515
- justify-content: space-between;
516
- text-align: left;
517
- }
518
- }
519
-
520
- [data-rig-cta-banner][data-layout='centered'] [data-rig-cta-banner-container] {
521
- display: flex;
522
- flex-direction: column;
523
- align-items: center;
524
- text-align: center;
525
- gap: 16px;
526
- }
527
-
528
242
  [data-rig-cta-banner][data-variant='card'] {
529
243
  background: var(--color-card);
530
244
  color: var(--color-foreground);
@@ -547,26 +261,12 @@
547
261
 
548
262
  /* ───────── Testimonial ───────── */
549
263
 
550
- [data-rig-testimonial] {
551
- margin: 0;
552
- padding: 0;
553
- }
554
-
555
264
  [data-rig-testimonial-quote] {
556
- font-style: italic;
557
- font-size: 14px;
558
- line-height: 1.8;
559
265
  color: var(--color-muted-foreground);
560
266
  }
561
267
 
562
268
  [data-rig-testimonial][data-layout='border'] {
563
- border-left: 2px solid var(--color-primary);
564
- padding-left: 16px;
565
- }
566
-
567
- [data-rig-testimonial-attribution] {
568
- margin-top: 12px;
569
- font-style: normal;
269
+ border-left-color: var(--color-primary);
570
270
  }
571
271
 
572
272
  /* ───────── Site Footer ───────── */
@@ -586,41 +286,7 @@
586
286
  color: var(--color-background);
587
287
  }
588
288
 
589
- [data-rig-site-footer-container] {
590
- max-width: var(--site-max-width, 80rem);
591
- margin: 0 auto;
592
- padding: 48px 24px;
593
- }
594
-
595
- [data-rig-site-footer-grid] {
596
- display: grid;
597
- grid-template-columns: 1fr;
598
- gap: 32px;
599
- }
600
-
601
- @media (min-width: 640px) {
602
- [data-rig-site-footer][data-columns='2'] [data-rig-site-footer-grid] {
603
- grid-template-columns: repeat(2, 1fr);
604
- }
605
-
606
- [data-rig-site-footer][data-columns='3'] [data-rig-site-footer-grid] {
607
- grid-template-columns: repeat(3, 1fr);
608
- }
609
-
610
- [data-rig-site-footer][data-columns='4'] [data-rig-site-footer-grid] {
611
- grid-template-columns: repeat(4, 1fr);
612
- }
613
- }
614
-
615
- [data-rig-site-footer-pre] {
616
- /* Consumer styles — accent stripe, emergency banner, etc. */
617
- }
618
-
619
289
  [data-rig-site-footer-post] {
620
- max-width: var(--site-max-width, 80rem);
621
- margin: 0 auto;
622
- padding: 0 24px 24px;
623
- font-size: 12px;
624
290
  color: var(--color-muted-foreground);
625
291
  }
626
292
 
@@ -641,37 +307,23 @@
641
307
 
642
308
  [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-bar] {
643
309
  background: transparent;
644
- border-bottom: none;
645
- padding: 16px 24px;
646
310
  }
647
311
 
648
312
  [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-container] {
649
- max-width: 56rem;
650
313
  background: color-mix(in srgb, var(--color-background) 80%, transparent);
651
314
  backdrop-filter: blur(16px);
652
315
  -webkit-backdrop-filter: blur(16px);
653
- border: 1px solid color-mix(in srgb, var(--color-border) 60%, transparent);
654
- border-radius: 9999px;
655
- padding: 6px 8px 6px 20px;
316
+ border-color: color-mix(in srgb, var(--color-border) 60%, transparent);
656
317
  box-shadow: 0 4px 24px rgb(0 0 0 / 0.08);
657
318
  }
658
319
 
659
- [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-link] {
660
- border-radius: 9999px;
661
- padding: 6px 16px;
662
- font-size: 13px;
663
- }
664
-
665
320
  [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-link][data-active] {
666
321
  background: var(--color-primary);
667
322
  color: var(--color-primary-foreground);
668
323
  }
669
324
 
670
325
  [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-mobile] {
671
- margin: 0 24px;
672
- border-radius: 16px;
673
- border: 1px solid var(--color-border);
674
- border-top: none;
326
+ border-color: var(--color-border);
675
327
  background: color-mix(in srgb, var(--color-background) 90%, transparent);
676
328
  backdrop-filter: blur(16px);
677
329
  -webkit-backdrop-filter: blur(16px);
@@ -683,18 +335,6 @@
683
335
  color: var(--color-primary-foreground);
684
336
  }
685
337
 
686
- /* Pill — compact at intermediate widths (many-item navs) */
687
- @media (min-width: 640px) and (max-width: 1024px) {
688
- [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-link] {
689
- padding: 6px 10px;
690
- font-size: 12px;
691
- }
692
-
693
- [data-rig-site-nav][data-variant='pill'] [data-rig-site-nav-container] {
694
- padding: 6px 8px 6px 14px;
695
- }
696
- }
697
-
698
338
  /* Pill — scroll states */
699
339
  [data-rig-site-nav][data-variant='pill'][data-at-top] [data-rig-site-nav-container] {
700
340
  background: transparent;
@@ -708,7 +348,7 @@
708
348
  background: color-mix(in srgb, var(--color-background) 55%, transparent);
709
349
  backdrop-filter: blur(20px) saturate(1.3);
710
350
  -webkit-backdrop-filter: blur(20px) saturate(1.3);
711
- border-bottom: 1px solid color-mix(in srgb, var(--color-border) 35%, transparent);
351
+ border-bottom-color: color-mix(in srgb, var(--color-border) 35%, transparent);
712
352
  box-shadow: 0 1px 0 color-mix(in srgb, var(--color-primary) 8%, transparent);
713
353
  }
714
354
 
@@ -736,41 +376,12 @@
736
376
 
737
377
  /* ───────── Site Nav — Theater Variant ───────── */
738
378
 
739
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-bar] {
740
- padding: 20px 24px;
741
- border-bottom: none;
742
- }
743
-
744
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-links] {
745
- gap: 8px;
746
- }
747
-
748
379
  [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link] {
749
- font-size: 13px;
750
- letter-spacing: 0.08em;
751
- text-transform: uppercase;
752
- padding: 8px 16px;
753
- position: relative;
754
380
  background: transparent !important;
755
- border-radius: 0;
756
381
  }
757
382
 
758
383
  [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link]::after {
759
- content: '';
760
- position: absolute;
761
- left: 16px;
762
- right: 16px;
763
- bottom: 4px;
764
- height: 1.5px;
765
384
  background: var(--color-primary);
766
- transform: scaleX(0);
767
- transform-origin: left;
768
- transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
769
- }
770
-
771
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link]:hover::after,
772
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link][data-active]::after {
773
- transform: scaleX(1);
774
385
  }
775
386
 
776
387
  [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link][data-active] {
@@ -778,16 +389,7 @@
778
389
  }
779
390
 
780
391
  [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-mobile-link] {
781
- font-size: 13px;
782
- letter-spacing: 0.06em;
783
- text-transform: uppercase;
784
- border-radius: 0;
785
- border-bottom: 1px solid color-mix(in srgb, var(--color-border) 40%, transparent);
786
- padding: 12px 16px;
787
- }
788
-
789
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-mobile-link]:last-child {
790
- border-bottom: none;
392
+ border-bottom-color: color-mix(in srgb, var(--color-border) 40%, transparent);
791
393
  }
792
394
 
793
395
  [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-mobile-link][data-active] {
@@ -796,41 +398,10 @@
796
398
  border-bottom-color: var(--color-primary);
797
399
  }
798
400
 
799
- /* Theater — compact at intermediate widths (many-item navs) */
800
- @media (min-width: 640px) and (max-width: 1024px) {
801
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link] {
802
- padding: 8px 10px;
803
- font-size: 11px;
804
- letter-spacing: 0.06em;
805
- }
806
-
807
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link]::after {
808
- left: 10px;
809
- right: 10px;
810
- }
811
- }
812
-
813
401
  /* ───────── Site Nav — Split Variant ───────── */
814
402
 
815
- [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-bar] {
816
- border-bottom: none;
817
- padding: 20px 40px;
818
- }
819
-
820
- [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-container] {
821
- max-width: none;
822
- }
823
-
824
- [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-links] {
825
- gap: 0;
826
- }
827
-
828
403
  [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-link] {
829
404
  background: transparent !important;
830
- border-radius: 0;
831
- padding: 8px 20px;
832
- position: relative;
833
- font-size: 13px;
834
405
  }
835
406
 
836
407
  [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-link][data-active] {
@@ -838,21 +409,7 @@
838
409
  }
839
410
 
840
411
  [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-link][data-active]::after {
841
- content: '';
842
- position: absolute;
843
- left: 50%;
844
- bottom: 0;
845
- width: 4px;
846
- height: 4px;
847
- border-radius: 50%;
848
412
  background: var(--color-primary);
849
- transform: translateX(-50%);
850
- }
851
-
852
- [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-mobile-link] {
853
- text-align: right;
854
- padding: 10px 16px;
855
- border-radius: 0;
856
413
  }
857
414
 
858
415
  [data-rig-site-nav][data-variant='split'] [data-rig-site-nav-mobile-link][data-active] {
@@ -862,122 +419,29 @@
862
419
 
863
420
  /* ───────── Site Nav — Drawer Variant ───────── */
864
421
 
865
- [data-rig-site-nav][data-variant='drawer'] [data-rig-site-nav-links] {
866
- display: none !important;
867
- }
868
-
869
- [data-rig-site-nav][data-variant='drawer'] [data-rig-site-nav-toggle] {
870
- display: flex !important;
871
- }
872
-
873
- [data-rig-site-nav][data-variant='drawer'][data-mobile-open] [data-rig-site-nav-bar] {
874
- position: relative;
875
- z-index: 101;
876
- }
877
-
878
422
  [data-rig-site-nav][data-variant='drawer'] [data-rig-site-nav-mobile] {
879
- position: fixed;
880
- top: 0;
881
- left: 0;
882
- bottom: 0;
883
- width: 300px;
884
- padding: 80px 32px 32px;
885
- border-top: none;
886
- border-right: 1px solid var(--color-border);
423
+ border-right-color: var(--color-border);
887
424
  background: var(--color-background);
888
- z-index: 100;
889
425
  box-shadow: 8px 0 32px rgb(0 0 0 / 0.15);
890
- gap: 2px;
891
- }
892
-
893
- [data-rig-site-nav][data-variant='drawer'] [data-rig-site-nav-mobile-link] {
894
- padding: 12px 16px;
895
- font-size: 15px;
896
- border-radius: var(--radius, 4px);
897
426
  }
898
427
 
899
428
  [data-rig-site-nav][data-variant='drawer'][data-mobile-open]::after {
900
- content: '';
901
- position: fixed;
902
- inset: 0;
903
429
  background: rgb(0 0 0 / 0.3);
904
- z-index: 99;
905
- pointer-events: none;
906
- }
907
-
908
- @media (min-width: 640px) {
909
- [data-rig-site-nav][data-variant='drawer'] [data-rig-site-nav-mobile] {
910
- display: flex;
911
- }
912
430
  }
913
431
 
914
432
  /* ───────── Site Nav — Overlay Variant ───────── */
915
433
 
916
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-links] {
917
- display: none !important;
918
- }
919
-
920
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-toggle] {
921
- display: flex !important;
922
- }
923
-
924
434
  [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-bar] {
925
- border-bottom: none;
926
435
  background: transparent;
927
436
  }
928
437
 
929
- [data-rig-site-nav][data-variant='overlay'][data-mobile-open] [data-rig-site-nav-bar] {
930
- position: fixed;
931
- top: 0;
932
- left: 0;
933
- right: 0;
934
- z-index: 101;
935
- }
936
-
937
438
  [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile] {
938
- position: fixed;
939
- inset: 0;
940
- z-index: 100;
941
439
  background: var(--color-background);
942
- display: flex;
943
- flex-direction: column;
944
- align-items: center;
945
- justify-content: center;
946
- gap: 8px;
947
- padding: 0;
948
- border-top: none;
949
440
  }
950
441
 
951
442
  [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link] {
952
- font-size: 2rem;
953
- font-weight: 300;
954
443
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
955
- letter-spacing: 0.02em;
956
- padding: 12px 32px;
957
- text-align: center;
958
- border-radius: 0;
959
444
  opacity: 0;
960
- transform: translateY(16px);
961
- animation: rig-overlay-link-in 0.4s ease forwards;
962
- }
963
-
964
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link]:nth-child(1) {
965
- animation-delay: 0.05s;
966
- }
967
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link]:nth-child(2) {
968
- animation-delay: 0.1s;
969
- }
970
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link]:nth-child(3) {
971
- animation-delay: 0.15s;
972
- }
973
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link]:nth-child(4) {
974
- animation-delay: 0.2s;
975
- }
976
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link]:nth-child(5) {
977
- animation-delay: 0.25s;
978
- }
979
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link]:nth-child(6) {
980
- animation-delay: 0.3s;
981
445
  }
982
446
 
983
447
  [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link][data-active] {
@@ -989,118 +453,45 @@
989
453
  color: var(--color-primary);
990
454
  }
991
455
 
992
- @keyframes rig-overlay-link-in {
456
+ @keyframes rig-overlay-link-in-opacity {
993
457
  to {
994
458
  opacity: 1;
995
- transform: translateY(0);
996
459
  }
997
460
  }
998
461
 
999
- @media (min-width: 640px) {
1000
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile] {
1001
- display: flex;
462
+ /* Reuse the structural keyframes by adding a paired opacity animation */
463
+ [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link] {
464
+ animation:
465
+ rig-overlay-link-in 0.4s ease forwards,
466
+ rig-overlay-link-in-opacity 0.4s ease forwards;
467
+ }
468
+
469
+ @media (prefers-reduced-motion: reduce) {
470
+ [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link] {
471
+ opacity: 1;
1002
472
  }
1003
473
  }
1004
474
 
1005
475
  /* ───────── Site Nav — Tabs Variant ───────── */
1006
476
 
1007
- [data-rig-site-nav][data-variant='tabs'] {
1008
- position: fixed !important;
1009
- bottom: 0;
1010
- top: auto !important;
1011
- left: 0;
1012
- right: 0;
1013
- z-index: 50;
1014
- }
1015
-
1016
477
  [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-bar] {
1017
- border-bottom: none;
1018
- border-top: 1px solid var(--color-border);
1019
- padding: 6px 8px 2px;
478
+ border-top-color: var(--color-border);
1020
479
  background: var(--color-background);
1021
480
  }
1022
481
 
1023
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-container] {
1024
- justify-content: center;
1025
- max-width: 32rem;
1026
- }
1027
-
1028
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-brand] {
1029
- display: none;
1030
- }
1031
-
1032
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-links] {
1033
- display: flex !important;
1034
- flex: 1;
1035
- justify-content: space-around;
1036
- gap: 0;
1037
- }
1038
-
1039
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-link] {
1040
- display: flex;
1041
- flex-direction: column;
1042
- align-items: center;
1043
- gap: 2px;
1044
- padding: 4px 8px;
1045
- font-size: 10px;
1046
- border-radius: 8px;
1047
- min-width: 56px;
1048
- }
1049
-
1050
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-link] svg {
1051
- width: 20px;
1052
- height: 20px;
1053
- }
1054
-
1055
482
  [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-link][data-active] {
1056
483
  background: transparent;
1057
484
  color: var(--color-primary);
1058
485
  }
1059
486
 
1060
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-actions] {
1061
- display: none;
1062
- }
1063
-
1064
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-toggle] {
1065
- display: none !important;
1066
- }
1067
-
1068
- [data-rig-site-nav][data-variant='tabs'] [data-rig-site-nav-mobile] {
1069
- display: none !important;
1070
- }
1071
-
1072
- /* ───────── Site Nav — Reduced Motion ───────── */
1073
-
1074
- @media (prefers-reduced-motion: reduce) {
1075
- [data-rig-site-nav][data-variant='theater'] [data-rig-site-nav-link]::after {
1076
- transition: none;
1077
- }
1078
-
1079
- [data-rig-site-nav][data-variant='overlay'] [data-rig-site-nav-mobile-link] {
1080
- animation: none;
1081
- opacity: 1;
1082
- transform: none;
1083
- }
1084
- }
1085
-
1086
487
  /* ───────── Pricing Card ───────── */
1087
488
 
1088
489
  [data-rig-pricing-card] {
1089
- display: flex;
1090
- flex-direction: column;
1091
- position: relative;
1092
- padding: 32px 24px;
1093
- border: 1px solid var(--color-border);
1094
- border-radius: var(--radius, 8px);
490
+ border-color: var(--color-border);
1095
491
  background: color-mix(in srgb, var(--color-background) 95%, var(--color-foreground));
1096
- transition:
1097
- transform 0.2s,
1098
- box-shadow 0.2s,
1099
- border-color 0.2s;
1100
492
  }
1101
493
 
1102
494
  [data-rig-pricing-card]:hover {
1103
- transform: translateY(-2px);
1104
495
  box-shadow: 0 8px 24px rgb(0 0 0 / 0.15);
1105
496
  }
1106
497
 
@@ -1116,560 +507,177 @@
1116
507
  }
1117
508
 
1118
509
  [data-rig-pricing-card-badge] {
1119
- position: absolute;
1120
- top: -12px;
1121
- left: 50%;
1122
- transform: translateX(-50%);
1123
- white-space: nowrap;
1124
- font-size: 12px;
1125
- font-weight: 600;
1126
- padding: 4px 12px;
1127
- border-radius: 9999px;
1128
510
  background: var(--color-primary);
1129
511
  color: var(--color-primary-foreground);
1130
512
  }
1131
513
 
1132
- [data-rig-pricing-card-header] {
1133
- text-align: center;
1134
- margin-bottom: 24px;
1135
- }
1136
-
1137
514
  [data-rig-pricing-card-title] {
1138
- font-size: 1.125rem;
1139
- font-weight: 600;
1140
515
  color: var(--color-foreground);
1141
516
  }
1142
517
 
1143
518
  [data-rig-pricing-card-price] {
1144
- display: flex;
1145
- align-items: baseline;
1146
- justify-content: center;
1147
- gap: 4px;
1148
- margin-top: 8px;
1149
519
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
1150
- font-size: 2rem;
1151
- font-weight: 700;
1152
520
  color: var(--color-primary);
1153
521
  }
1154
522
 
1155
523
  [data-rig-pricing-card-period] {
1156
- font-size: 0.875rem;
1157
- font-weight: 400;
1158
524
  color: var(--color-muted-foreground);
1159
525
  }
1160
526
 
1161
527
  [data-rig-pricing-card-description] {
1162
- margin-top: 8px;
1163
- font-size: 0.875rem;
1164
528
  color: var(--color-muted-foreground);
1165
529
  }
1166
530
 
1167
- [data-rig-pricing-card-features] {
1168
- flex: 1;
1169
- margin-bottom: 24px;
1170
- }
1171
-
1172
- [data-rig-pricing-card-features] ul {
1173
- list-style: none;
1174
- padding: 0;
1175
- margin: 0;
1176
- display: flex;
1177
- flex-direction: column;
1178
- gap: 8px;
1179
- }
1180
-
1181
531
  [data-rig-pricing-card-features] li {
1182
- display: flex;
1183
- align-items: flex-start;
1184
- gap: 8px;
1185
- font-size: 0.875rem;
1186
532
  color: var(--color-muted-foreground);
1187
533
  }
1188
534
 
1189
535
  [data-rig-pricing-card-features] li svg {
1190
- flex-shrink: 0;
1191
- width: 16px;
1192
- height: 16px;
1193
- margin-top: 2px;
1194
536
  color: var(--color-success, var(--color-primary));
1195
537
  }
1196
538
 
1197
- [data-rig-pricing-card-cta] {
1198
- margin-top: auto;
1199
- }
1200
-
1201
- [data-rig-pricing-card-cta] [data-rig-button] {
1202
- width: 100%;
1203
- }
1204
-
1205
539
  [data-rig-pricing-card-footer] {
1206
- margin-top: 16px;
1207
- padding-top: 16px;
1208
- border-top: 1px solid var(--color-border);
1209
- font-size: 0.75rem;
540
+ border-top-color: var(--color-border);
1210
541
  color: var(--color-muted-foreground);
1211
- text-align: center;
1212
542
  }
1213
543
 
1214
544
  /* ───────── SectionDivider ───────── */
1215
545
 
1216
- [data-rig-section-divider] {
1217
- position: relative;
1218
- width: 100%;
1219
- overflow: hidden;
1220
- line-height: 0;
1221
- margin-top: -1px;
1222
- margin-bottom: -1px;
1223
- }
1224
-
1225
- [data-rig-section-divider-svg] {
1226
- display: block;
1227
- width: 100%;
1228
- height: clamp(40px, 8vw, 120px);
1229
- margin-bottom: -1px;
1230
- }
1231
-
1232
546
  [data-rig-section-divider-path] {
1233
547
  fill: var(--section-divider-fill, var(--color-primary));
1234
548
  }
1235
549
 
1236
- [data-rig-section-divider][data-flip] {
1237
- transform: scaleY(-1);
1238
- }
1239
-
1240
550
  /* ───────── FlankedHeading ───────── */
1241
551
 
1242
- [data-rig-flanked-heading] {
1243
- display: flex;
1244
- align-items: center;
1245
- justify-content: center;
1246
- gap: 20px;
1247
- }
1248
-
1249
552
  [data-rig-flanked-heading-ornament] {
1250
- display: none;
1251
- flex-shrink: 0;
1252
553
  color: var(--color-primary);
1253
554
  }
1254
555
 
1255
556
  [data-rig-flanked-heading-rule] {
1256
- display: block;
1257
- width: 32px;
1258
- height: 1px;
1259
- flex-shrink: 0;
1260
557
  background: var(--color-muted-foreground);
1261
558
  opacity: 0.3;
1262
559
  }
1263
560
 
1264
- [data-rig-flanked-heading-svg] {
1265
- width: 60px;
1266
- height: 20px;
1267
- }
1268
-
1269
- @media (min-width: 640px) {
1270
- [data-rig-flanked-heading-ornament] {
1271
- display: block;
1272
- }
1273
-
1274
- [data-rig-flanked-heading-rule] {
1275
- display: none;
1276
- }
1277
- }
1278
-
1279
561
  /* ───────── Ornament ───────── */
1280
562
 
1281
563
  [data-rig-ornament] {
1282
- display: flex;
1283
- align-items: center;
1284
- justify-content: center;
1285
564
  color: var(--color-primary);
1286
565
  }
1287
566
 
1288
567
  /* ───────── ContactForm ───────── */
1289
568
 
1290
- [data-rig-contact-form-body] {
1291
- display: flex;
1292
- flex-direction: column;
1293
- gap: 20px;
1294
- }
1295
-
1296
569
  [data-rig-contact-form-label] {
1297
- display: block;
1298
570
  font-family: var(--font-mono, monospace);
1299
- font-size: 0.6875rem;
1300
- text-transform: uppercase;
1301
- letter-spacing: 0.1em;
1302
571
  color: var(--color-muted-foreground);
1303
- margin-bottom: 6px;
1304
- }
1305
-
1306
- [data-rig-contact-form-field] [data-rig-input],
1307
- [data-rig-contact-form-field] [data-rig-textarea] {
1308
- width: 100%;
1309
572
  }
1310
573
 
1311
574
  [data-rig-contact-form-field-error] {
1312
- margin-top: 4px;
1313
- font-size: 0.75rem;
1314
575
  color: var(--color-destructive, #ef4444);
1315
576
  }
1316
577
 
1317
578
  [data-rig-contact-form-error] {
1318
- padding: 12px 16px;
1319
- border: 1px solid color-mix(in srgb, var(--color-destructive, #ef4444) 40%, transparent);
579
+ border-color: color-mix(in srgb, var(--color-destructive, #ef4444) 40%, transparent);
1320
580
  background: color-mix(in srgb, var(--color-destructive, #ef4444) 10%, transparent);
1321
- border-radius: var(--radius, 4px);
1322
- font-size: 0.875rem;
1323
- text-align: center;
1324
- }
1325
-
1326
- [data-rig-contact-form-success] {
1327
- text-align: center;
1328
- }
1329
-
1330
- [data-rig-contact-form-actions] {
1331
- text-align: center;
1332
581
  }
1333
582
 
1334
583
  /* ───────── ServiceGrid ───────── */
1335
584
 
1336
- [data-rig-service-grid] {
1337
- display: grid;
1338
- gap: 24px;
1339
- }
1340
-
1341
- [data-rig-service-grid][data-layout='grid'] {
1342
- grid-template-columns: 1fr;
1343
- }
1344
-
1345
- [data-rig-service-grid][data-layout='list'],
1346
- [data-rig-service-grid][data-layout='numbered'] {
1347
- grid-template-columns: 1fr;
1348
- }
1349
-
1350
585
  [data-rig-service-grid][data-layout='list'] [data-rig-service-grid-item],
1351
586
  [data-rig-service-grid][data-layout='numbered'] [data-rig-service-grid-item] {
1352
- padding-bottom: 24px;
1353
- border-bottom: 1px solid var(--color-border);
1354
- }
1355
-
1356
- [data-rig-service-grid][data-layout='list'] [data-rig-service-grid-item]:last-child,
1357
- [data-rig-service-grid][data-layout='numbered'] [data-rig-service-grid-item]:last-child {
1358
- border-bottom: none;
1359
- padding-bottom: 0;
587
+ border-bottom-color: var(--color-border);
1360
588
  }
1361
589
 
1362
590
  [data-rig-service-grid-number] {
1363
591
  font-family: var(--font-serif, var(--font-sans));
1364
- font-size: 0.875rem;
1365
- font-weight: 500;
1366
592
  color: var(--color-primary);
1367
- margin-bottom: 8px;
1368
593
  }
1369
594
 
1370
595
  [data-rig-service-grid-title] {
1371
596
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
1372
- font-weight: 600;
1373
597
  color: var(--color-foreground);
1374
598
  }
1375
599
 
1376
600
  [data-rig-service-grid-description] {
1377
- margin-top: 8px;
1378
- font-size: 0.875rem;
1379
- line-height: 1.6;
1380
601
  color: var(--color-muted-foreground);
1381
602
  }
1382
603
 
1383
604
  [data-rig-service-grid-icon] {
1384
- margin-bottom: 12px;
1385
605
  color: var(--color-primary);
1386
606
  }
1387
607
 
1388
- @media (min-width: 640px) {
1389
- [data-rig-service-grid][data-layout='grid'][data-columns='2'] {
1390
- grid-template-columns: repeat(2, 1fr);
1391
- }
1392
-
1393
- [data-rig-service-grid][data-layout='grid'][data-columns='3'] {
1394
- grid-template-columns: repeat(3, 1fr);
1395
- }
1396
-
1397
- [data-rig-service-grid][data-layout='grid'][data-columns='4'] {
1398
- grid-template-columns: repeat(4, 1fr);
1399
- }
1400
- }
1401
-
1402
608
  /* ───────── TeamGrid ───────── */
1403
609
 
1404
- [data-rig-team-grid] {
1405
- display: grid;
1406
- gap: 24px;
1407
- grid-template-columns: 1fr;
1408
- }
1409
-
1410
- [data-rig-team-grid-member] {
1411
- overflow: hidden;
1412
- }
1413
-
1414
- [data-rig-team-grid-img] {
1415
- width: 100%;
1416
- height: auto;
1417
- object-fit: cover;
1418
- }
1419
-
1420
- [data-rig-team-grid][data-layout='card'] [data-rig-team-grid-img] {
1421
- aspect-ratio: 3 / 4;
1422
- }
1423
-
1424
610
  [data-rig-team-grid-name] {
1425
611
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
1426
- font-weight: 600;
1427
612
  color: var(--color-foreground);
1428
613
  }
1429
614
 
1430
615
  [data-rig-team-grid-role] {
1431
- font-size: 0.8125rem;
1432
616
  color: var(--color-primary);
1433
- margin-top: 2px;
1434
617
  }
1435
618
 
1436
619
  [data-rig-team-grid-bio] {
1437
- margin-top: 8px;
1438
- font-size: 0.875rem;
1439
- line-height: 1.6;
1440
620
  color: var(--color-muted-foreground);
1441
621
  }
1442
622
 
1443
- [data-rig-team-grid-info] {
1444
- padding: 16px 0;
1445
- }
1446
-
1447
623
  [data-rig-team-grid-credentials] {
1448
- margin-top: 12px;
1449
- font-size: 0.8125rem;
1450
624
  color: var(--color-muted-foreground);
1451
625
  }
1452
626
 
1453
- [data-rig-team-grid][data-layout='horizontal'] [data-rig-team-grid-member] {
1454
- display: grid;
1455
- grid-template-columns: 120px 1fr;
1456
- gap: 20px;
1457
- align-items: start;
1458
- }
1459
-
1460
- [data-rig-team-grid][data-layout='horizontal'] [data-rig-team-grid-img] {
1461
- aspect-ratio: 1;
1462
- border-radius: 50%;
1463
- }
1464
-
1465
- [data-rig-team-grid][data-layout='compact'] [data-rig-team-grid-info] {
1466
- padding: 8px 0;
1467
- }
1468
-
1469
- @media (min-width: 640px) {
1470
- [data-rig-team-grid][data-columns='2'] {
1471
- grid-template-columns: repeat(2, 1fr);
1472
- }
1473
-
1474
- [data-rig-team-grid][data-columns='3'] {
1475
- grid-template-columns: repeat(3, 1fr);
1476
- }
1477
-
1478
- [data-rig-team-grid][data-columns='4'] {
1479
- grid-template-columns: repeat(4, 1fr);
1480
- }
1481
- }
1482
-
1483
627
  /* ───────── MenuList ───────── */
1484
628
 
1485
- [data-rig-menu-list] {
1486
- display: flex;
1487
- flex-direction: column;
1488
- }
1489
-
1490
629
  [data-rig-menu-list-item] {
1491
- display: flex;
1492
- justify-content: space-between;
1493
- align-items: baseline;
1494
- gap: 16px;
1495
- padding: 12px 0;
1496
- border-bottom: 1px solid var(--color-border);
1497
- }
1498
-
1499
- [data-rig-menu-list-item]:last-child {
1500
- border-bottom: none;
1501
- }
1502
-
1503
- [data-rig-menu-list-content] {
1504
- flex: 1;
1505
- min-width: 0;
630
+ border-bottom-color: var(--color-border);
1506
631
  }
1507
632
 
1508
633
  [data-rig-menu-list-name] {
1509
634
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
1510
- font-weight: 500;
1511
635
  color: var(--color-foreground);
1512
636
  }
1513
637
 
1514
638
  [data-rig-menu-list-note] {
1515
- margin-left: 8px;
1516
- font-size: 0.75rem;
1517
- font-style: italic;
1518
639
  color: var(--color-muted-foreground);
1519
640
  }
1520
641
 
1521
642
  [data-rig-menu-list-description] {
1522
- margin-top: 4px;
1523
- font-size: 0.8125rem;
1524
- line-height: 1.5;
1525
643
  color: var(--color-muted-foreground);
1526
644
  }
1527
645
 
1528
646
  [data-rig-menu-list-price] {
1529
- flex-shrink: 0;
1530
647
  font-family: var(--font-mono, monospace);
1531
- font-size: 0.875rem;
1532
- font-variant-numeric: tabular-nums;
1533
648
  color: var(--color-foreground);
1534
- white-space: nowrap;
1535
649
  }
1536
650
 
1537
651
  /* ───────── FeatureList ───────── */
1538
652
 
1539
- [data-rig-feature-list] {
1540
- display: flex;
1541
- flex-direction: column;
1542
- gap: 12px;
1543
- }
1544
-
1545
- [data-rig-feature-list][data-layout='grid'] {
1546
- display: grid;
1547
- grid-template-columns: 1fr;
1548
- gap: 16px;
1549
- }
1550
-
1551
- [data-rig-feature-list][data-layout='inline'] {
1552
- flex-direction: row;
1553
- flex-wrap: wrap;
1554
- gap: 8px 16px;
1555
- }
1556
-
1557
- [data-rig-feature-list-item] {
1558
- display: flex;
1559
- align-items: flex-start;
1560
- gap: 10px;
1561
- }
1562
-
1563
653
  [data-rig-feature-list-icon] {
1564
- flex-shrink: 0;
1565
- width: 20px;
1566
- height: 20px;
1567
- margin-top: 2px;
1568
654
  color: var(--color-primary);
1569
655
  }
1570
656
 
1571
657
  [data-rig-feature-list-text] {
1572
- font-size: 0.875rem;
1573
658
  color: var(--color-foreground);
1574
659
  }
1575
660
 
1576
661
  [data-rig-feature-list-detail] {
1577
- font-size: 0.8125rem;
1578
662
  color: var(--color-muted-foreground);
1579
- margin-top: 2px;
1580
- }
1581
-
1582
- @media (min-width: 640px) {
1583
- [data-rig-feature-list][data-layout='grid'][data-columns='2'] {
1584
- grid-template-columns: repeat(2, 1fr);
1585
- }
1586
-
1587
- [data-rig-feature-list][data-layout='grid'][data-columns='3'] {
1588
- grid-template-columns: repeat(3, 1fr);
1589
- }
1590
-
1591
- [data-rig-feature-list][data-layout='grid'][data-columns='4'] {
1592
- grid-template-columns: repeat(4, 1fr);
1593
- }
1594
663
  }
1595
664
 
1596
665
  /* ───────── Gallery ───────── */
1597
666
 
1598
- [data-rig-gallery] {
1599
- display: flex;
1600
- flex-direction: column;
1601
- gap: 48px;
1602
- }
1603
-
1604
- [data-rig-gallery][data-layout='alternating'] [data-rig-gallery-item] {
1605
- display: grid;
1606
- grid-template-columns: 1fr;
1607
- gap: 24px;
1608
- align-items: center;
1609
- }
1610
-
1611
- [data-rig-gallery-img] {
1612
- width: 100%;
1613
- height: auto;
1614
- object-fit: cover;
1615
- border-radius: var(--radius, 4px);
1616
- }
1617
-
1618
667
  [data-rig-gallery-title] {
1619
668
  font-family: var(--font-heading, var(--font-serif, var(--font-sans)));
1620
- font-weight: 600;
1621
- font-size: 1.25rem;
1622
669
  color: var(--color-foreground);
1623
670
  }
1624
671
 
1625
672
  [data-rig-gallery-description] {
1626
- margin-top: 12px;
1627
- font-size: 0.9375rem;
1628
- line-height: 1.7;
1629
673
  color: var(--color-muted-foreground);
1630
674
  }
1631
675
 
1632
- [data-rig-gallery][data-layout='grid'] {
1633
- display: grid;
1634
- grid-template-columns: repeat(2, 1fr);
1635
- gap: 24px;
1636
- }
1637
-
1638
- @media (min-width: 640px) {
1639
- [data-rig-gallery][data-layout='alternating'] [data-rig-gallery-item] {
1640
- grid-template-columns: 1fr 1fr;
1641
- }
1642
-
1643
- [data-rig-gallery][data-layout='alternating']
1644
- [data-rig-gallery-item]:not([data-image-first])
1645
- [data-rig-gallery-image] {
1646
- order: 2;
1647
- }
1648
-
1649
- [data-rig-gallery][data-layout='alternating']
1650
- [data-rig-gallery-item]:not([data-image-first])
1651
- [data-rig-gallery-content] {
1652
- order: 1;
1653
- }
1654
-
1655
- [data-rig-gallery][data-layout='grid'] {
1656
- grid-template-columns: repeat(3, 1fr);
1657
- }
1658
- }
1659
-
1660
676
  /* ───────── MapPlaceholder ───────── */
1661
677
 
1662
678
  [data-rig-map-placeholder] {
1663
- display: flex;
1664
- flex-direction: column;
1665
- align-items: center;
1666
- justify-content: center;
1667
- gap: 12px;
1668
679
  background: var(--color-card);
1669
- border: 1px solid var(--color-border);
1670
- border-radius: var(--radius, 4px);
1671
- text-align: center;
1672
- padding: 32px 24px;
680
+ border-color: var(--color-border);
1673
681
  }
1674
682
 
1675
683
  [data-rig-map-pin] {
@@ -1678,12 +686,9 @@
1678
686
  }
1679
687
 
1680
688
  [data-rig-map-address] {
1681
- font-size: 0.875rem;
1682
- font-weight: 500;
1683
689
  color: var(--color-foreground);
1684
690
  }
1685
691
 
1686
692
  [data-rig-map-description] {
1687
- font-size: 0.8125rem;
1688
693
  color: var(--color-muted-foreground);
1689
694
  }