@primer/brand-css 0.0.0-20250212132611

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 (75) hide show
  1. package/components/Accordion/Accordion.css +305 -0
  2. package/components/ActionMenu/ActionMenu.css +187 -0
  3. package/components/AnchorNav/AnchorNav.css +427 -0
  4. package/components/Avatar/Avatar.css +115 -0
  5. package/components/Bento/Bento.css +2157 -0
  6. package/components/Box/Box.css +2795 -0
  7. package/components/Box/Box.features.css +48 -0
  8. package/components/Breadcrumbs/Breadcrumbs.css +81 -0
  9. package/components/BreakoutBanner/BreakoutBanner.css +109 -0
  10. package/components/Button/Button.css +207 -0
  11. package/components/ButtonGroup/ButtonGroup.css +10 -0
  12. package/components/CTABanner/CTABanner.css +104 -0
  13. package/components/CTAForm/CTAForm.css +48 -0
  14. package/components/Card/Card.css +183 -0
  15. package/components/ComparisonTable/ComparisonTable.css +290 -0
  16. package/components/ExpandableArrow/ExpandableArrow.css +26 -0
  17. package/components/EyebrowBanner/EyebrowBanner.css +320 -0
  18. package/components/FAQ/FAQ.css +51 -0
  19. package/components/FAQ/FAQGroup.css +51 -0
  20. package/components/Footnotes/Footnotes.css +35 -0
  21. package/components/FrostedGlassVFX/FrostedGlassVFX.css +50 -0
  22. package/components/Grid/Grid.css +741 -0
  23. package/components/Heading/Heading.css +284 -0
  24. package/components/Hero/Hero.css +87 -0
  25. package/components/IDE/IDE.css +392 -0
  26. package/components/Icon/Icon.css +121 -0
  27. package/components/Image/Image.css +54 -0
  28. package/components/InlineLink/InlineLink.css +30 -0
  29. package/components/Label/Label.css +167 -0
  30. package/components/Link/Link.css +84 -0
  31. package/components/LogoSuite/LogoSuite.css +165 -0
  32. package/components/MinimalFooter/MinimalFooter.css +116 -0
  33. package/components/MonaSans/MonaSans.css +4 -0
  34. package/components/Pagination/Pagination.css +117 -0
  35. package/components/Pillar/Pillar.css +106 -0
  36. package/components/PricingOptions/PricingOptions.css +357 -0
  37. package/components/Prose/Prose.css +332 -0
  38. package/components/Section/Section.css +156 -0
  39. package/components/Section/Section.features.css +33 -0
  40. package/components/SectionIntro/SectionIntro.css +48 -0
  41. package/components/Stack/Stack.css +793 -0
  42. package/components/Statistic/Statistic.css +91 -0
  43. package/components/SubNav/SubNav.css +678 -0
  44. package/components/SubdomainNavBar/SubdomainNavBar.css +728 -0
  45. package/components/Testimonial/Testimonial.css +228 -0
  46. package/components/Text/Text.css +195 -0
  47. package/components/Timeline/Timeline.css +79 -0
  48. package/components/Tooltip/Tooltip.css +170 -0
  49. package/components/VideoPlayer/VideoPlayer.css +348 -0
  50. package/components/VideoPlayer/components/Captions/Captions.css +17 -0
  51. package/components/VideoPlayer/components/VolumeControl/VolumeControl.css +3 -0
  52. package/components/animation/Animation.css +192 -0
  53. package/components/animation/TextRevealAnimation/TextRevealAnimation.css +38 -0
  54. package/components/forms/Checkbox/Checkbox.css +88 -0
  55. package/components/forms/ControlGroup/ControlGroup.css +59 -0
  56. package/components/forms/FormControl/FormControl.css +113 -0
  57. package/components/forms/Radio/Radio.css +111 -0
  58. package/components/forms/Select/Select.css +143 -0
  59. package/components/forms/TextInput/TextInput.css +266 -0
  60. package/components/forms/Textarea/Textarea.css +129 -0
  61. package/components/list/ListItem/ListItem.css +29 -0
  62. package/components/list/OrderedList/OrderedList.css +3 -0
  63. package/components/list/list-shared.css +10 -0
  64. package/components/recipes/FeaturePreviewLPs/FeaturePreviewLevelOne/FeaturePreviewLevelOne.css +204 -0
  65. package/components/recipes/FeaturePreviewLPs/FeaturePreviewLevelTwo/FeaturePreviewLevelTwo.css +57 -0
  66. package/components/recipes/FeaturePreviewLPs/FeaturePreviewLevelZero/FeaturePreviewLevelZero.css +3 -0
  67. package/components/recipes/SolutionTemplates/CategoryPage/CategoryPage.css +83 -0
  68. package/components/recipes/SolutionTemplates/SolutionPage/SolutionPage.css +119 -0
  69. package/components/recipes/SolutionTemplates/SolutionsOverview/SolutionsOverview.css +35 -0
  70. package/components/recipes/SolutionTemplates/parallax.css +165 -0
  71. package/components/recipes/seo/Article/Article.css +289 -0
  72. package/components/recipes/seo/Category/CategoryPage.css +43 -0
  73. package/components/river/RiverStoryScroll/RiverStoryScroll.css +470 -0
  74. package/components/river/river-shared.css +205 -0
  75. package/package.json +42 -0
