@gsa-tts/graymatter-ui 0.0.1 → 0.1.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 (32) hide show
  1. package/assets/images/chat-hero-image.png +0 -0
  2. package/assets/images/console-hero-image.png +0 -0
  3. package/index.ts +2 -0
  4. package/package.json +9 -6
  5. package/src/components/DesktopHeader.svelte +89 -0
  6. package/src/components/DesktopSideNav.svelte +375 -0
  7. package/src/components/GoogleTagManager.astro +16 -0
  8. package/src/components/Logo.svelte +8 -7
  9. package/src/components/MobileBottomNav.svelte +99 -0
  10. package/src/components/MobileSideMenu.svelte +170 -0
  11. package/src/components/MobileTopNav.svelte +101 -0
  12. package/src/components/NavigationInitializer.svelte +19 -0
  13. package/src/components/icons/ApiIcon.svelte +49 -0
  14. package/src/components/icons/ChatIcon.svelte +27 -0
  15. package/src/components/icons/CloseIcon.svelte +18 -0
  16. package/src/components/icons/ConsoleIcon.svelte +25 -0
  17. package/src/components/icons/DiscoverIcon.svelte +30 -0
  18. package/src/components/icons/MenuIcon.svelte +38 -0
  19. package/src/components/icons/index.ts +6 -0
  20. package/src/components/index.ts +9 -0
  21. package/src/layouts/AppLayout.astro +1 -1
  22. package/src/layouts/BaseLayout.astro +4 -1
  23. package/src/layouts/GlobalAppLayout.astro +585 -0
  24. package/src/stores/navigationStore.ts +153 -0
  25. package/src/stores/subNavReadyStore.ts +3 -0
  26. package/src/styles/base/global.css +8 -1
  27. package/src/styles/base/typography.css +15 -14
  28. package/src/styles/components/globalAppLayout.css +76 -0
  29. package/src/styles/components/globalAppNav.css +548 -0
  30. package/src/styles/components/heroCards.css +21 -1
  31. package/assets/images/gsai-logo-black.svg +0 -18
  32. package/assets/images/gsai-logo-white.svg +0 -18