@@ -0,0 +1,678 @@
1
+ .SubNav__container {
2
+ position: absolute;
3
+ width: 100%;
4
+ z-index: 2;
5
+ }
6
+
7
+ .SubNav__container--with-anchor-nav {
8
+ display: unset;
9
+ position: relative;
10
+ }
11
+
12
+ .SubNav {
13
+ width: 100%;
14
+ display: flex;
15
+ padding: var(--base-size-16);
16
+ z-index: 1;
17
+ }
18
+
19
+ [data-color-mode='dark'] .SubNav {
20
+ -webkit-font-smoothing: antialiased;
21
+ -moz-osx-font-smoothing: grayscale;
22
+ }
23
+
24
+ .SubNav__heading {
25
+ font-weight: var(--base-text-weight-semibold);
26
+ color: var(--brand-color-text-default);
27
+ font-family: var(--brand-heading-fontFamily);
28
+ text-decoration: none;
29
+ }
30
+
31
+ .SubNav__heading:hover {
32
+ color: var(--brand-color-text-muted);
33
+ text-decoration: none !important; /* dotcom override */
34
+ }
35
+
36
+ .SubNav--header-container-outer {
37
+ width: 100%;
38
+ }
39
+
40
+ .SubNav__heading-container {
41
+ position: relative;
42
+ z-index: 9998;
43
+ display: inline-block;
44
+ margin-inline-end: var(--base-size-16);
45
+ }
46
+
47
+ .SubNav--has-shadow {
48
+ box-shadow: var(--brand-SubNav-shadow);
49
+ background-color: var(--brand-color-canvas-default);
50
+ }
51
+
52
+ .SubNav--full-width {
53
+ padding-inline: 0;
54
+ }
55
+
56
+ .SubNav__action-container {
57
+ margin-left: auto;
58
+ }
59
+
60
+ .SubNav__sub-menu-icon {
61
+ display: none !important;
62
+ }
63
+
64
+ .SubNav__sub-menu-children {
65
+ display: contents;
66
+ }
67
+
68
+ .SubNav__links-overlay {
69
+ list-style: none;
70
+ margin: 0;
71
+ padding: 0;
72
+ }
73
+
74
+ .SubNav__links-overlay > span {
75
+ display: none;
76
+ }
77
+
78
+ .SubNav__sub-menu-toggle {
79
+ display: none;
80
+ }
81
+
82
+ .SubNav__heading-separator {
83
+ position: relative;
84
+ top: var(--base-size-2);
85
+ color: var(--brand-color-text-muted);
86
+ }
87
+
88
+ /*
89
+ * Anchor Nav Submenu
90
+ */
91
+
92
+ .SubNav__anchor-menu-outer-container {
93
+ position: sticky;
94
+ top: -1px;
95
+ z-index: 91; /* must be higher than subdomain nav bar */
96
+ }
97
+
98
+ .SubNav__anchor-menu-container {
99
+ opacity: 0;
100
+ background-color: transparent;
101
+ transform: translateY(var(--brand-animation-variant-slideInDown-distance));
102
+ transition: opacity var(--brand-animation-duration-default) var(--brand-animation-easing-default),
103
+ background-color var(--brand-animation-duration-default) var(--brand-animation-easing-default);
104
+ }
105
+
106
+ .SubNav__anchor-menu-outer-container--stuck .SubNav__anchor-menu-container {
107
+ transform: translateY(0);
108
+ opacity: 1;
109
+ background-color: var(--brand-color-canvas-default);
110
+ }
111
+
112
+ .SubNav__anchor-menu-outer-container {
113
+ height: 0;
114
+ transition: height var(--brand-animation-duration-default) var(--brand-animation-easing-default);
115
+ }
116
+
117
+ .SubNav__anchor-menu-outer-container--stuck {
118
+ height: auto;
119
+ }
120
+
121
+ .SubNav__sub-menu--anchor {
122
+ opacity: 0;
123
+ visibility: hidden;
124
+ transform: translateY(var(--brand-animation-variant-slideInDown-distance));
125
+ transition: opacity var(--brand-animation-duration-default) var(--brand-animation-easing-default),
126
+ height var(--brand-animation-duration-default) var(--brand-animation-easing-default),
127
+ transform var(--brand-animation-duration-default) var(--brand-animation-easing-default);
128
+ }
129
+
130
+ .SubNav__anchor-menu-outer-container--stuck .SubNav__sub-menu--anchor {
131
+ visibility: visible;
132
+ opacity: 1;
133
+ transform: translateY(0);
134
+ }
135
+
136
+ .SubNav__sub-menu--anchor {
137
+ display: flex;
138
+ padding-block-start: var(--base-size-12);
139
+ padding-block-end: var(--base-size-20);
140
+ }
141
+
142
+ .SubNav__sub-menu--anchor .SubNav__sub-menu-list {
143
+ display: inline-flex;
144
+ list-style-type: none;
145
+ margin: 0;
146
+ padding: 0;
147
+ gap: var(--base-size-20);
148
+ }
149
+
150
+ .SubNav__sub-menu--anchor .SubNav__link--is-in-view .SubNav__link-label {
151
+ color: var(--brand-color-text-default);
152
+ }
153
+
154
+ .SubNav__sub-menu--anchor .SubNav__link--is-in-view .SubNav__link-label::after,
155
+ .SubNav__link:hover .SubNav__link-label::after,
156
+ .SubNav__link:focus-visible .SubNav__link-label::after,
157
+ .SubNav__link[aria-current]:not([aria-current='false']) .SubNav__link-label::after {
158
+ opacity: 1;
159
+ transform: scale(0.8, 1);
160
+ }
161
+
162
+ .SubNav__sub-menu--anchor .SubNav__link--is-in-view .SubNav__link-label::after,
163
+ .SubNav__link:active .SubNav__link-label::after {
164
+ border-color: var(--brand-color-text-default);
165
+ transform: scale(0.9, 1);
166
+ }
167
+
168
+ .SubNav__link[data-active='true'] .SubNav__link-label::after,
169
+ .SubNav__sub-menu--anchor .SubNav__link--is-in-view .SubNav__link-label::after {
170
+ border-color: var(--brand-color-text-default);
171
+ opacity: 1;
172
+ }
173
+
174
+ .SubNav__link:focus-visible .SubNav__link-label::after,
175
+ .SubNav__sub-menu--anchor .SubNav__link--is-in-view:focus-visible .SubNav__link-label::after {
176
+ opacity: 0;
177
+ }
178
+
179
+ .SubNav__link:hover .SubNav__link-label::after,
180
+ .SubNav__link[aria-current]:not([aria-current='false']) * {
181
+ color: var(--brand-SubNav-color-link-active);
182
+ text-decoration: none !important; /* dotcom override */
183
+ }
184
+
185
+ .SubNav__link-label::after {
186
+ content: '';
187
+ position: absolute;
188
+ bottom: calc(var(--base-size-2) * -1);
189
+ left: 0;
190
+ width: 100%;
191
+ height: 2px;
192
+ border-width: 2px;
193
+ border-bottom: var(--base-size-2) solid var(--brand-color-text-muted);
194
+ transition: opacity var(--brand-animation-duration-fast), transform var(--brand-animation-duration-fast),
195
+ border-color var(--brand-animation-duration-fast);
196
+ opacity: 1;
197
+ transform: scale(0);
198
+ transform-origin: center;
199
+ }
200
+
201
+ .SubNav__link[aria-current]:not([aria-current='false']) .SubNav__link-label::after {
202
+ border-color: var(--brand-color-text-default);
203
+ }
204
+
205
+ .SubNav__link:hover .SubNav__link-label {
206
+ transition: color var(--brand-animation-duration-fast) var(--brand-animation-easing-default);
207
+ color: var(--brand-SubNav-color-link-active);
208
+ }
209
+
210
+ .SubNav__link:hover .SubNav__link-label::after {
211
+ border-color: var(--brand-color-text-default);
212
+ }
213
+
214
+ /*
215
+ * Narrow breakpoint
216
+ */
217
+
218
+ @media screen and (max-width: 63.24rem) {
219
+ .SubNav {
220
+ position: relative;
221
+ }
222
+
223
+ .SubNav::before {
224
+ content: '';
225
+ position: absolute;
226
+ top: 0;
227
+ left: 0;
228
+ bottom: 0;
229
+ right: 0;
230
+ opacity: 0;
231
+ z-index: 9997;
232
+ }
233
+
234
+ .SubNav::after {
235
+ content: '';
236
+ z-index: -1;
237
+ position: fixed;
238
+ background-color: var(--base-color-scale-black-0);
239
+ opacity: 0;
240
+ visibility: hidden;
241
+ top: 0;
242
+ right: 0;
243
+ left: 0;
244
+ bottom: 0;
245
+ width: 100%;
246
+ height: 100%;
247
+ }
248
+
249
+ .SubNav--open::after {
250
+ opacity: 0.3;
251
+ visibility: visible;
252
+ transition: visibility var(--brand-animation-duration-default) var(--brand-animation-easing-default),
253
+ opacity var(--brand-animation-duration-default) var(--brand-animation-easing-default);
254
+ }
255
+
256
+ .SubNav__heading {
257
+ font-size: var(--base-size-16);
258
+ line-height: var(--base-size-24);
259
+ }
260
+
261
+ .SubNav--open {
262
+ display: block;
263
+ }
264
+
265
+ .SubNav--open + .SubNav__anchor-menu-outer-container {
266
+ z-index: -1;
267
+ }
268
+
269
+ .SubNav--open::before {
270
+ background-color: var(--brand-color-canvas-default);
271
+ animation: fade-in 0.3s var(--brand-animation-easing-glide) forwards;
272
+ }
273
+
274
+ .SubNav__header-container {
275
+ display: flex;
276
+ width: 100%;
277
+ white-space: pre;
278
+ }
279
+
280
+ .SubNav__heading-separator {
281
+ margin-inline-end: var(--base-size-16);
282
+ z-index: 9998;
283
+ }
284
+
285
+ .SubNav__heading-separator:not(.SubNav__heading-separator--has-adjacent-label) {
286
+ display: none;
287
+ }
288
+
289
+ .SubNav__links-overlay {
290
+ position: relative;
291
+ display: flex;
292
+ flex: auto;
293
+ flex-direction: column;
294
+ justify-content: center;
295
+ z-index: 9998;
296
+ display: none;
297
+ }
298
+
299
+ .SubNav__links-overlay--open {
300
+ display: flex;
301
+ flex-direction: column;
302
+ gap: var(--base-size-8);
303
+ padding-block-start: var(--base-size-16);
304
+ padding-block-end: var(--base-size-16);
305
+ }
306
+
307
+ .SubNav__links-overlay--open .SubNav__link:hover .SubNav__link-label {
308
+ color: var(--brand-color-text-default);
309
+ }
310
+
311
+ .SubNav__links-overlay--open .SubNav__link--has-sub-menu:hover .SubNav__link-label {
312
+ color: var(--brand-color-text-muted);
313
+ }
314
+
315
+ .SubNav__overlay-toggle {
316
+ background-color: transparent;
317
+ border: none;
318
+ cursor: pointer;
319
+ display: flex;
320
+ position: relative;
321
+ width: 100%;
322
+ display: flex;
323
+ order: 1;
324
+ z-index: 9999;
325
+ padding-inline: 0;
326
+ justify-content: end;
327
+ }
328
+
329
+ .SubNav__overlay-toggle-content {
330
+ justify-content: space-between;
331
+ width: 100%;
332
+ }
333
+
334
+ .SubNav--full-width .SubNav__overlay-toggle {
335
+ right: 0;
336
+ }
337
+
338
+ .SubNav__link,
339
+ .SubNav__action-container {
340
+ display: none;
341
+ text-decoration: none;
342
+ }
343
+
344
+ .SubNav__links-overlay--open .SubNav__link-label {
345
+ position: relative;
346
+ }
347
+
348
+ .SubNav__links-overlay--open .SubNav__link[aria-current]:not([aria-current='false']) * {
349
+ color: var(--brand-SubNav-color-link-active);
350
+ }
351
+
352
+ .SubNav__links-overlay--open .SubNav__link,
353
+ .SubNav__links-overlay--open .SubNav__action-container {
354
+ display: block;
355
+ padding: var(--base-size-8) 0;
356
+ animation: fade-in 0.3s var(--brand-animation-easing-glide) forwards;
357
+ }
358
+
359
+ .SubNav__links-overlay--open .SubNav__link--has-sub-menu {
360
+ padding-block: 0;
361
+ }
362
+
363
+ .SubNav__links-overlay--open .SubNav__action-container {
364
+ width: 100%;
365
+ }
366
+
367
+ .SubNav__links-overlay--open .SubNav__action {
368
+ width: 100%;
369
+ }
370
+
371
+ .SubNav__sub-menu {
372
+ list-style: none;
373
+ padding: 0;
374
+ margin: 0;
375
+ padding-inline-start: var(--base-size-16);
376
+ }
377
+
378
+ .SubNav__sub-menu--dropdown .SubNav__link:hover .SubNav__link-label {
379
+ color: var(--brand-color-text-default) !important;
380
+ }
381
+
382
+ .SubNav__anchor-menu-container {
383
+ z-index: 99;
384
+ overflow-x: auto;
385
+ overflow-y: hidden;
386
+ width: 100%;
387
+ }
388
+
389
+ .SubNav__anchor-menu-outer-container {
390
+ position: sticky;
391
+ top: -1px;
392
+ }
393
+
394
+ .SubNav__anchor-menu-outer-container::after {
395
+ content: '';
396
+ position: absolute;
397
+ right: 0;
398
+ top: 0;
399
+ bottom: 0;
400
+ width: var(--base-size-32);
401
+ background: linear-gradient(to left, var(--brand-color-canvas-default), transparent);
402
+ pointer-events: none;
403
+ z-index: 100;
404
+ }
405
+
406
+ .SubNav__link-label {
407
+ font-size: var(--brand-text-size-200);
408
+ font-weight: var(--base-text-weight-semibold);
409
+ padding-block-end: var(--base-size-6);
410
+ }
411
+
412
+ .SubNav__sub-menu--anchor {
413
+ padding-inline: var(--base-size-16);
414
+ padding-block-end: var(--base-size-16);
415
+ padding-block-start: var(--base-size-16);
416
+ }
417
+
418
+ .SubNav__sub-menu--anchor .SubNav__link-label {
419
+ font-size: var(--brand-text-size-100);
420
+ line-height: var(--brand-text-lineHeight-100);
421
+ letter-spacing: var(--brand-text-letterSpacing-100);
422
+ }
423
+
424
+ .SubNav__sub-menu--anchor .SubNav__sub-menu-list {
425
+ padding-inline-end: var(--base-size-32);
426
+ }
427
+
428
+ .SubNav__sub-menu--anchor .SubNav__link {
429
+ display: block;
430
+ white-space: pre;
431
+ position: relative;
432
+ }
433
+
434
+ .SubNav .SubNav__link-label::after {
435
+ opacity: 0;
436
+ transform: scale(0);
437
+ bottom: 0;
438
+ }
439
+
440
+ .SubNav__link:hover .SubNav__link-label::after,
441
+ .SubNav__link:focus-visible .SubNav__link-label::after,
442
+ .SubNav__link[aria-current]:not([aria-current='false']) .SubNav__link-label::after {
443
+ opacity: 1;
444
+ transform: scale(1);
445
+ }
446
+ }
447
+
448
+ .SubNav__overlay-toggle-icon {
449
+ fill: var(--brand-color-text-default);
450
+ }
451
+
452
+ .SubNav__overlay-toggle-content {
453
+ display: flex;
454
+ align-items: center;
455
+ gap: var(--base-size-8);
456
+
457
+ /* optical alignment */
458
+ position: relative;
459
+ top: calc(var(--base-size-4) / 4 * -1);
460
+ }
461
+
462
+ .SubNav__overlay-toggle-content--end {
463
+ justify-content: flex-end;
464
+ }
465
+
466
+ @media screen and (min-width: 48rem) {
467
+ .SubNav {
468
+ padding: var(--base-size-16) var(--base-size-24);
469
+ }
470
+
471
+ .SubNav--full-width {
472
+ padding-inline: 0;
473
+ }
474
+
475
+ .SubNav__sub-menu--anchor {
476
+ padding-inline: var(--base-size-24);
477
+ }
478
+ }
479
+
480
+ .SubNav__heading-label {
481
+ white-space: pre;
482
+ }
483
+
484
+ /*
485
+ * Wide breakpoint
486
+ */
487
+
488
+ @media screen and (min-width: 63.25rem) {
489
+ .SubNav {
490
+ padding: var(--base-size-16) var(--base-size-32);
491
+ align-items: center;
492
+ display: flex;
493
+ z-index: 92;
494
+ }
495
+
496
+ .SubNav:has(+ .SubNav__anchor-menu-container) {
497
+ padding-block-end: 0;
498
+ }
499
+
500
+ .SubNav--full-width {
501
+ padding-inline: 0;
502
+ }
503
+
504
+ .SubNav__overlay-toggle {
505
+ display: none;
506
+ }
507
+
508
+ .SubNav__heading {
509
+ font-size: calc(var(--base-size-20) - 2px);
510
+ line-height: var(--base-size-24);
511
+ }
512
+
513
+ .SubNav__heading-separator {
514
+ margin-inline-end: var(--base-size-20);
515
+ }
516
+
517
+ .SubNav--header-container-outer {
518
+ display: flex;
519
+ align-items: center;
520
+ }
521
+
522
+ .SubNav__heading-container {
523
+ margin-inline-end: var(--base-size-20);
524
+ }
525
+
526
+ .SubNav__links-overlay {
527
+ align-items: center;
528
+ display: flex;
529
+ gap: var(--base-size-20);
530
+ z-index: 92;
531
+ flex-grow: 1;
532
+ }
533
+
534
+ .SubNav__link {
535
+ text-decoration: none !important; /* dotcom override */
536
+ transition: color 0.2s var(--brand-animation-easing-glide);
537
+ position: relative;
538
+ padding: var(--base-size-4) 0;
539
+ }
540
+
541
+ .SubNav__link-label {
542
+ font-size: var(--brand-text-size-100);
543
+ line-height: var(--brand-text-lineHeight-100);
544
+ }
545
+
546
+ .SubNav__link--has-sub-menu {
547
+ padding: var(--base-size-4) 0;
548
+ }
549
+
550
+ /* To fix hover distance between link and dropdown */
551
+ .SubNav__link--has-sub-menu::after {
552
+ content: '';
553
+ position: absolute;
554
+ bottom: calc(var(--base-size-12) * -1);
555
+ left: 0;
556
+ width: 100%;
557
+ height: var(--base-size-12);
558
+ background: transparent;
559
+ }
560
+
561
+ .SubNav__sub-menu.SubNav__sub-menu--dropdown {
562
+ background-clip: padding-box;
563
+ background-color: var(--brand-SubNav-color-subMenu-bgColor);
564
+ border: var(--borderWidth-thin, max(1px, 0.0625rem)) solid var(--borderColor-default, var(--color-border-default));
565
+ border-radius: var(--brand-borderRadius-xlarge, 0.375rem);
566
+ box-shadow: var(--shadow-floating-legacy, var(--color-shadow-large));
567
+ left: 0;
568
+ list-style: none;
569
+ margin-block-start: var(--base-size-8);
570
+ padding: var(--base-size-24);
571
+ padding-inline-end: var(--base-size-24);
572
+ position: absolute;
573
+ top: 100%;
574
+ z-index: 9998;
575
+ transition-timing-function: var(--brand-animation-easing-glide);
576
+ transition-duration: var(--brand-animation-duration-fast);
577
+ transition-property: opacity, transform;
578
+ left: calc(var(--base-size-4) / 4 * -16);
579
+ visibility: hidden;
580
+ opacity: 0;
581
+ transform: scale(0.99) translateY(-0.7em) translateX(-8px);
582
+ transform-origin: top;
583
+ display: flex;
584
+ flex-direction: column;
585
+ gap: var(--base-size-8);
586
+ width: var(--brand-SubNav-width-subMenu);
587
+ }
588
+
589
+ .SubNav__link--expanded .SubNav__sub-menu.SubNav__sub-menu--dropdown {
590
+ visibility: visible;
591
+ opacity: 1;
592
+ transform: scale(1) translateY(0) translateX(-8px);
593
+ box-shadow: var(--brand-SubNav-shadow);
594
+ }
595
+
596
+ .SubNav__sub-menu-toggle {
597
+ border: none;
598
+ padding: 0;
599
+ margin: 0;
600
+ background: none;
601
+ display: inline-flex;
602
+ align-items: center;
603
+ justify-content: center;
604
+ cursor: pointer;
605
+ }
606
+
607
+ .SubNav__sub-menu .SubNav__link {
608
+ display: block;
609
+ }
610
+
611
+ .SubNav__sub-menu--dropdown .SubNav__link:hover .SubNav__link-label {
612
+ color: var(--brand-color-text-default) !important;
613
+ }
614
+
615
+ .SubNav__sub-menu--dropdown .SubNav__link-label::after {
616
+ opacity: 1;
617
+ transform: scale(0);
618
+ }
619
+
620
+ .SubNav__link--has-sub-menu {
621
+ position: relative;
622
+ display: inline-flex;
623
+ align-items: center;
624
+ gap: var(--base-size-4);
625
+ cursor: pointer;
626
+ }
627
+
628
+ .SubNav__sub-menu--dropdown .SubNav__link-label {
629
+ position: relative;
630
+ padding: var(--base-size-4) 0;
631
+ }
632
+
633
+ /* Show underline on submenu parent when child has aria-current */
634
+ .SubNav__link--has-sub-menu:has(.SubNav__link[aria-current]:not([aria-current='false']))
635
+ > .SubNav__link
636
+ .SubNav__link-label::after {
637
+ opacity: 1;
638
+ transform: scale(0.8, 1);
639
+ }
640
+
641
+ .SubNav__link--has-sub-menu .SubNav__link[aria-current]:not([aria-current='false']) .SubNav__link-label::after,
642
+ .SubNav__link--has-sub-menu .SubNav__link:hover .SubNav__link-label::after {
643
+ opacity: 1;
644
+ transform: scale(1);
645
+ }
646
+
647
+ .SubNav__sub-menu-icon {
648
+ display: inline-block !important;
649
+ fill: var(--brand-color-text-muted);
650
+ transition: transform var(--brand-animation-duration-fast);
651
+ }
652
+
653
+ .SubNav__link--has-sub-menu:hover .SubNav__sub-menu-icon {
654
+ transform: translateY(2px);
655
+ }
656
+
657
+ .SubNav__sub-menu--anchor {
658
+ padding-inline: var(--base-size-32);
659
+ }
660
+ }
661
+
662
+ @keyframes fade-in {
663
+ 0% {
664
+ opacity: 0;
665
+ }
666
+ 100% {
667
+ opacity: 1;
668
+ }
669
+ }
670
+
671
+ @keyframes fade-in-down {
672
+ 0% {
673
+ opacity: 0;
674
+ }
675
+ 100% {
676
+ opacity: 1;
677
+ }
678
+ }