@@ -0,0 +1,548 @@
1
+ /* Visually hidden utility for accessibility */
2
+ .sr-only {
3
+ position: absolute;
4
+ width: 1px;
5
+ height: 1px;
6
+ padding: 0;
7
+ margin: -1px;
8
+ overflow: hidden;
9
+ clip: rect(0, 0, 0, 0);
10
+ border: 0;
11
+ white-space: nowrap;
12
+ }
13
+ /* =====================
14
+ Shared/Utility Styles
15
+ ===================== */
16
+ .user-profile-container,
17
+ .user-profile-icon {
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ }
22
+
23
+ .menu-button,
24
+ .profile-button {
25
+ display: flex;
26
+ align-items: center;
27
+ justify-content: center;
28
+ border: none;
29
+ background: none;
30
+ cursor: pointer;
31
+ border-radius: var(--ai-size-8);
32
+ transition: background-color 0.2s ease;
33
+ }
34
+
35
+ .menu-button:disabled,
36
+ .menu-button.disabled {
37
+ cursor: not-allowed;
38
+ opacity: 0.5;
39
+ background-color: transparent;
40
+ }
41
+
42
+ /* Shared user profile styles */
43
+ .user-profile-icon {
44
+ border-radius: var(--ai-size-6);
45
+ background: var(--ai-color-steel-700);
46
+ }
47
+
48
+ .user-initials {
49
+ color: var(--ai-color-white);
50
+ text-align: center;
51
+ font-weight: 400;
52
+ line-height: 1.3;
53
+ }
54
+
55
+ /* DesktopHeader styles */
56
+ .global-header {
57
+ display: none;
58
+ }
59
+ .header-content {
60
+ display: flex;
61
+ align-items: center;
62
+ gap: var(--ai-size-16);
63
+ align-self: stretch;
64
+ }
65
+ .header-text {
66
+ color: var(--ai-color-black);
67
+ font-size: var(--ai-size-16);
68
+ font-weight: 400;
69
+ line-height: 1.3;
70
+ }
71
+ /* MobileTopNav styles */
72
+ .mobile-top-nav {
73
+ position: sticky;
74
+ top: 0;
75
+ left: 0;
76
+ right: 0;
77
+ display: flex;
78
+ align-items: center;
79
+ justify-content: space-between;
80
+ height: var(--ai-size-56);
81
+ padding: 0 var(--ai-size-16);
82
+ padding-top: env(safe-area-inset-top);
83
+ background: var(--ai-color-white);
84
+ border-bottom: 0.0625rem solid var(--ai-color-neutral-200);
85
+ z-index: 100;
86
+ }
87
+ /* MobileTopNav specific menu button */
88
+ .mobile-top-nav .menu-button {
89
+ width: var(--ai-size-40);
90
+ height: var(--ai-size-40);
91
+ color: var(--ai-color-neutral-700);
92
+ }
93
+ .menu-button:hover {
94
+ background-color: var(--ai-color-neutral-100);
95
+ }
96
+ /* MobileTopNav specific disabled state */
97
+ .mobile-top-nav .menu-button.disabled,
98
+ .mobile-top-nav .menu-button:disabled {
99
+ cursor: not-allowed;
100
+ opacity: 0.5;
101
+ background-color: transparent;
102
+ }
103
+ .brand {
104
+ display: flex;
105
+ align-items: center;
106
+ gap: var(--ai-size-12);
107
+ flex: 1;
108
+ margin-left: var(--ai-size-8);
109
+ }
110
+ .brand-text {
111
+ color: var(--ai-color-neutral-900);
112
+ font-size: var(--ai-size-16);
113
+ font-weight: 600;
114
+ line-height: 1;
115
+ }
116
+ .profile-button {
117
+ width: var(--ai-size-40);
118
+ height: var(--ai-size-40);
119
+ }
120
+ .profile-button:hover {
121
+ background-color: var(--ai-color-neutral-100);
122
+ }
123
+ /* MobileTopNav specific user profile */
124
+ .mobile-top-nav .user-profile-icon {
125
+ width: var(--ai-size-32);
126
+ height: var(--ai-size-32);
127
+ border-radius: 0.3125rem;
128
+ }
129
+ .mobile-top-nav .user-initials {
130
+ font-size: var(--ai-size-14);
131
+ line-height: 1;
132
+ }
133
+
134
+ /* DesktopSideNav styles */
135
+ .side-nav-container {
136
+ display: none;
137
+ }
138
+ .side-nav-container.expanded {
139
+ width: 16.875rem;
140
+ }
141
+ .expanded-content {
142
+ display: flex;
143
+ width: 12.5rem;
144
+ opacity: 1;
145
+ flex: none;
146
+ height: 100%;
147
+ background: var(--ai-color-steel-100);
148
+ border-right: 0.0625rem solid var(--ai-color-steel-100);
149
+ overflow: hidden;
150
+ flex-direction: column;
151
+ }
152
+ .side-nav-container.expanded .expanded-content {
153
+ width: 12.5rem;
154
+ opacity: 1;
155
+ overflow-y: auto;
156
+ }
157
+ .side-nav-container:not(.expanded) .expanded-content {
158
+ width: 0;
159
+ opacity: 0;
160
+ }
161
+ .logo-container {
162
+ display: flex;
163
+ height: var(--ai-size-56);
164
+ flex-direction: column;
165
+ justify-content: center;
166
+ align-items: flex-start;
167
+ }
168
+ .logo-wrapper {
169
+ display: flex;
170
+ width: var(--ai-size-80);
171
+ height: var(--ai-size-30);
172
+ align-items: center;
173
+ gap: var(--ai-size-32);
174
+ flex-shrink: 0;
175
+ aspect-ratio: 27/10;
176
+ }
177
+ .logo-inner {
178
+ display: flex;
179
+ align-items: center;
180
+ gap: var(--ai-size-16);
181
+ }
182
+ .logo-component {
183
+ height: var(--ai-size-22);
184
+ }
185
+ .nav-content {
186
+ display: flex;
187
+ width: var(--ai-size-72);
188
+ height: 100%;
189
+ padding-bottom: var(--ai-size-16);
190
+ flex-direction: column;
191
+ align-items: flex-start;
192
+ gap: var(--ai-size-4);
193
+ flex: none;
194
+ background: var(--ai-color-steel-200);
195
+ border-right: 0.0625rem solid var(--ai-color-steel-200);
196
+ }
197
+ .nav-main {
198
+ display: flex;
199
+ flex-direction: column;
200
+ align-items: flex-start;
201
+ gap: var(--ai-size-4);
202
+ flex: 1 0 0;
203
+ align-self: stretch;
204
+ }
205
+ .nav-footer {
206
+ display: flex;
207
+ padding: var(--ai-size-8) var(--ai-size-4);
208
+ flex-direction: column;
209
+ justify-content: center;
210
+ align-items: center;
211
+ gap: var(--ai-size-4);
212
+ align-self: stretch;
213
+ margin-top: auto;
214
+ }
215
+ .user-profile-button {
216
+ background: none;
217
+ border: none;
218
+ padding: 0;
219
+ cursor: pointer;
220
+ display: flex;
221
+ justify-content: center;
222
+ align-items: center;
223
+ }
224
+ .user-profile-button:focus {
225
+ outline: var(--ai-size-2) solid var(--ai-color-blue-600);
226
+ outline-offset: var(--ai-size-2);
227
+ border-radius: var(--ai-size-4);
228
+ }
229
+ /* DesktopSideNav specific user profile */
230
+ .user-profile-container {
231
+ width: var(--ai-size-40);
232
+ height: var(--ai-size-40);
233
+ aspect-ratio: 1/1;
234
+ }
235
+ .user-profile-icon {
236
+ padding: 0.5556rem 0.4931rem 0.5694rem 0.3819rem;
237
+ }
238
+ .user-initials {
239
+ font-size: var(--ai-size-16);
240
+ font-style: normal;
241
+ }
242
+ .menu-section {
243
+ display: flex;
244
+ padding: var(--ai-size-4);
245
+ justify-content: center;
246
+ align-items: center;
247
+ align-self: stretch;
248
+ }
249
+ /* DesktopSideNav specific menu button */
250
+ .menu-button {
251
+ display: flex;
252
+ padding: var(--ai-size-4);
253
+ justify-content: center;
254
+ align-items: center;
255
+ background: none;
256
+ border: none;
257
+ cursor: pointer;
258
+ opacity: 1;
259
+ transition: opacity 0.2s ease;
260
+ will-change: opacity;
261
+ }
262
+ .menu-button.disabled {
263
+ cursor: not-allowed;
264
+ opacity: 0.5;
265
+ will-change: opacity;
266
+ }
267
+ .menu-button:focus,
268
+ .nav-item:focus {
269
+ outline: none;
270
+ }
271
+ .menu-button:focus .icon-container,
272
+ .nav-item:focus .icon-container {
273
+ outline: var(--ai-size-2) solid var(--ai-color-blue-600);
274
+ outline-offset: var(--ai-size-2);
275
+ border-radius: var(--ai-size-4);
276
+ }
277
+ .nav-items {
278
+ display: flex;
279
+ width: var(--ai-size-72);
280
+ flex-direction: column;
281
+ align-items: flex-start;
282
+ gap: var(--ai-size-4);
283
+ }
284
+ .nav-item {
285
+ display: flex;
286
+ height: 4.125rem;
287
+ padding: var(--ai-size-4);
288
+ flex-direction: column;
289
+ justify-content: center;
290
+ align-items: center;
291
+ gap: var(--ai-size-2);
292
+ align-self: stretch;
293
+ cursor: pointer;
294
+ text-decoration: none;
295
+ color: inherit;
296
+ position: relative;
297
+ flex-shrink: 0;
298
+ }
299
+ .icon-container {
300
+ display: flex;
301
+ width: var(--ai-size-40);
302
+ height: var(--ai-size-40);
303
+ padding: var(--ai-size-8);
304
+ justify-content: center;
305
+ align-items: center;
306
+ flex-shrink: 0;
307
+ position: relative;
308
+ contain: layout style;
309
+ transition:
310
+ background-color 0.3s ease,
311
+ border-radius 0.3s ease;
312
+ }
313
+ .icon-wrapper {
314
+ display: flex;
315
+ width: var(--ai-size-28);
316
+ height: var(--ai-size-28);
317
+ justify-content: center;
318
+ align-items: center;
319
+ flex-shrink: 0;
320
+ aspect-ratio: 1/1;
321
+ position: relative;
322
+ overflow: hidden;
323
+ transition: transform 0.3s ease;
324
+ }
325
+ .icon-wrapper :global(svg) {
326
+ width: var(--ai-size-24);
327
+ height: var(--ai-size-24);
328
+ flex-shrink: 0;
329
+ position: absolute;
330
+ top: 50%;
331
+ left: 50%;
332
+ transform: translate(-50%, -50%);
333
+ transition: all 0.3s ease;
334
+ }
335
+ .icon-wrapper :global(svg path) {
336
+ stroke-width: 1.5;
337
+ vector-effect: non-scaling-stroke;
338
+ transition:
339
+ stroke 0.3s ease,
340
+ fill 0.3s ease,
341
+ stroke-width 0.3s ease;
342
+ }
343
+ .nav-text {
344
+ font-size: var(--ai-size-12);
345
+ text-align: center;
346
+ color: var(--ai-color-neutral-900);
347
+ line-height: 1.3;
348
+ }
349
+ .menu-button.disabled:hover .icon-container,
350
+ .menu-button:disabled:hover .icon-container {
351
+ background: none !important;
352
+ border-radius: var(--ai-size-4);
353
+ }
354
+ .nav-item.hovered .icon-container,
355
+ .nav-item:active .icon-container,
356
+ .nav-item.selected .icon-container,
357
+ .nav-item.selected.hovered .icon-container,
358
+ .menu-button:hover .icon-container,
359
+ .menu-button:active .icon-container {
360
+ background-color: var(--ai-color-steel-300);
361
+ border-radius: var(--ai-size-4);
362
+ }
363
+
364
+ /* MobileBottomNav styles */
365
+ .mobile-bottom-nav {
366
+ display: flex;
367
+ position: fixed;
368
+ bottom: 0;
369
+ left: 0;
370
+ right: 0;
371
+ background: var(--ai-color-white);
372
+ border-top: 0.0625rem solid var(--ai-neutral-200);
373
+ height: 3.125rem;
374
+ padding-bottom: env(safe-area-inset-bottom);
375
+ z-index: 100;
376
+ }
377
+ .nav-item {
378
+ flex: 1;
379
+ display: flex;
380
+ flex-direction: column;
381
+ align-items: center;
382
+ justify-content: center;
383
+ padding: var(--ai-size-4);
384
+ text-decoration: none;
385
+ color: var(--ai-color-neutral-600);
386
+ transition: color 0.2s ease;
387
+ height: 100%;
388
+ }
389
+ .nav-item.active {
390
+ color: var(--ai-color-neutral-900);
391
+ }
392
+ .nav-item.active .icon {
393
+ background-color: var(--ai-color-neutral-200);
394
+ border-radius: var(--ai-size-8);
395
+ }
396
+ .nav-item:hover {
397
+ color: var(--ai-color-neutral-700);
398
+ }
399
+ .icon {
400
+ width: var(--ai-size-24);
401
+ height: var(--ai-size-24);
402
+ margin-bottom: var(--ai-size-2);
403
+ display: flex;
404
+ align-items: center;
405
+ justify-content: center;
406
+ padding: var(--ai-size-2);
407
+ transition: background-color 0.2s ease;
408
+ }
409
+ .label {
410
+ font-size: 0.6875rem; /* 11px */
411
+ font-weight: 500;
412
+ line-height: 1;
413
+ text-align: center;
414
+ }
415
+
416
+ /* MobileSideMenu styles */
417
+ .mobile-overlay {
418
+ display: block;
419
+ position: fixed;
420
+ top: 0;
421
+ left: 0;
422
+ right: 0;
423
+ bottom: 0;
424
+ background: #00000080;
425
+ z-index: 200;
426
+ }
427
+ .mobile-side-menu {
428
+ display: flex;
429
+ position: fixed;
430
+ top: 0;
431
+ left: 0;
432
+ bottom: 0;
433
+ width: 15rem;
434
+ max-width: 85vw;
435
+ background: var(--ai-color-white);
436
+ transform: translateX(-100%);
437
+ transition: transform 0.3s ease;
438
+ z-index: 210;
439
+ flex-direction: column;
440
+ box-shadow: var(--ai-size-2) 0 var(--ai-size-10) #0000001a;
441
+ }
442
+ .mobile-side-menu.open {
443
+ transform: translateX(0);
444
+ }
445
+ .menu-header {
446
+ display: flex;
447
+ align-items: center;
448
+ justify-content: space-between;
449
+ padding: var(--ai-size-16) var(--ai-size-20);
450
+ border-bottom: 0.0625rem solid var(--ai-color-neutral-200);
451
+ }
452
+ /* MobileSideMenu specific logo container */
453
+ .mobile-side-menu .logo-container {
454
+ display: flex;
455
+ }
456
+ .close-button {
457
+ display: flex;
458
+ align-items: center;
459
+ justify-content: center;
460
+ width: var(--ai-size-32);
461
+ height: var(--ai-size-32);
462
+ border: none;
463
+ background: none;
464
+ color: var(--ai-color-neutral-700);
465
+ cursor: pointer;
466
+ border-radius: var(--ai-size-6);
467
+ transition: background-color 0.2s ease;
468
+ }
469
+ .close-button:hover {
470
+ background-color: var(--ai-color-neutral-100);
471
+ }
472
+ .menu-content {
473
+ flex: 1;
474
+ overflow-y: auto;
475
+ padding: 0;
476
+ }
477
+ .main-nav-section {
478
+ border-bottom: 0.0625rem solid var(--ai-color-neutral-200);
479
+ padding: var(--ai-size-16) 0;
480
+ }
481
+ .main-nav-item {
482
+ display: flex;
483
+ align-items: center;
484
+ gap: var(--ai-size-16);
485
+ padding: var(--ai-size-12) var(--ai-size-20);
486
+ text-decoration: none;
487
+ color: var(--ai-color-neutral-700);
488
+ transition:
489
+ background-color 0.2s ease,
490
+ color 0.2s ease;
491
+ border: none;
492
+ background: none;
493
+ width: 100%;
494
+ text-align: left;
495
+ }
496
+ .main-nav-item:hover {
497
+ background-color: var(--ai-color-neutral-50);
498
+ color: var(--ai-color-neutral-900);
499
+ }
500
+ .main-nav-item.active {
501
+ background-color: var(--ai-color-primary-50);
502
+ color: var(--ai-color-primary-700);
503
+ }
504
+ .nav-icon {
505
+ width: var(--ai-size-24);
506
+ height: var(--ai-size-24);
507
+ flex-shrink: 0;
508
+ }
509
+ .nav-label {
510
+ font-size: var(--ai-size-16);
511
+ font-weight: 500;
512
+ line-height: 1.5;
513
+ }
514
+ .subnav-section {
515
+ padding: var(--ai-size-16) 0;
516
+ overflow-y: auto;
517
+ max-height: calc(100vh - 4rem); /* leave space for header/close */
518
+ }
519
+
520
+ @media (--ai-size-breakpoint-tablet) {
521
+ .global-header {
522
+ position: absolute;
523
+ top: 0;
524
+ left: 0;
525
+ right: 0;
526
+ display: flex;
527
+ width: 100%;
528
+ height: var(--ai-size-56);
529
+ padding: var(--ai-size-12) var(--ai-size-16);
530
+ flex-direction: column;
531
+ justify-content: center;
532
+ align-items: flex-start;
533
+ background: var(--ai-color-white);
534
+ z-index: 10;
535
+ }
536
+ .mobile-top-nav {
537
+ display: none;
538
+ }
539
+ .mobile-bottom-nav {
540
+ display: none;
541
+ }
542
+ .mobile-overlay {
543
+ display: none;
544
+ }
545
+ .mobile-side-menu {
546
+ display: none;
547
+ }
548
+ }
@@ -26,6 +26,8 @@
26
26
  }
27
27
 
28
28
  .ai-hero-card__row {
29
+ display: flex;
30
+ flex-direction: column;
29
31
  justify-content: center;
30
32
  }
31
33
 
@@ -39,11 +41,14 @@
39
41
  }
40
42
 
41
43
  .ai-hero-card-image {
44
+ display: block;
45
+ width: 100%;
42
46
  height: auto;
43
47
  }
44
48
 
45
49
  @media (--ai-size-breakpoint-desktop) {
46
50
  .ai-hero-card__row {
51
+ flex-direction: row;
47
52
  align-items: flex-end;
48
53
  justify-content: flex-start;
49
54
  flex-wrap: nowrap;
@@ -55,6 +60,21 @@
55
60
  }
56
61
 
57
62
  .ai-hero-card__image-container {
58
- margin-left: auto;
63
+ order: 2;
64
+ margin-bottom: 0;
65
+ }
66
+
67
+ .ai-hero-card__title {
68
+ font-size: var(--ai-size-24);
69
+ }
70
+
71
+ .ai-hero-card__content {
72
+ order: 1;
73
+ }
74
+ }
75
+
76
+ @media (--ai-size-breakpoint-desktop-lg) {
77
+ .ai-hero-card__title {
78
+ font-size: var(--ai-size-32);
59
79
  }
60
80
  }
@@ -1,18 +0,0 @@
1
- <svg width="105" height="33" viewBox="0 0 105 33" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_2282_6725)">
3
- <mask id="mask0_2282_6725" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="105" height="33">
4
- <path d="M104.81 0H0V32.8249H104.81V0Z" fill="white"/>
5
- </mask>
6
- <g mask="url(#mask0_2282_6725)">
7
- <path d="M13.4937 19.864H26.5932C25.3427 24.7736 21.4655 27.9119 16.5655 27.9119C10.167 27.9119 4.96116 22.7532 4.96116 16.4125C4.96116 10.0717 10.1636 4.91296 16.5621 4.91296C20.1777 4.91296 23.5248 6.53939 25.7437 9.37806L27.2626 11.321L31.184 8.31061L29.665 6.36765C26.4981 2.3201 21.7238 0 16.5621 0C7.43155 0 0 7.36102 0 16.4125C0 25.4639 7.43155 32.8249 16.5621 32.8249C24.9553 32.8249 31.4218 26.4 31.9383 17.5506L32.0913 14.951H13.4937V19.864Z" fill="black"/>
8
- <path d="M52.9238 13.9544H44.0379C41.6559 13.9544 39.7156 12.035 39.7156 9.67113C39.7156 7.30725 41.6559 5.38786 44.0379 5.38786H61.0282V0.478271H44.0379C38.9204 0.478271 34.7578 4.60327 34.7578 9.6745C34.7578 14.7457 38.9204 18.8707 44.0379 18.8707H52.9238C55.3059 18.8707 57.2462 20.7901 57.2462 23.154C57.2462 25.5179 55.3059 27.4373 52.9238 27.4373H35.4V32.3502H52.9238C58.0413 32.3502 62.2039 28.2252 62.2039 23.154C62.2039 18.0828 58.0413 13.9578 52.9238 13.9578V13.9544Z" fill="black"/>
9
- <path d="M104.809 0.478271H99.8516V32.3468H104.809V0.478271Z" fill="black"/>
10
- <path d="M76.2292 0.478271L62.7559 32.3536H68.1316L79.5287 5.39123H79.9874L91.3811 32.3536H96.7568L83.2835 0.478271H76.2292Z" fill="black"/>
11
- </g>
12
- </g>
13
- <defs>
14
- <clipPath id="clip0_2282_6725">
15
- <rect width="105" height="33" fill="white"/>
16
- </clipPath>
17
- </defs>
18
- </svg>
@@ -1,18 +0,0 @@
1
- <svg width="105" height="33" viewBox="0 0 105 33" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_2282_6734)">
3
- <mask id="mask0_2282_6734" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="105" height="33">
4
- <path d="M104.81 0H0V32.8249H104.81V0Z" fill="white"/>
5
- </mask>
6
- <g mask="url(#mask0_2282_6734)">
7
- <path d="M13.4937 19.864H26.5932C25.3427 24.7736 21.4655 27.9119 16.5655 27.9119C10.167 27.9119 4.96116 22.7532 4.96116 16.4125C4.96116 10.0717 10.1636 4.91296 16.5621 4.91296C20.1777 4.91296 23.5248 6.53939 25.7437 9.37806L27.2626 11.321L31.184 8.31061L29.665 6.36765C26.4981 2.3201 21.7238 0 16.5621 0C7.43155 0 0 7.36102 0 16.4125C0 25.4639 7.43155 32.8249 16.5621 32.8249C24.9553 32.8249 31.4218 26.4 31.9383 17.5506L32.0913 14.951H13.4937V19.864Z" fill="white"/>
8
- <path d="M52.9238 13.9544H44.0379C41.6559 13.9544 39.7156 12.035 39.7156 9.67113C39.7156 7.30725 41.6559 5.38786 44.0379 5.38786H61.0282V0.478271H44.0379C38.9204 0.478271 34.7578 4.60327 34.7578 9.6745C34.7578 14.7457 38.9204 18.8707 44.0379 18.8707H52.9238C55.3059 18.8707 57.2462 20.7901 57.2462 23.154C57.2462 25.5179 55.3059 27.4373 52.9238 27.4373H35.4V32.3502H52.9238C58.0413 32.3502 62.2039 28.2252 62.2039 23.154C62.2039 18.0828 58.0413 13.9578 52.9238 13.9578V13.9544Z" fill="white"/>
9
- <path d="M104.809 0.478271H99.8516V32.3468H104.809V0.478271Z" fill="white"/>
10
- <path d="M76.2292 0.478271L62.7559 32.3536H68.1316L79.5287 5.39123H79.9874L91.3811 32.3536H96.7568L83.2835 0.478271H76.2292Z" fill="white"/>
11
- </g>
12
- </g>
13
- <defs>
14
- <clipPath id="clip0_2282_6734">
15
- <rect width="105" height="33" fill="white"/>
16
- </clipPath>
17
- </defs>
18
- </svg>