ably-ui 4.2.0.dev.1a5533f

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +8 -0
  3. data/Gemfile.lock +34 -0
  4. data/LICENSE +13 -0
  5. data/README.md +419 -0
  6. data/ably-ui.gemspec +22 -0
  7. data/lib/ably_ui/core/code/code.html.erb +3 -0
  8. data/lib/ably_ui/core/code/code.rb +11 -0
  9. data/lib/ably_ui/core/code/component.css +70 -0
  10. data/lib/ably_ui/core/code/component.js +1 -0
  11. data/lib/ably_ui/core/connect_state_wrapper/component.js +1 -0
  12. data/lib/ably_ui/core/contact_footer/component.css +12 -0
  13. data/lib/ably_ui/core/contact_footer/component.js +1 -0
  14. data/lib/ably_ui/core/contact_footer/contact_footer.html.erb +32 -0
  15. data/lib/ably_ui/core/contact_footer/contact_footer.rb +13 -0
  16. data/lib/ably_ui/core/cookie_message/component.css +14 -0
  17. data/lib/ably_ui/core/cookie_message/component.js +1 -0
  18. data/lib/ably_ui/core/core.rb +65 -0
  19. data/lib/ably_ui/core/feature_footer/component.css +13 -0
  20. data/lib/ably_ui/core/feature_footer/component.js +1 -0
  21. data/lib/ably_ui/core/feature_footer/feature_footer.html.erb +54 -0
  22. data/lib/ably_ui/core/feature_footer/feature_footer.rb +30 -0
  23. data/lib/ably_ui/core/featured_link/component.css +17 -0
  24. data/lib/ably_ui/core/featured_link/component.js +1 -0
  25. data/lib/ably_ui/core/featured_link/featured_link.html.erb +6 -0
  26. data/lib/ably_ui/core/featured_link/featured_link.rb +17 -0
  27. data/lib/ably_ui/core/flash/component.css +30 -0
  28. data/lib/ably_ui/core/flash/component.js +1 -0
  29. data/lib/ably_ui/core/fonts/NEXT-Book-Light-Italic.eot +0 -0
  30. data/lib/ably_ui/core/fonts/NEXT-Book-Light-Italic.otf +0 -0
  31. data/lib/ably_ui/core/fonts/NEXT-Book-Light-Italic.woff +0 -0
  32. data/lib/ably_ui/core/fonts/NEXT-Book-Light-Italic.woff2 +0 -0
  33. data/lib/ably_ui/core/fonts/NEXT-Book-Light.eot +0 -0
  34. data/lib/ably_ui/core/fonts/NEXT-Book-Light.otf +0 -0
  35. data/lib/ably_ui/core/fonts/NEXT-Book-Light.woff +0 -0
  36. data/lib/ably_ui/core/fonts/NEXT-Book-Light.woff2 +0 -0
  37. data/lib/ably_ui/core/fonts/NEXT-Book-Medium-Italic.eot +0 -0
  38. data/lib/ably_ui/core/fonts/NEXT-Book-Medium-Italic.otf +0 -0
  39. data/lib/ably_ui/core/fonts/NEXT-Book-Medium-Italic.woff +0 -0
  40. data/lib/ably_ui/core/fonts/NEXT-Book-Medium-Italic.woff2 +0 -0
  41. data/lib/ably_ui/core/fonts/NEXT-Book-Medium.eot +0 -0
  42. data/lib/ably_ui/core/fonts/NEXT-Book-Medium.otf +0 -0
  43. data/lib/ably_ui/core/fonts/NEXT-Book-Medium.woff +0 -0
  44. data/lib/ably_ui/core/fonts/NEXT-Book-Medium.woff2 +0 -0
  45. data/lib/ably_ui/core/fonts/next.css +59 -0
  46. data/lib/ably_ui/core/footer/component.css +14 -0
  47. data/lib/ably_ui/core/footer/component.js +1 -0
  48. data/lib/ably_ui/core/footer/footer.html.erb +190 -0
  49. data/lib/ably_ui/core/footer/footer.rb +14 -0
  50. data/lib/ably_ui/core/icon/component.css +1 -0
  51. data/lib/ably_ui/core/icon/component.js +1 -0
  52. data/lib/ably_ui/core/icon/icon.html.erb +3 -0
  53. data/lib/ably_ui/core/icon/icon.rb +25 -0
  54. data/lib/ably_ui/core/images/ably-logo.svg +15 -0
  55. data/lib/ably_ui/core/images/ably-stack.svg +14 -0
  56. data/lib/ably_ui/core/images/blog-thumb1.jpg +0 -0
  57. data/lib/ably_ui/core/images/blog-thumb2.jpg +0 -0
  58. data/lib/ably_ui/core/images/blog-thumb3.jpg +0 -0
  59. data/lib/ably_ui/core/images/cust-logo-ao-col-pos.png +0 -0
  60. data/lib/ably_ui/core/images/cust-logo-ao-col-pos@2x.png +0 -0
  61. data/lib/ably_ui/core/images/cust-logo-ausopen-col-pos.png +0 -0
  62. data/lib/ably_ui/core/images/cust-logo-ausopen-col-pos@2x.png +0 -0
  63. data/lib/ably_ui/core/images/cust-logo-hubspot-col-pos.png +0 -0
  64. data/lib/ably_ui/core/images/cust-logo-hubspot-col-pos@2x.png +0 -0
  65. data/lib/ably_ui/core/images/cust-logo-lightspeed-col-pos.png +0 -0
  66. data/lib/ably_ui/core/images/cust-logo-lightspeed-col-pos@2x.png +0 -0
  67. data/lib/ably_ui/core/images/cust-logo-lightspeed-syst-col-pos.png +0 -0
  68. data/lib/ably_ui/core/images/cust-logo-lightspeed-syst-col-pos@2x.png +0 -0
  69. data/lib/ably_ui/core/images/cust-logo-split-col-pos.png +0 -0
  70. data/lib/ably_ui/core/images/cust-logo-split-col-pos@2x.png +0 -0
  71. data/lib/ably_ui/core/images/cust-logo-vitac-col-pos.png +0 -0
  72. data/lib/ably_ui/core/images/cust-logo-vitac-col-pos@2x.png +0 -0
  73. data/lib/ably_ui/core/images/cust-photo-hubspot-max-freiert.jpg +0 -0
  74. data/lib/ably_ui/core/images/cust-photo-split-pato-echague.jpg +0 -0
  75. data/lib/ably_ui/core/images/cust-photo-vitac-joe-antonio.jpg +0 -0
  76. data/lib/ably_ui/core/images/flexible-companies.png +0 -0
  77. data/lib/ably_ui/core/images/rocket-list-2021.png +0 -0
  78. data/lib/ably_ui/core/images/scale-motif-open-empathetic.svg +1 -0
  79. data/lib/ably_ui/core/images/technical-support-01-800x533.jpg +0 -0
  80. data/lib/ably_ui/core/logo/component.js +1 -0
  81. data/lib/ably_ui/core/logo/logo.html.erb +28 -0
  82. data/lib/ably_ui/core/logo/logo.rb +19 -0
  83. data/lib/ably_ui/core/meganav/component.css +103 -0
  84. data/lib/ably_ui/core/meganav/component.js +1 -0
  85. data/lib/ably_ui/core/meganav/component.json +37 -0
  86. data/lib/ably_ui/core/meganav/meganav.html.erb +26 -0
  87. data/lib/ably_ui/core/meganav/meganav.rb +53 -0
  88. data/lib/ably_ui/core/meganav_blog_posts_list/component.js +1 -0
  89. data/lib/ably_ui/core/meganav_blog_posts_list/meganav_blog_posts_list.html.erb +5 -0
  90. data/lib/ably_ui/core/meganav_blog_posts_list/meganav_blog_posts_list.rb +13 -0
  91. data/lib/ably_ui/core/meganav_content_developers/component.js +1 -0
  92. data/lib/ably_ui/core/meganav_content_developers/meganav_content_developers.html.erb +77 -0
  93. data/lib/ably_ui/core/meganav_content_developers/meganav_content_developers.rb +13 -0
  94. data/lib/ably_ui/core/meganav_content_platform/component.js +1 -0
  95. data/lib/ably_ui/core/meganav_content_platform/meganav_content_platform.html.erb +91 -0
  96. data/lib/ably_ui/core/meganav_content_platform/meganav_content_platform.rb +14 -0
  97. data/lib/ably_ui/core/meganav_content_use_cases/component.js +1 -0
  98. data/lib/ably_ui/core/meganav_content_use_cases/meganav_content_use_cases.html.erb +72 -0
  99. data/lib/ably_ui/core/meganav_content_use_cases/meganav_content_use_cases.rb +13 -0
  100. data/lib/ably_ui/core/meganav_content_why_ably/component.js +1 -0
  101. data/lib/ably_ui/core/meganav_content_why_ably/meganav_content_why_ably.html.erb +70 -0
  102. data/lib/ably_ui/core/meganav_content_why_ably/meganav_content_why_ably.rb +13 -0
  103. data/lib/ably_ui/core/meganav_control/component.js +1 -0
  104. data/lib/ably_ui/core/meganav_control/meganav_control.html.erb +6 -0
  105. data/lib/ably_ui/core/meganav_control/meganav_control.rb +12 -0
  106. data/lib/ably_ui/core/meganav_control_mobile_dropdown/component.js +1 -0
  107. data/lib/ably_ui/core/meganav_control_mobile_dropdown/meganav_control_mobile_dropdown.html.erb +7 -0
  108. data/lib/ably_ui/core/meganav_control_mobile_dropdown/meganav_control_mobile_dropdown.rb +11 -0
  109. data/lib/ably_ui/core/meganav_control_mobile_panel_close/component.js +1 -0
  110. data/lib/ably_ui/core/meganav_control_mobile_panel_close/meganav_control_mobile_panel_close.html.erb +10 -0
  111. data/lib/ably_ui/core/meganav_control_mobile_panel_close/meganav_control_mobile_panel_close.rb +9 -0
  112. data/lib/ably_ui/core/meganav_control_mobile_panel_open/component.js +1 -0
  113. data/lib/ably_ui/core/meganav_control_mobile_panel_open/meganav_control_mobile_panel_open.html.erb +7 -0
  114. data/lib/ably_ui/core/meganav_control_mobile_panel_open/meganav_control_mobile_panel_open.rb +9 -0
  115. data/lib/ably_ui/core/meganav_items_desktop/component.js +1 -0
  116. data/lib/ably_ui/core/meganav_items_desktop/meganav_items_desktop.html.erb +16 -0
  117. data/lib/ably_ui/core/meganav_items_desktop/meganav_items_desktop.rb +15 -0
  118. data/lib/ably_ui/core/meganav_items_mobile/component.js +1 -0
  119. data/lib/ably_ui/core/meganav_items_mobile/meganav_items_mobile.html.erb +47 -0
  120. data/lib/ably_ui/core/meganav_items_mobile/meganav_items_mobile.rb +17 -0
  121. data/lib/ably_ui/core/meganav_items_signed_in/component.js +1 -0
  122. data/lib/ably_ui/core/meganav_items_signed_in/meganav_items_signed_in.html.erb +49 -0
  123. data/lib/ably_ui/core/meganav_items_signed_in/meganav_items_signed_in.rb +33 -0
  124. data/lib/ably_ui/core/notice/component.css +8 -0
  125. data/lib/ably_ui/core/notice/component.js +2 -0
  126. data/lib/ably_ui/core/notice/notice.html.erb +16 -0
  127. data/lib/ably_ui/core/notice/notice.rb +29 -0
  128. data/lib/ably_ui/core/scripts.js +1 -0
  129. data/lib/ably_ui/core/showcase/component.css +31 -0
  130. data/lib/ably_ui/core/showcase/component.js +1 -0
  131. data/lib/ably_ui/core/showcase/showcase.html.erb +76 -0
  132. data/lib/ably_ui/core/showcase/showcase.rb +190 -0
  133. data/lib/ably_ui/core/sign_out_link/component.js +1 -0
  134. data/lib/ably_ui/core/sign_out_link/sign_out_link.html.erb +1 -0
  135. data/lib/ably_ui/core/sign_out_link/sign_out_link.rb +17 -0
  136. data/lib/ably_ui/core/slider/component.css +9 -0
  137. data/lib/ably_ui/core/slider/component.js +1 -0
  138. data/lib/ably_ui/core/slider/slider.html.erb +28 -0
  139. data/lib/ably_ui/core/slider/slider.rb +38 -0
  140. data/lib/ably_ui/core/sprites.svg +113 -0
  141. data/lib/ably_ui/core/styles.css +332 -0
  142. data/lib/ably_ui/core/uptime/component.css +129 -0
  143. data/lib/ably_ui/core/uptime/component.js +1 -0
  144. data/lib/ably_ui/core/uptime/uptime.html.erb +0 -0
  145. data/lib/ably_ui/core/uptime/uptime.rb +7 -0
  146. data/lib/ably_ui/reset/scripts.js +1 -0
  147. data/lib/ably_ui/reset/styles.css +487 -0
  148. data/lib/ably_ui/version.rb +3 -0
  149. data/lib/ably_ui.rb +27 -0
  150. metadata +210 -0
@@ -0,0 +1,76 @@
1
+ <section
2
+ aria-roledescription="carousel"
3
+ aria-label="Ably customers showcase"
4
+ aria-live="off"
5
+ class="font-sans antialiased rounded-sm shadow-container-subtle"
6
+ data-id="showcase"
7
+ >
8
+ <div class="ui-showcase-overflow-container">
9
+ <ol class="ui-showcase-logo-wrapper" data-id="showcase-controls">
10
+ <% companies_data.each_with_index do |company, index| %>
11
+ <li class="ui-showcase-logo">
12
+ <%= tag.button class: ['focus:outline-gui-focus', 'border-none', 'p-0', 'transition-filter'],
13
+ type: 'button',
14
+ data: { id: 'showcase-control' },
15
+ aria: { controls: @random_id } do %>
16
+ <%= image_tag company[:logo], alt: "#{company[:name]} logo", class: ['ui-showcase-logo-img', index === 0 ? 'filter-none' : 'filter-grayscale', 'hover:filter-none'], srcset: [["#{company[:logo2x]}", "2x"]] %>
17
+ <% end %>
18
+ </li>
19
+ <% end %>
20
+ </ol>
21
+
22
+ <div class="ui-showcase-index-bar">
23
+ <div data-id="showcase-index-bar" class="transform transition-transform w-1/<%= companies_data.size %> h-4 bg-active-orange relative"></div>
24
+ </div>
25
+ </div>
26
+
27
+ <div class="overflow-x-hidden">
28
+ <ol class="flex transform transition-transform" data-id="showcase-slides" id="<%= @random_id %>">
29
+ <% companies_data.each_with_index do |company, index| %>
30
+ <li
31
+ class="w-full flex-shrink-0 p-24 sm:p-32 xl:p-64 bg-white"
32
+ role="group"
33
+ aria-roledescription="slide"
34
+ aria-label="<%= index + 1 %> of <%= companies_data.size %>"
35
+ >
36
+ <% if company[:layout] == "quotes" %>
37
+ <%= render(AblyUi::Core::Icon.new(name: "quote", size: "1.25rem", color: "text-cool-black")) %>
38
+
39
+ <p class="text-quote font-light mb-24"><%= company[:quote] %></p>
40
+
41
+ <div class="flex items-center">
42
+ <div class="flex-shrink-0 flex-grow-0 mr-16 overflow-hidden rounded-full flex align-center justify-center w-48 h-48">
43
+ <%= image_tag company[:author][:thumbnail], alt: "Picture of #{company[:author][:name]}, #{company[:author][:title]}", class: "w-48 h-48 filter-grayscale" %>
44
+ </div>
45
+ <div>
46
+ <p class="text-p2 font-medium"><%= company[:author][:name] %></p>
47
+ <p class="text-p3 font-light"><%= company[:author][:title] %></p>
48
+ </div>
49
+ </div>
50
+ <% end %>
51
+
52
+ <% if company[:layout] == "casestudies" %>
53
+ <div class="flex justify-evenly text-cool-black full-width flex-col md:flex-row" data-id="showcase-casestudy">
54
+ <% company[:columns].each_with_index do |col, n| %>
55
+ <% if company[:columns].last == col %>
56
+ <div class="flex-1 mt-40 sm:mt-0 <%= col[:classname] %>" data-id="casestudy-column">
57
+ <p class="text-h4 pb-24"><%= col[:heading] %></p>
58
+ <p class="text-p1 font-light"><%= col[:text] %></p>
59
+ <%- if col[:button] %>
60
+ <a class="ui-btn self-start p-btn mt-24" href="<%= col[:button][:href] %>"><%= col[:button][:label] %></a>
61
+ <% end %>
62
+ </div>
63
+ <% else %>
64
+ <div class="flex-1 mt-40 sm:mt-0 mr-24 sm:mr-32 xl:mr-64 <%= col[:classname] %>" data-id="casestudy-column">
65
+ <p class="text-title-xl font-extra-large"><%= col[:heading] %></p>
66
+ <p class="text-p1 font-light mb-0 sm:mb-32"><%= col[:text] %></p>
67
+ </div>
68
+ <% end %>
69
+ <% end %>
70
+ </div>
71
+ <% end %>
72
+ </li>
73
+ <% end %>
74
+ </ol>
75
+ </div>
76
+ </section>
@@ -0,0 +1,190 @@
1
+ module AblyUi
2
+ module Core
3
+ class Showcase < ViewComponent::Base
4
+ include AblyUi::Core::Util
5
+ def initialize(companies: default_companies, layout: 'quotes')
6
+ @random_id = append_random_postfix('showcase-slides')
7
+ @companies = companies
8
+ @layout = layout
9
+ @companies_data_cache = nil
10
+ end
11
+
12
+ def companies_data
13
+ @companies_data_cache ||=
14
+ @companies.map do |key|
15
+ logo = company_logos[key]
16
+ logo[:layout] = @layout
17
+
18
+ content = @layout != 'quotes' ? case_studies : quotations
19
+
20
+ if !content[key]
21
+ # Exception errors can not be rescued
22
+ raise Exception.new "Showcase Error: Can't find content item [#{key}] for layout [#{@layout}]"
23
+ end
24
+
25
+ logo.merge(content[key])
26
+ end
27
+ end
28
+
29
+ def default_companies
30
+ %i[hubspot vitac split]
31
+ end
32
+
33
+ def company_logos
34
+ {
35
+ hubspot: {
36
+ name: 'Hubspot',
37
+ logo:
38
+ asset_path('ably_ui/core/images/cust-logo-hubspot-col-pos.png'),
39
+ logo2x:
40
+ asset_path('ably_ui/core/images/cust-logo-hubspot-col-pos@2x.png')
41
+ },
42
+ vitac: {
43
+ name: 'Vitac',
44
+ logo: asset_path('ably_ui/core/images/cust-logo-vitac-col-pos.png'),
45
+ logo2x:
46
+ asset_path('ably_ui/core/images/cust-logo-vitac-col-pos@2x.png')
47
+ },
48
+ split: {
49
+ name: 'Split',
50
+ logo: asset_path('ably_ui/core/images/cust-logo-split-col-pos.png'),
51
+ logo2x:
52
+ asset_path('ably_ui/core/images/cust-logo-split-col-pos@2x.png')
53
+ },
54
+ lightspeed: {
55
+ name: 'Lightspeed',
56
+ logo:
57
+ asset_path(
58
+ 'ably_ui/core/images/cust-logo-lightspeed-syst-col-pos.png'
59
+ ),
60
+ logo2x:
61
+ asset_path(
62
+ 'ably_ui/core/images/cust-logo-lightspeed-syst-col-pos@2x.png'
63
+ )
64
+ },
65
+ australian_open: {
66
+ name: 'Australian Open',
67
+ logo:
68
+ asset_path('ably_ui/core/images/cust-logo-ausopen-col-pos.png'),
69
+ logo2x:
70
+ asset_path('ably_ui/core/images/cust-logo-ausopen-col-pos@2x.png')
71
+ }
72
+ }
73
+ end
74
+
75
+ def quotations
76
+ {
77
+ hubspot: {
78
+ quote:
79
+ "Ably’s realtime infrastructure layer seamlessly supports HubSpot's entire realtime needs and helps us meet technical, business, and product development requirements.",
80
+ author: {
81
+ name: 'Max Freiert',
82
+ thumbnail:
83
+ asset_path(
84
+ 'ably_ui/core/images/cust-photo-hubspot-max-freiert.jpg'
85
+ ),
86
+ title: 'Product Group Lead / HubSpot'
87
+ }
88
+ },
89
+ vitac: {
90
+ quote:
91
+ 'In a high-stakes, highly competitive industry, VITAC sought a provider that could operate realtime infrastructure for transporting live data to end-users via a complex, multi-hop process. In media accessibility environments - where there’s zero margin for error - Ably’s infrastructure performs and exceeds expectations.',
92
+ author: {
93
+ name: 'Joe Antonio',
94
+ thumbnail:
95
+ asset_path(
96
+ 'ably_ui/core/images/cust-photo-vitac-joe-antonio.jpg'
97
+ ),
98
+ title: 'Chief Information Officer / VITAC'
99
+ }
100
+ },
101
+ split: {
102
+ quote:
103
+ 'You miss so much by not using a platform like Ably. When you need to implement a new feature, the capabilities are there, ready to go. Or when you need to scale, the capacity is seamlessly available. There’s no need to even think about these things. Building on Ably was the only logical choice because we managed to bypass a hefty DevOps debt and rapidly ship our new streaming capabilities while keeping our architecture as simple and reliable as possible.',
104
+ author: {
105
+ name: 'Pato Echagüe',
106
+ thumbnail:
107
+ asset_path(
108
+ 'ably_ui/core/images/cust-photo-split-pato-echague.jpg'
109
+ ),
110
+ title: 'Chief Technical Officer / Split'
111
+ }
112
+ }
113
+ }
114
+ end
115
+
116
+ def case_studies
117
+ {
118
+ hubspot: {
119
+ columns: [
120
+ {
121
+ heading: '$600k',
122
+ text: 'annual savings on infrastructure and DevOps'
123
+ },
124
+ {
125
+ heading: 'LIVE CHAT AND REMOTE COLLABORATION',
126
+ text:
127
+ "Ably’s realtime platform seamlessly supports HubSpot's entire realtime needs and helps us meet technical, business, and product development, requirements.",
128
+ button: {
129
+ label: 'View case study',
130
+ href: '#'
131
+ }
132
+ }
133
+ ]
134
+ },
135
+ lightspeed: {
136
+ columns: [
137
+ {
138
+ heading: '75 million',
139
+ text: 'Students supported in 28,000 schools in 38 countries'
140
+ },
141
+ {
142
+ heading: 'REMOTE LEARNING AND DEVICE MANAGEMENT',
143
+ text:
144
+ 'Lightspeed Systems relies on Ably’s realtime platform to enable realtime student safety for remote and classroom learning solutions at scale.',
145
+ button: {
146
+ label: 'View case study',
147
+ href: '#'
148
+ }
149
+ }
150
+ ]
151
+ },
152
+ australian_open: {
153
+ columns: [
154
+ {
155
+ heading: '1.2 million',
156
+ text: 'Fans receiving billions of realtime messages'
157
+ },
158
+ {
159
+ heading: 'SPORTS, MEDIA, & AUDIENCE ENGAGEMENT',
160
+ text:
161
+ 'Only Ably meets The Australian Open’s exacting performance targets, reliably delivering realtime scores, updates and commentary to a huge global fan base.',
162
+ button: {
163
+ label: 'View case study',
164
+ href: '#'
165
+ }
166
+ }
167
+ ]
168
+ },
169
+ split: {
170
+ columns: [
171
+ {
172
+ heading: '>1 trillion',
173
+ text: 'Monthly feature flags sent over Ably’s network'
174
+ },
175
+ {
176
+ heading: 'REALTIME FEATURE FLAGS AND ANALYTICS',
177
+ text:
178
+ 'Ably’s realtime platform and SSE support enable Split to deliver more than one trillion business-critical feature flags to tens of millions of client apps every month.',
179
+ button: {
180
+ label: 'View case study',
181
+ href: '#'
182
+ }
183
+ }
184
+ ]
185
+ }
186
+ }
187
+ end
188
+ end
189
+ end
190
+ end
@@ -0,0 +1 @@
1
+ !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.AblyUi=o():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.SignOutLink=o())}(this,(function(){return{}.default}));
@@ -0,0 +1 @@
1
+ <%= link_to @session_data[:logOut][:text], abs_url(@session_data[:logOut][:href]), method: :delete, class: @classes, data: { id: "meganav-link" } %>
@@ -0,0 +1,17 @@
1
+ require 'json'
2
+
3
+ module AblyUi
4
+ module Core
5
+ class SignOutLink < ViewComponent::Base
6
+ include Util
7
+
8
+ attr_reader :url_base
9
+
10
+ def initialize(session_data: {}, classes: [], url_base:)
11
+ @session_data = session_data
12
+ @classes = classes
13
+ @url_base = url_base
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,9 @@
1
+ @layer components {
2
+ .ui-slider-marker {
3
+ font-size: 0.5rem;
4
+ top: -1px;
5
+
6
+ @apply leading-none px-4 relative;
7
+ }
8
+ }
9
+
@@ -0,0 +1 @@
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.AblyUi=e():(t.AblyUi=t.AblyUi||{},t.AblyUi.Core=t.AblyUi.Core||{},t.AblyUi.Core.Slider=e())}(this,(function(){return(()=>{var t={3096:(t,e,n)=>{var r="Expected a function",i=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,c=/^0o[0-7]+$/i,a=parseInt,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,l="object"==typeof self&&self&&self.Object===Object&&self,d=f||l||Function("return this")(),s=Object.prototype.toString,v=Math.max,p=Math.min,y=function(){return d.Date.now()};function b(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function h(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==s.call(t)}(t))return NaN;if(b(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=b(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(i,"");var n=u.test(t);return n||c.test(t)?a(t.slice(2),n?2:8):o.test(t)?NaN:+t}t.exports=function(t,e,n){var i=!0,o=!0;if("function"!=typeof t)throw new TypeError(r);return b(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),function(t,e,n){var i,o,u,c,a,f,l=0,d=!1,s=!1,g=!0;if("function"!=typeof t)throw new TypeError(r);function m(e){var n=i,r=o;return i=o=void 0,l=e,c=t.apply(r,n)}function x(t){return l=t,a=setTimeout(j,e),d?m(t):c}function w(t){var n=t-f;return void 0===f||n>=e||n<0||s&&t-l>=u}function j(){var t=y();if(w(t))return T(t);a=setTimeout(j,function(t){var n=e-(t-f);return s?p(n,u-(t-l)):n}(t))}function T(t){return a=void 0,g&&i?m(t):(i=o=void 0,c)}function E(){var t=y(),n=w(t);if(i=arguments,o=this,f=t,n){if(void 0===a)return x(f);if(s)return a=setTimeout(j,e),m(f)}return void 0===a&&(a=setTimeout(j,e)),c}return e=h(e)||0,b(n)&&(d=!!n.leading,u=(s="maxWait"in n)?v(h(n.maxWait)||0,e):u,g="trailing"in n?!!n.trailing:g),E.cancel=function(){void 0!==a&&clearTimeout(a),l=0,i=f=o=a=void 0},E.flush=function(){return void 0===a?c:T(y())},E}(t,e,{leading:i,maxWait:e,trailing:o})}}},e={};function n(r){var i=e[r];if(void 0!==i)return i.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,n),o.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var r={};return(()=>{"use strict";n.d(r,{default:()=>c});var t=n(3096),e=n.n(t),i=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return e.querySelector("[data-id=".concat(t,"]"))},o=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return e.querySelectorAll("[data-id=".concat(t,"]"))},u=function(t){var e=i("slider-strip",t),n=Array.from(o("slider-slide",t)),r=i("slider-previous",t),u=i("slider-next",t),c=Array.from(o("slider-marker",t)),a=i("slider-controls",t);a.classList.remove("hidden");var f=n.length,l=t.getBoundingClientRect().width,d=n[0].getBoundingClientRect(),s=d.width,v=d.left,p=n[1].getBoundingClientRect().left-v-s,y=(l-s)/2,b=0,h=0,g=function(t){return e.style.transform="translateX(".concat(function(t){return t*-s+y+t*-p}(t),"px)")},m=function(t){c.forEach((function(t){return t.classList.remove("text-active-orange")})),c[t].classList.remove("text-cool-black"),c[t].classList.add("text-active-orange")},x=function(){g(b=b-1<=0?0:b-1),m(b)},w=function(){g(b=b+1>=f?b:b+1),m(b)};return g(0),m(0),r.addEventListener("click",x),e.addEventListener("touchstart",(function(t){var e;h=null===(e=t.touches[0])||void 0===e?void 0:e.clientX})),e.addEventListener("touchend",(function(t){var e,n=(null===(e=t.changedTouches[0])||void 0===e?void 0:e.clientX)-h;Math.abs(n)<20||(n>0?x:w)()})),u.addEventListener("click",w),function(){e.style.transform=null,a.classList.add("hidden")}};const c=function(t){var n=t.container,r=t.mqEnableThreshold;if(n){var i=r||function(){return!window.matchMedia("(min-width: 600px)").matches},o=function(){};i()&&(o=u(n)),window.addEventListener("resize",e()((function(){i()?o=u(n):o()}),100))}}})(),r.default})()}));
@@ -0,0 +1,28 @@
1
+ <%= tag.div class: "w-full overflow-x-hidden", data: { id: "slider" }, style: "--dynamic-grid-columns-count: #{slides.length}; --dynamic-grid-column-min-width: #{slide_min_width}; --dynamic-grid-column-max-width: #{slide_max_width};" do %>
2
+ <%= tag.ol class: "grid ui-grid-gap grid-cols-dynamic transform transition-transform #{classes}", data: { id: "slider-strip" }, **additional_attributes do %>
3
+ <% slides.each do |slide| %>
4
+ <%= slide %>
5
+ <% end %>
6
+ <% end %>
7
+
8
+ <div class="flex justify-center items-center my-24 hidden" data-id="slider-controls">
9
+ <button type="button" class="p-0 group w-24 h-24 flex items-center focus:outline-gui-focus" data-id="slider-previous">
10
+ <%= render(AblyUi::Core::Icon.new(name: "icon-gui-disclosure-arrow", size: "1.5rem", color: "text-cool-black", additional_css: "transform rotate-180")) %>
11
+ </button>
12
+
13
+ <ul class="flex justify-center items-center mx-32 relative h-24">
14
+ <% slides.each do |slide| %>
15
+ <li>
16
+ <span
17
+ class="ui-slider-marker text-cool-black"
18
+ data-id="slider-marker"
19
+ >&#x2b24;</span> <%# ⬤ %>
20
+ </li>
21
+ <% end %>
22
+ </ul>
23
+
24
+ <button type="button" class="p-0 group w-24 h-24 flex items-center focus:outline-gui-focus" data-id="slider-next">
25
+ <%= render(AblyUi::Core::Icon.new(name: "icon-gui-disclosure-arrow", size: "1.5rem", color: "text-cool-black")) %>
26
+ </button>
27
+ </div>
28
+ <% end %>
@@ -0,0 +1,38 @@
1
+ module AblyUi
2
+ module Core
3
+ class Slider < ViewComponent::Base
4
+ attr_reader :classes,
5
+ :additional_attributes,
6
+ :slide_min_width,
7
+ :slide_max_width
8
+
9
+ renders_many :slides, 'Slide'
10
+
11
+ def initialize(
12
+ classes: '',
13
+ slide_min_width: '16.875rem',
14
+ slide_max_width: '1fr',
15
+ **additional_attributes
16
+ )
17
+ @classes = classes
18
+ @additional_attributes = additional_attributes
19
+ @slide_min_width = slide_min_width
20
+ @slide_max_width = slide_max_width
21
+ end
22
+
23
+ class Slide < ViewComponent::Base
24
+ attr_reader :classes
25
+
26
+ def initialize(classes: '')
27
+ @classes = classes
28
+ end
29
+
30
+ def call
31
+ tag.li class: classes, data: { id: 'slider-slide' } do
32
+ content
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,113 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg"><symbol id="sprite-github" viewBox="0 0 24 24"><title>sprite-github</title>
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M12 0C5.4 0 0 5.41945 0 12.0432C0 17.3623 3.4 21.8785 8.2 23.4843C8.8 23.5846 9 23.1832 9 22.8821C9 22.581 9 21.8785 9 20.8749C5.7 21.5774 5 19.2692 5 19.2692C4.5 17.8641 3.7 17.4627 3.7 17.4627C2.6 16.7601 3.8 16.7602 3.8 16.7602C5 16.8605 5.6 17.9645 5.6 17.9645C6.7 19.771 8.4 19.2692 9.1 18.9681C9.2 18.1652 9.5 17.6634 9.9 17.3623C7.1 17.0612 4.3 16.0576 4.3 11.4411C4.3 10.1364 4.8 9.03242 5.5 8.22953C5.5 7.82809 5 6.62377 5.7 5.01801C5.7 5.01801 6.7 4.71693 9 6.22233C10 5.92125 11 5.82089 12 5.82089C13 5.82089 14 5.92125 15 6.22233C17.3 4.71693 18.3 5.01801 18.3 5.01801C19 6.72413 18.5 7.92845 18.4 8.22953C19.2 9.03242 19.6 10.1364 19.6 11.4411C19.6 16.0576 16.8 17.0612 14.1 17.3623C14.5 17.7638 14.9 18.4663 14.9 19.5702C14.9 21.176 14.9 22.4807 14.9 22.8821C14.9 23.1832 15.1 23.5846 15.7 23.4843C20.6 21.8785 24 17.3623 24 12.0432C24 5.41945 18.6 0 12 0Z"/>
3
+ </symbol><symbol id="sprite-glassdoor" viewBox="0 0 18 24"><title>sprite-glassdoor</title>
4
+ <path d="M14.122 20.5734H0.5C0.5 22.4677 2.0222 24 3.90634 24H14.122C16.0027 24 17.5249 22.4643 17.5249 20.5734V6.49471C17.5249 6.42706 17.4708 6.36617 17.4032 6.36617H14.2438C14.1761 6.36617 14.122 6.42368 14.122 6.49133V20.57V20.5734ZM14.122 0C16.0027 0 17.5249 1.53573 17.5249 3.43002H3.90634V17.5087C3.90634 17.5763 3.84884 17.6338 3.78118 17.6338H0.625159C0.557505 17.6338 0.5 17.5763 0.5 17.5087V3.43002C0.5 1.53573 2.0222 0 3.90634 0H14.122Z"/>
5
+ </symbol><symbol fill="none" id="sprite-icon-display-48hrs" viewBox="0 0 48 48"><title>sprite-icon-display-48hrs</title>
6
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M4.75 24C4.75 13.3685 13.3685 4.75 24 4.75C24.4142 4.75 24.75 4.41421 24.75 4C24.75 3.58579 24.4142 3.25 24 3.25C12.5401 3.25 3.25 12.5401 3.25 24C3.25 35.4599 12.5401 44.75 24 44.75C35.4599 44.75 44.75 35.4599 44.75 24C44.75 23.5858 44.4142 23.25 44 23.25C43.5858 23.25 43.25 23.5858 43.25 24C43.25 34.6315 34.6315 43.25 24 43.25C13.3685 43.25 4.75 34.6315 4.75 24ZM33.0947 26.36C33.0947 28.682 31.1507 30.212 28.9727 30.212C26.7947 30.212 24.8507 28.682 24.8507 26.36C24.8507 24.884 25.6247 23.75 26.8487 23.138C25.8947 22.58 25.3007 21.626 25.3007 20.402C25.3007 18.35 27.0287 17 28.9727 17C30.9167 17 32.6447 18.35 32.6447 20.402C32.6447 21.626 32.0507 22.58 31.0787 23.138C32.3027 23.75 33.0947 24.884 33.0947 26.36ZM26.3087 26.36C26.3087 27.836 27.4787 28.862 28.9727 28.862C30.4667 28.862 31.6367 27.836 31.6367 26.36C31.6367 24.884 30.4667 23.84 28.9727 23.84C27.4787 23.84 26.3087 24.884 26.3087 26.36ZM26.7587 20.402C26.7587 21.626 27.7307 22.49 28.9727 22.49C30.2147 22.49 31.1867 21.626 31.1867 20.402C31.1867 19.196 30.2147 18.35 28.9727 18.35C27.7307 18.35 26.7587 19.196 26.7587 20.402ZM20.9773 27.008V29.996H19.5193V27.008H14.3533V25.838L19.3753 17.216H21.0493L15.9733 25.64H19.5193V22.778H20.9773V25.64H23.6773V27.008H20.9773Z" fill="#03020D"/>
7
+ </symbol><symbol fill="none" id="sprite-icon-display-browser" viewBox="0 0 48 48"><title>sprite-icon-display-browser</title>
8
+ <g clip-path="url(#clip0)">
9
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M7 8.75C6.30964 8.75 5.75 9.30964 5.75 10V34H17.0949C17.5138 34 17.9221 34.1315 18.2622 34.376L19.303 35.124C19.6431 35.3685 20.0514 35.5 20.4703 35.5H27.5297C27.9486 35.5 28.3569 35.3685 28.697 35.124L29.7378 34.376C30.0779 34.1315 30.4862 34 30.9051 34H42.25V10C42.25 9.30964 41.6904 8.75 41 8.75H7ZM4.25 10V34H1C0.447715 34 0 34.4477 0 35V38C0 38.5523 0.447714 39 0.999999 39H47C47.5523 39 48 38.5523 48 38V35C48 34.4477 47.5523 34 47 34H43.75V10C43.75 8.48122 42.5188 7.25 41 7.25H7C5.48122 7.25 4.25 8.48122 4.25 10ZM46.5 35.5H30.9051C30.8003 35.5 30.6983 35.5329 30.6132 35.594L29.5725 36.3421C28.9772 36.7699 28.2627 37 27.5297 37H20.4703C19.7373 37 19.0228 36.7699 18.4275 36.3421L17.3868 35.594C17.3017 35.5329 17.1997 35.5 17.0949 35.5H1.5V37.5H46.5V35.5ZM25 11C25 11.5523 24.5523 12 24 12C23.4477 12 23 11.5523 23 11C23 10.4477 23.4477 10 24 10C24.5523 10 25 10.4477 25 11Z" fill="#03020D"/>
10
+ </g>
11
+ <defs>
12
+ <clipPath id="clip0">
13
+ <rect width="48" height="48" fill="white"/>
14
+ </clipPath>
15
+ </defs>
16
+ </symbol><symbol fill="none" id="sprite-icon-display-calendar" viewBox="0 0 48 48"><title>sprite-icon-display-calendar</title>
17
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M16.75 4C17.1642 4 17.5 4.33579 17.5 4.75V6.25H31V4.75C31 4.33579 31.3358 4 31.75 4C32.1642 4 32.5 4.33579 32.5 4.75V6.25H40C42.6234 6.25 44.75 8.37665 44.75 11V37C44.75 39.6234 42.6234 41.75 40 41.75H8C5.37665 41.75 3.25 39.6234 3.25 37V11C3.25 8.37665 5.37665 6.25 8 6.25H16V4.75C16 4.33579 16.3358 4 16.75 4ZM31 7.75V9.25C31 9.66421 31.3358 10 31.75 10C32.1642 10 32.5 9.66421 32.5 9.25V7.75H40C41.7949 7.75 43.25 9.20507 43.25 11V17.25H4.75V11C4.75 9.20507 6.20507 7.75 8 7.75H16V9.25C16 9.66421 16.3358 10 16.75 10C17.1642 10 17.5 9.66421 17.5 9.25V7.75H31ZM4.75 18.75V37C4.75 38.7949 6.20508 40.25 8 40.25H40C41.7949 40.25 43.25 38.7949 43.25 37V18.75H4.75Z" fill="#03020D"/>
18
+ </symbol><symbol fill="none" id="sprite-icon-display-call-mobile" viewBox="0 0 48 48"><title>sprite-icon-display-call-mobile</title>
19
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M8 3.5H24C25.3807 3.5 26.5 4.61929 26.5 6V42C26.5 43.3807 25.3807 44.5 24 44.5H8C6.61929 44.5 5.5 43.3807 5.5 42V6C5.5 4.61929 6.61929 3.5 8 3.5ZM4 6C4 3.79086 5.79086 2 8 2H24C26.2091 2 28 3.79086 28 6V42C28 44.2091 26.2091 46 24 46H8C5.79086 46 4 44.2091 4 42V6ZM31 21.75C32.2426 21.75 33.25 22.7574 33.25 24C33.25 25.2426 32.2426 26.25 31 26.25V27.75C33.0711 27.75 34.75 26.0711 34.75 24C34.75 21.9289 33.0711 20.25 31 20.25V21.75ZM38.25 24C38.25 19.9959 35.0041 16.75 31 16.75V15.25C35.8325 15.25 39.75 19.1675 39.75 24C39.75 28.8325 35.8325 32.75 31 32.75V31.25C35.0041 31.25 38.25 28.0041 38.25 24ZM31 11.75C37.7655 11.75 43.25 17.2345 43.25 24C43.25 30.7655 37.7655 36.25 31 36.25V37.75C38.5939 37.75 44.75 31.5939 44.75 24C44.75 16.4061 38.5939 10.25 31 10.25V11.75ZM11 41C11 40.5858 11.3358 40.25 11.75 40.25H20.25C20.6642 40.25 21 40.5858 21 41C21 41.4142 20.6642 41.75 20.25 41.75H11.75C11.3358 41.75 11 41.4142 11 41ZM16 7C16.5523 7 17 6.55228 17 6C17 5.44772 16.5523 5 16 5C15.4477 5 15 5.44772 15 6C15 6.55228 15.4477 7 16 7Z" fill="#03020D"/>
20
+ </symbol><symbol fill="none" id="sprite-icon-display-documentation" viewBox="0 0 48 48"><title>sprite-icon-display-documentation</title>
21
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M38 42.5H10C9.72386 42.5 9.5 42.2761 9.5 42V6C9.5 5.72386 9.72386 5.5 10 5.5H30.3431C31.0062 5.5 31.6421 5.76339 32.1109 6.23223L37.7678 11.8891C38.2366 12.3579 38.5 12.9938 38.5 13.6569V42C38.5 42.2761 38.2761 42.5 38 42.5ZM10 44H38C39.1046 44 40 43.1046 40 42V13.6569C40 12.596 39.5786 11.5786 38.8284 10.8284L33.1716 5.17157C32.4214 4.42143 31.404 4 30.3431 4H10C8.89543 4 8 4.89543 8 6V42C8 43.1046 8.89543 44 10 44ZM20.1167 17.6L14.25 22L20.1167 26.4L19.2167 27.6L12.55 22.6C12.3611 22.4584 12.25 22.2361 12.25 22C12.25 21.764 12.3611 21.5417 12.55 21.4L19.2167 16.4L20.1167 17.6ZM27.7212 14.206L21.7212 35.206L20.2789 34.7939L26.2789 13.7939L27.7212 14.206ZM27.4834 23.6L33.3501 28L27.4834 32.4L28.3834 33.6L35.0501 28.6C35.239 28.4584 35.3501 28.2361 35.3501 28C35.3501 27.764 35.239 27.5417 35.0501 27.4L28.3834 22.4L27.4834 23.6Z" fill="#03020D"/>
22
+ </symbol><symbol fill="none" id="sprite-icon-display-general-comms" viewBox="0 0 48 48"><title>sprite-icon-display-general-comms</title>
23
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M8 5.25C5.37665 5.25 3.25 7.37665 3.25 10V32C3.25 34.6234 5.37665 36.75 8 36.75H34.7427L41.9256 42.3367C43.0751 43.2308 44.75 42.4116 44.75 40.9554V10C44.75 7.37665 42.6234 5.25 40 5.25H8ZM4.75 10C4.75 8.20507 6.20507 6.75 8 6.75H40C41.7949 6.75 43.25 8.20508 43.25 10V40.9554C43.25 41.1634 43.0107 41.2804 42.8465 41.1527L35.2573 35.25H8C6.20507 35.25 4.75 33.7949 4.75 32V10ZM12 16.75H36V15.25H12V16.75ZM36 21.75H12V20.25H36V21.75ZM12 26.75H28V25.25H12V26.75Z" fill="#03020D"/>
24
+ </symbol><symbol fill="none" id="sprite-icon-display-it-support-access" viewBox="0 0 48 48"><title>sprite-icon-display-it-support-access</title>
25
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M46.5 40V12.75H1.5V40C1.5 40.2761 1.72386 40.5 2 40.5H46C46.2761 40.5 46.5 40.2761 46.5 40ZM46.5 8V11.25H1.5V8C1.5 7.72386 1.72386 7.5 2 7.5H46C46.2761 7.5 46.5 7.72386 46.5 8ZM48 8V40C48 41.1046 47.1046 42 46 42H2C0.895432 42 0 41.1046 0 40V8C0 6.89543 0.895431 6 2 6H46C47.1046 6 48 6.89543 48 8ZM4.25 9.25C4.25 9.80228 3.80228 10.25 3.25 10.25C2.69772 10.25 2.25 9.80228 2.25 9.25C2.25 8.69772 2.69772 8.25 3.25 8.25C3.80228 8.25 4.25 8.69772 4.25 9.25ZM6.25 10.25C6.80228 10.25 7.25 9.80228 7.25 9.25C7.25 8.69772 6.80228 8.25 6.25 8.25C5.69772 8.25 5.25 8.69772 5.25 9.25C5.25 9.80228 5.69772 10.25 6.25 10.25ZM10.25 9.25C10.25 9.80228 9.80228 10.25 9.25 10.25C8.69771 10.25 8.25 9.80228 8.25 9.25C8.25 8.69772 8.69771 8.25 9.25 8.25C9.80228 8.25 10.25 8.69772 10.25 9.25ZM24.75 29.7993C25.1984 29.54 25.5 29.0552 25.5 28.5C25.5 27.6716 24.8284 27 24 27C23.1716 27 22.5 27.6716 22.5 28.5C22.5 29.0552 22.8016 29.54 23.25 29.7993V33.5H24.75V29.7993ZM17 24.25C16.5858 24.25 16.25 24.5858 16.25 25V30.205L16.25 30.2421C16.2498 31.0676 16.2495 32.6758 17.0154 34.0849C17.4144 34.8189 18.0189 35.498 18.9172 35.9873C19.81 36.4735 20.9514 36.75 22.3949 36.75H25.6051C27.048 36.75 28.1892 36.4751 29.0819 35.9904C29.9804 35.5025 30.5854 34.8247 30.9846 34.0902C31.7506 32.681 31.7502 31.0674 31.75 30.2226L31.75 30.1839V25C31.75 24.5858 31.4142 24.25 31 24.25H29.75V21.1841C29.75 19.3825 29.1112 18.087 27.9744 17.2764C26.8851 16.4997 25.4495 16.25 24 16.25C22.5484 16.25 21.1133 16.5046 20.0247 17.2833C18.8896 18.0953 18.25 19.3896 18.25 21.1841V24.25H17ZM28.25 21.1841V24.25H19.75V21.1841C19.75 19.7819 20.2251 18.9842 20.8974 18.5033C21.6161 17.9891 22.6811 17.75 24 17.75C25.321 17.75 26.3855 17.9857 27.1035 18.4977C27.7741 18.9758 28.25 19.7723 28.25 21.1841ZM29 25.75H19H17.75V30.205C17.75 31.0561 17.7622 32.3179 18.3333 33.3686C18.6087 33.8753 19.0157 34.3328 19.6347 34.67C20.2593 35.0102 21.141 35.25 22.3949 35.25H25.6051C26.8596 35.25 27.7416 35.0113 28.3662 34.6721C28.985 34.3362 29.3916 33.88 29.6667 33.3739C30.2376 32.3236 30.25 31.0573 30.25 30.1839V25.75H29Z" fill="#03020D"/>
26
+ </symbol><symbol fill="none" id="sprite-icon-display-it-support-helpdesk" viewBox="0 0 48 48"><title>sprite-icon-display-it-support-helpdesk</title>
27
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M7 8.75C6.30964 8.75 5.75 9.30964 5.75 10V34H17.0949C17.5138 34 17.9221 34.1315 18.2622 34.376L19.303 35.124C19.6431 35.3685 20.0514 35.5 20.4703 35.5H27.5297C27.9486 35.5 28.3569 35.3685 28.697 35.124L29.7378 34.376C30.0779 34.1315 30.4862 34 30.9051 34H42.25V10C42.25 9.30964 41.6904 8.75 41 8.75H7ZM4.25 10V34H1C0.447715 34 0 34.4477 0 35V38C0 38.5523 0.447714 39 0.999999 39H47C47.5523 39 48 38.5523 48 38V35C48 34.4477 47.5523 34 47 34H43.75V10C43.75 8.48122 42.5188 7.25 41 7.25H7C5.48122 7.25 4.25 8.48122 4.25 10ZM46.5 35.5H30.9051C30.8003 35.5 30.6983 35.5329 30.6132 35.594L29.5725 36.3421C28.9772 36.7699 28.2627 37 27.5297 37H20.4703C19.7373 37 19.0228 36.7699 18.4275 36.3421L17.3868 35.594C17.3017 35.5329 17.1997 35.5 17.0949 35.5H1.5V37.5H46.5V35.5ZM21 17C21 17.5523 20.5523 18 20 18C19.4477 18 19 17.5523 19 17C19 16.4477 19.4477 16 20 16C20.5523 16 21 16.4477 21 17ZM28 18C28.5523 18 29 17.5523 29 17C29 16.4477 28.5523 16 28 16C27.4477 16 27 16.4477 27 17C27 17.5523 27.4477 18 28 18ZM16.7138 21.7697C16.5866 21.3755 16.1639 21.159 15.7697 21.2862C15.3755 21.4134 15.1591 21.8361 15.2863 22.2303C16.508 26.0164 19.9797 28.75 24 28.75C28.0203 28.75 31.4921 26.0164 32.7138 22.2303C32.841 21.8361 32.6245 21.4134 32.2303 21.2862C31.8361 21.159 31.4135 21.3755 31.2863 21.7697C30.2492 24.9836 27.3209 27.25 24 27.25C20.6791 27.25 17.7509 24.9836 16.7138 21.7697Z" fill="#03020D"/>
28
+ </symbol><symbol fill="none" id="sprite-icon-display-laptop" viewBox="0 0 48 48"><title>sprite-icon-display-laptop</title>
29
+ <g clip-path="url(#clip0)">
30
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M7 8.75C6.30964 8.75 5.75 9.30964 5.75 10V34H17.0949C17.5138 34 17.9221 34.1315 18.2622 34.376L19.303 35.124C19.6431 35.3685 20.0514 35.5 20.4703 35.5H27.5297C27.9486 35.5 28.3569 35.3685 28.697 35.124L29.7378 34.376C30.0779 34.1315 30.4862 34 30.9051 34H42.25V10C42.25 9.30964 41.6904 8.75 41 8.75H7ZM4.25 10V34H1C0.447715 34 0 34.4477 0 35V38C0 38.5523 0.447714 39 0.999999 39H47C47.5523 39 48 38.5523 48 38V35C48 34.4477 47.5523 34 47 34H43.75V10C43.75 8.48122 42.5188 7.25 41 7.25H7C5.48122 7.25 4.25 8.48122 4.25 10ZM46.5 35.5H30.9051C30.8003 35.5 30.6983 35.5329 30.6132 35.594L29.5725 36.3421C28.9772 36.7699 28.2627 37 27.5297 37H20.4703C19.7373 37 19.0228 36.7699 18.4275 36.3421L17.3868 35.594C17.3017 35.5329 17.1997 35.5 17.0949 35.5H1.5V37.5H46.5V35.5ZM25 11C25 11.5523 24.5523 12 24 12C23.4477 12 23 11.5523 23 11C23 10.4477 23.4477 10 24 10C24.5523 10 25 10.4477 25 11Z" fill="#03020D"/>
31
+ </g>
32
+ <defs>
33
+ <clipPath id="clip0">
34
+ <rect width="48" height="48" fill="white"/>
35
+ </clipPath>
36
+ </defs>
37
+ </symbol><symbol fill="none" id="sprite-icon-display-live-chat" viewBox="0 0 48 48"><title>sprite-icon-display-live-chat</title>
38
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M26 5.25C28.6234 5.25 30.75 7.37664 30.75 10V17.25H40C42.6234 17.25 44.75 19.3766 44.75 22V39.6756C44.75 41.2119 42.912 42.0026 41.7966 40.9462L37.8512 37.2095H22C19.3766 37.2095 17.25 35.0828 17.25 32.4595V25.2095H10.1488L6.20337 28.9462C5.08797 30.0026 3.25 29.2119 3.25 27.6756V10C3.25 7.37665 5.37665 5.25 8 5.25H26ZM18.75 25.2095V32.4595C18.75 34.2544 20.2051 35.7095 22 35.7095H38.4488L42.8281 39.8571C42.9874 40.008 43.25 39.8951 43.25 39.6756V22C43.25 20.2051 41.7949 18.75 40 18.75H30.75V20.4595C30.75 23.0828 28.6234 25.2095 26 25.2095H18.75ZM29.25 18.75V20.4595C29.25 22.2544 27.7949 23.7095 26 23.7095H18.75V22C18.75 20.2051 20.2051 18.75 22 18.75H29.25ZM29.25 17.25H22C19.3766 17.25 17.25 19.3766 17.25 22V23.7095H9.55121L5.17191 27.8571C5.01257 28.008 4.75 27.895 4.75 27.6756V10C4.75 8.20507 6.20507 6.75 8 6.75H26C27.7949 6.75 29.25 8.20507 29.25 10V17.25Z" fill="#03020D"/>
39
+ </symbol><symbol fill="none" id="sprite-icon-display-map-pin" viewBox="0 0 48 48"><title>sprite-icon-display-map-pin</title>
40
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M10.75 18.08C10.75 10.7342 16.7342 4.75 24.08 4.75C31.4644 4.75 37.41 10.7328 37.41 18.08C37.41 20.5268 36.5797 23.334 35.2826 26.2091C33.9901 29.0739 32.26 31.9501 30.5191 34.5193C28.7797 37.0864 27.0387 39.3334 25.732 40.9391C25.079 41.7416 24.5353 42.3828 24.1556 42.8227L24.1191 42.865L24.0802 42.8201C23.6982 42.3792 23.1514 41.7365 22.4946 40.9324C21.1804 39.3235 19.4294 37.0726 17.68 34.5029C15.929 31.9311 14.189 29.0536 12.8892 26.1906C11.5845 23.317 10.75 20.5155 10.75 18.08ZM23.5643 44.5037C23.5645 44.5039 23.5646 44.504 24.12 44L24.6762 44.5031C24.5341 44.6602 24.3323 44.7498 24.1206 44.75C23.9088 44.7502 23.7066 44.6605 23.5643 44.5037ZM23.5643 44.5037L24.12 44C24.6762 44.5031 24.677 44.5023 24.6772 44.5021L24.6794 44.4996L24.6877 44.4904L24.7191 44.4553L24.7733 44.3946L24.8393 44.3202C24.9441 44.2018 25.0969 44.0277 25.291 43.8029C25.6791 43.3534 26.2322 42.7009 26.8955 41.8859C28.2213 40.2566 29.9903 37.9736 31.7609 35.3607C33.53 32.75 35.3099 29.7961 36.6499 26.8259C37.9853 23.866 38.91 20.8332 38.91 18.08C38.91 9.90718 32.2956 3.25 24.08 3.25C15.9058 3.25 9.25 9.90579 9.25 18.08C9.25 20.8245 10.1805 23.853 11.5233 26.8107C12.871 29.7789 14.661 32.7339 16.44 35.3471C18.2206 37.9624 19.9996 40.249 21.3329 41.8813C21.9999 42.6979 22.5562 43.3517 22.9464 43.8022C23.1415 44.0275 23.2952 44.202 23.4006 44.3206C23.4532 44.38 23.4938 44.4253 23.5214 44.4561L23.553 44.4912L23.5643 44.5037ZM16.79 17.2401C16.79 13.2139 20.0539 9.95007 24.08 9.95007C28.1062 9.95007 31.37 13.2139 31.37 17.2401C31.37 21.2662 28.1062 24.5301 24.08 24.5301C20.0539 24.5301 16.79 21.2662 16.79 17.2401ZM24.08 8.45007C19.2255 8.45007 15.29 12.3855 15.29 17.2401C15.29 22.0947 19.2255 26.0301 24.08 26.0301C28.9346 26.0301 32.87 22.0947 32.87 17.2401C32.87 12.3855 28.9346 8.45007 24.08 8.45007Z" fill="#03020D"/>
41
+ </symbol><symbol fill="none" id="sprite-icon-display-message" viewBox="0 0 48 48"><title>sprite-icon-display-message</title>
42
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M5 7.25C2.37665 7.25 0.25 9.37665 0.25 12V36C0.25 38.6234 2.37665 40.75 5 40.75H43C45.6234 40.75 47.75 38.6234 47.75 36V12C47.75 9.37665 45.6234 7.25 43 7.25H5ZM3.36577 9.19015C3.84588 8.91031 4.40422 8.75 5 8.75H43C43.6017 8.75 44.1653 8.91353 44.6486 9.19858L24.6531 24.0753L3.36577 9.19015ZM2.26183 10.2486C1.93785 10.754 1.75 11.3551 1.75 12V36C1.75 37.7949 3.20507 39.25 5 39.25H43C44.7949 39.25 46.25 37.7949 46.25 36V12C46.25 11.3577 46.0637 10.7588 45.7421 10.2547L25.1144 25.6017C24.8552 25.7945 24.5016 25.7997 24.2369 25.6146L2.26183 10.2486Z" fill="#03020D"/>
43
+ </symbol><symbol fill="none" id="sprite-icon-display-padlock-closed" viewBox="0 0 48 48"><title>sprite-icon-display-padlock-closed</title>
44
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M18.1447 6.66702C16.7178 8.01383 15.75 10.2678 15.75 13.9372V22.37H32.25V13.9372C32.25 10.2467 31.2817 7.994 29.8562 6.65295C28.4223 5.30391 26.3916 4.75 24 4.75C21.6111 4.75 19.5797 5.31256 18.1447 6.66702ZM14.25 13.9372V22.37H10C9.58579 22.37 9.25001 22.7058 9.25001 23.12L9.25 32.6242C9.24988 34.1303 9.24966 36.9376 10.705 39.3717C12.2206 41.9066 15.1988 43.87 20.7898 43.87H27.2102C32.7996 43.87 35.7787 41.9173 37.295 39.3813C38.7504 36.9472 38.7501 34.1301 38.75 32.5877V32.5877L38.75 23.12C38.75 22.7058 38.4142 22.37 38 22.37H33.75V13.9372C33.75 9.99596 32.7119 7.28005 30.884 5.56044C29.0647 3.84881 26.5954 3.25 24 3.25C21.4019 3.25 18.9333 3.86003 17.1151 5.57618C15.2887 7.29998 14.25 10.0147 14.25 13.9372ZM10.75 32.5836V23.87H37.25V32.5453C37.25 34.116 37.2362 36.5566 36.0076 38.6115C34.8264 40.587 32.4106 42.37 27.2102 42.37H20.7898C15.591 42.37 13.1743 40.5786 11.9924 38.602C10.7635 36.5466 10.75 34.1146 10.75 32.5836ZM23 32.8925V37.04H25V32.8925C25.5978 32.5467 26 31.9003 26 31.16C26 30.0555 25.1046 29.16 24 29.16C22.8954 29.16 22 30.0555 22 31.16C22 31.9003 22.4022 32.5467 23 32.8925Z" fill="#03020D"/>
45
+ </symbol><symbol fill="none" id="sprite-icon-display-platform" viewBox="0 0 48 48"><title>sprite-icon-display-platform</title>
46
+ <g clip-path="url(#clip0)">
47
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M34.6782 25.41L48.1587 32.3993L24 45.1304L-0.15863 32.3993L24 19.8736L34.3271 25.228L34.5212 25.1221L34.6782 25.41ZM32.2097 26.383L24 22.1264L15.2426 26.667L23.6889 31.0307L32.2097 26.383ZM25.8339 32.1388L34.351 27.4932L43.8414 32.4137L35.1902 36.9727L25.8339 32.1388ZM21.5694 32.1868L13.0678 27.7945L4.15868 32.4137L12.8024 36.9688L21.5694 32.1868ZM14.9267 38.0882L23.7143 33.2949L33.0331 38.1094L24 42.8697L14.9267 38.0882Z" fill="url(#paint0_linear)"/>
48
+ <path d="M0 26.3984L24 14L48 26.3984L24 39L0 26.3984Z" fill="url(#paint1_linear)" fill-opacity="0.75"/>
49
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M24 7.8736L48.1587 20.3993L24 33.1304L-0.15863 20.3993L24 7.8736ZM4.15868 20.4137L24 30.8697L43.8414 20.4137L24 10.1264L4.15868 20.4137Z" fill="#4B3B35"/>
50
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M24.6216 2.8736L25.9986 3.58752L25.078 5.36306L24.6216 5.12643L24.1652 5.36305L23.2447 3.58752L24.6216 2.8736ZM22.3319 6.3136L20.4986 7.26414L19.578 5.4886L21.4113 4.53806L22.3319 6.3136ZM28.7447 7.26414L26.9113 6.3136L27.8319 4.53806L29.6652 5.4886L28.7447 7.26414ZM32.4113 9.16522L30.578 8.21468L31.4986 6.43914L33.3319 7.38968L32.4113 9.16522ZM18.6652 8.21468L16.8319 9.16522L15.9113 7.38968L17.7447 6.43914L18.6652 8.21468ZM36.078 11.0663L34.2447 10.1158L35.1652 8.34023L36.9986 9.29077L36.078 11.0663ZM14.9986 10.1158L13.1652 11.0663L12.2447 9.29077L14.078 8.34023L14.9986 10.1158ZM11.3319 12.0168L9.49856 12.9674L8.57798 11.1919L10.4113 10.2413L11.3319 12.0168ZM39.7447 12.9674L37.9113 12.0168L38.8319 10.2413L40.6652 11.1919L39.7447 12.9674ZM7.66523 13.9179L5.83189 14.8685L4.91132 13.0929L6.74465 12.1424L7.66523 13.9179ZM43.4113 14.8685L41.578 13.9179L42.4986 12.1424L44.3319 13.0929L43.4113 14.8685ZM3.41555 14.6946L3.07798 14.0435L0.462952 15.3993L3.07207 16.7743L3.4164 16.1209L3.99856 15.819L3.78873 15.4143L4.00448 15.0049L3.41555 14.6946ZM45.8268 16.1209L45.2447 15.819L45.4545 15.4143L45.2387 15.0049L45.8277 14.6946L46.1652 14.0435L48.7803 15.3993L46.1711 16.7743L45.8268 16.1209ZM41.5721 16.9372L43.4054 15.971L44.3378 17.7404L42.5045 18.7065L41.5721 16.9372ZM5.83781 15.971L7.67115 16.9372L6.73874 18.7065L4.9054 17.7404L5.83781 15.971ZM37.9054 18.8694L39.7387 17.9033L40.6711 19.6726L38.8378 20.6388L37.9054 18.8694ZM9.50448 17.9033L11.3378 18.8694L10.4054 20.6388L8.57207 19.6726L9.50448 17.9033ZM34.2387 20.8017L36.0721 19.8355L37.0045 21.6049L35.1711 22.571L34.2387 20.8017ZM13.1711 19.8355L15.0045 20.8017L14.0721 22.571L12.2387 21.6049L13.1711 19.8355ZM16.8378 21.7678L18.6711 22.7339L17.7387 24.5033L15.9054 23.5371L16.8378 21.7678ZM30.5721 22.7339L32.4054 21.7678L33.3378 23.5371L31.5045 24.5033L30.5721 22.7339ZM20.5045 23.7L22.3378 24.6662L21.4054 26.4355L19.5721 25.4694L20.5045 23.7ZM26.9054 24.6661L28.7387 23.7L29.6711 25.4694L27.8378 26.4355L26.9054 24.6661ZM24.6216 25.8697L24.1711 25.6323L23.2387 27.4016L24.6216 28.1304L26.0045 27.4016L25.0721 25.6323L24.6216 25.8697Z" fill="#ADA6A3"/>
51
+ </g>
52
+ <defs>
53
+ <linearGradient id="paint0_linear" x1="30" y1="23" x2="14.4778" y2="36.9783" gradientUnits="userSpaceOnUse">
54
+ <stop stop-color="#FF0000"/>
55
+ <stop offset="0.322917" stop-color="#FB5519"/>
56
+ <stop offset="1" stop-color="#FB5519"/>
57
+ </linearGradient>
58
+ <linearGradient id="paint1_linear" x1="37.3943" y1="25.8404" x2="12.6166" y2="37.8561" gradientUnits="userSpaceOnUse">
59
+ <stop stop-color="#FF0000"/>
60
+ <stop offset="1" stop-color="#FF5416"/>
61
+ </linearGradient>
62
+ <clipPath id="clip0">
63
+ <rect width="48" height="48" fill="white"/>
64
+ </clipPath>
65
+ </defs>
66
+ </symbol><symbol fill="none" id="sprite-icon-display-shopping-cart" viewBox="0 0 48 48"><title>sprite-icon-display-shopping-cart</title>
67
+ <g clip-path="url(#clip0)">
68
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M1 6.25C0.585786 6.25 0.25 6.58579 0.25 7C0.25 7.41421 0.585786 7.75 1 7.75H1.3917C2.87744 7.75 4.17402 8.75754 4.541 10.1972L10.24 32.555C9.35503 33.012 8.75 33.9353 8.75 35C8.75 36.5188 9.98122 37.75 11.5 37.75H42C42.4142 37.75 42.75 37.4142 42.75 37C42.75 36.5858 42.4142 36.25 42 36.25H11.5C10.8096 36.25 10.25 35.6904 10.25 35C10.25 34.3096 10.8096 33.75 11.5 33.75H37.8074C40.8679 33.75 43.5454 31.6909 44.3312 28.7329L48.0572 14.706C48.5208 12.9608 47.2051 11.25 45.3994 11.25H6.35732L5.99452 9.82673C5.45816 7.72255 3.56317 6.25 1.3917 6.25H1ZM6.73967 12.75L11.7103 32.25H37.8074C40.1878 32.25 42.2703 30.6485 42.8815 28.3478L46.6075 14.3209C46.8182 13.5276 46.2202 12.75 45.3994 12.75H6.73967ZM15 43.5C15.8284 43.5 16.5 42.8284 16.5 42C16.5 41.1716 15.8284 40.5 15 40.5C14.1716 40.5 13.5 41.1716 13.5 42C13.5 42.8284 14.1716 43.5 15 43.5ZM15 45C16.6569 45 18 43.6569 18 42C18 40.3431 16.6569 39 15 39C13.3431 39 12 40.3431 12 42C12 43.6569 13.3431 45 15 45ZM38.5 42C38.5 42.8284 37.8284 43.5 37 43.5C36.1716 43.5 35.5 42.8284 35.5 42C35.5 41.1716 36.1716 40.5 37 40.5C37.8284 40.5 38.5 41.1716 38.5 42ZM40 42C40 43.6569 38.6569 45 37 45C35.3431 45 34 43.6569 34 42C34 40.3431 35.3431 39 37 39C38.6569 39 40 40.3431 40 42Z" fill="#03020D"/>
69
+ </g>
70
+ <defs>
71
+ <clipPath id="clip0">
72
+ <rect width="48" height="48" fill="white"/>
73
+ </clipPath>
74
+ </defs>
75
+ </symbol><symbol fill="none" id="sprite-icon-display-sla" viewBox="0 0 48 48"><title>sprite-icon-display-sla</title>
76
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M38.5 42C38.5 42.2761 38.2761 42.5 38 42.5H10C9.72386 42.5 9.5 42.2761 9.5 42V6C9.5 5.72386 9.72386 5.5 10 5.5H30.3431C31.0062 5.5 31.6421 5.76339 32.1109 6.23223L37.7678 11.8891C38.2366 12.3579 38.5 12.9938 38.5 13.6569V42ZM10 44H38C39.1046 44 40 43.1046 40 42V13.6569C40 12.596 39.5786 11.5786 38.8284 10.8284L33.1716 5.17157C32.4214 4.42143 31.404 4 30.3431 4H10C8.89543 4 8 4.89543 8 6V42C8 43.1046 8.89543 44 10 44ZM24 19.6933L25.3733 22.7833L28.8177 23.2139L26.3807 25.7118L27.015 29.0567L24.1 27.366L21.1132 29.0983L21.7103 25.5754L19.2775 23.202L22.6267 22.7833L24 19.6933ZM29.1 32L28 26.2L32 22.1L26.4 21.4L24 16L21.6 21.4L16 22.1L20.1 26.1L19.1 32L24.1 29.1L29.1 32Z" fill="#03020D"/>
77
+ </symbol><symbol fill="none" id="sprite-icon-display-tech-account-comms" viewBox="0 0 48 48"><title>sprite-icon-display-tech-account-comms</title>
78
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M3.25 10C3.25 7.37665 5.37665 5.25 8 5.25H40C42.6234 5.25 44.75 7.37665 44.75 10V40.9554C44.75 42.4116 43.0751 43.2308 41.9256 42.3367L34.7427 36.75H8C5.37665 36.75 3.25 34.6234 3.25 32V10ZM8 6.75C6.20507 6.75 4.75 8.20507 4.75 10V32C4.75 33.7949 6.20507 35.25 8 35.25H35.2573L42.8465 41.1527C43.0107 41.2804 43.25 41.1634 43.25 40.9554V10C43.25 8.20508 41.7949 6.75 40 6.75H8ZM21.6468 10.7301C21.9083 10.4686 22.2977 10.25 22.75 10.25H25.25C25.7023 10.25 26.0917 10.4686 26.3532 10.7301C26.6148 10.9916 26.8333 11.3811 26.8333 11.8333V12.3782C27.2541 12.5239 27.6929 12.6898 28.1198 12.9029L28.4697 12.553C29.0959 11.9268 30.0708 11.9268 30.697 12.553L32.447 14.303C33.0732 14.9292 33.0732 15.9041 32.447 16.5303L32.1039 16.8734C32.323 17.2846 32.5121 17.72 32.6556 18.1667H33.1667C33.6189 18.1667 34.0084 18.3852 34.2699 18.6468C34.5314 18.9083 34.75 19.2977 34.75 19.75V22.25C34.75 22.7023 34.5314 23.0917 34.2699 23.3532C34.0084 23.6148 33.6189 23.8333 33.1667 23.8333H32.6218C32.4761 24.2541 32.3102 24.6929 32.0971 25.1198L32.447 25.4697C33.0732 26.0959 33.0732 27.0708 32.447 27.697L30.697 29.447C30.0708 30.0732 29.0959 30.0732 28.4697 29.447L28.1266 29.1039C27.7154 29.323 27.28 29.5121 26.8333 29.6556V30.1667C26.8333 30.6189 26.6148 31.0084 26.3532 31.2699C26.0917 31.5314 25.7023 31.75 25.25 31.75H22.75C22.2977 31.75 21.9083 31.5314 21.6468 31.2699C21.3852 31.0084 21.1667 30.6189 21.1667 30.1667V29.6218C20.7459 29.4761 20.3071 29.3102 19.8802 29.0971L19.5303 29.447C18.9041 30.0732 17.9292 30.0732 17.303 29.447L15.553 27.697C14.9268 27.0708 14.9268 26.0959 15.553 25.4697L15.8961 25.1266C15.677 24.7154 15.4879 24.28 15.3444 23.8333H14.8333C14.3811 23.8333 13.9916 23.6148 13.7301 23.3532C13.4686 23.0917 13.25 22.7023 13.25 22.25V19.75C13.25 19.2977 13.4686 18.9083 13.7301 18.6468C13.9916 18.3852 14.3811 18.1667 14.8333 18.1667H15.3782C15.5239 17.7459 15.6898 17.3071 15.9029 16.8802L15.553 16.5303C14.9268 15.9041 14.9268 14.9292 15.553 14.303L17.303 12.553C17.9292 11.9268 18.9041 11.9268 19.5303 12.553L19.8802 12.9029C20.3071 12.6898 20.7459 12.5239 21.1667 12.3782V11.8333C21.1667 11.3811 21.3852 10.9916 21.6468 10.7301ZM22.6667 11.8473V13.4572L22.1538 13.6282C21.3888 13.8832 20.7257 14.1079 20.1475 14.4693L19.6416 14.7855L18.4697 13.6137C18.4531 13.5971 18.4401 13.5901 18.4329 13.5871C18.4256 13.584 18.4203 13.5833 18.4167 13.5833C18.413 13.5833 18.4078 13.584 18.4004 13.5871C18.3932 13.5901 18.3802 13.5971 18.3637 13.6137L16.6137 15.3637C16.5971 15.3802 16.5901 15.3932 16.5871 15.4004C16.584 15.4078 16.5833 15.413 16.5833 15.4167C16.5833 15.4203 16.584 15.4256 16.5871 15.4329C16.5901 15.4401 16.5971 15.4531 16.6137 15.4697L17.7855 16.6416L17.4693 17.1475C17.1079 17.7257 16.8832 18.3888 16.6282 19.1538L16.4572 19.6667H14.8473L14.8445 19.6679C14.8313 19.6741 14.8113 19.6869 14.7907 19.7074C14.7702 19.728 14.7574 19.748 14.7513 19.7612L14.75 19.764V22.236L14.7513 22.2388C14.7574 22.252 14.7702 22.272 14.7907 22.2926C14.8113 22.3131 14.8313 22.3259 14.8445 22.3321L14.8473 22.3333H16.5183L16.6488 22.9206C16.7936 23.5721 17.0887 24.2434 17.4693 24.8525L17.7855 25.3584L16.6137 26.5303C16.5971 26.5469 16.5901 26.5599 16.5871 26.5671C16.584 26.5744 16.5833 26.5797 16.5833 26.5833C16.5833 26.587 16.584 26.5922 16.5871 26.5996C16.5901 26.6068 16.5971 26.6198 16.6137 26.6363L18.3637 28.3863C18.3802 28.4029 18.3932 28.4099 18.4004 28.4129C18.4078 28.416 18.413 28.4167 18.4167 28.4167C18.4203 28.4167 18.4256 28.416 18.4329 28.4129C18.4401 28.4099 18.4531 28.4029 18.4697 28.3863L19.6416 27.2145L20.1475 27.5307C20.7257 27.8921 21.3888 28.1168 22.1538 28.3718L22.6667 28.5428V30.1527L22.6679 30.1555C22.6741 30.1687 22.6869 30.1887 22.7074 30.2093C22.728 30.2298 22.748 30.2426 22.7612 30.2487L22.764 30.25H25.236L25.2388 30.2487C25.252 30.2426 25.272 30.2298 25.2926 30.2093C25.3131 30.1887 25.3259 30.1687 25.3321 30.1555L25.3333 30.1527V28.4817L25.9206 28.3512C26.5721 28.2064 27.2434 27.9113 27.8525 27.5307L28.3584 27.2145L29.5303 28.3863C29.5469 28.4029 29.5599 28.4099 29.5671 28.4129C29.5744 28.416 29.5797 28.4167 29.5833 28.4167C29.587 28.4167 29.5922 28.416 29.5996 28.4129C29.6068 28.4099 29.6198 28.4029 29.6363 28.3863L31.3863 26.6363C31.4029 26.6198 31.4099 26.6068 31.4129 26.5996C31.416 26.5922 31.4167 26.587 31.4167 26.5833C31.4167 26.5813 31.4165 26.5788 31.4158 26.5758C31.4152 26.5733 31.4143 26.5704 31.4129 26.5671C31.4099 26.5599 31.4029 26.5469 31.3863 26.5303L30.2145 25.3584L30.5307 24.8525C30.8921 24.2743 31.1168 23.6112 31.3718 22.8462L31.5428 22.3333H33.1527L33.1555 22.3321C33.1687 22.3259 33.1887 22.3131 33.2093 22.2926C33.2298 22.272 33.2426 22.252 33.2487 22.2388L33.25 22.236V19.764L33.2487 19.7612C33.2426 19.748 33.2298 19.728 33.2093 19.7074C33.1887 19.6869 33.1687 19.6741 33.1555 19.6679L33.1527 19.6667H31.4817L31.3512 19.0794C31.2064 18.4279 30.9113 17.7566 30.5307 17.1475L30.2145 16.6416L31.3863 15.4697C31.4029 15.4531 31.4099 15.4401 31.4129 15.4329C31.416 15.4256 31.4167 15.4203 31.4167 15.4167C31.4167 15.413 31.416 15.4078 31.4129 15.4004C31.4099 15.3932 31.4029 15.3802 31.3863 15.3637L29.6363 13.6137C29.6198 13.5971 29.6068 13.5901 29.5996 13.5871C29.5922 13.584 29.587 13.5833 29.5833 13.5833C29.5797 13.5833 29.5744 13.584 29.5671 13.5871C29.5599 13.5901 29.5469 13.5971 29.5303 13.6137L28.3584 14.7855L27.8525 14.4693C27.2743 14.1079 26.6112 13.8832 25.8462 13.6282L25.3333 13.4572V11.8473L25.3321 11.8445C25.3259 11.8313 25.3131 11.8113 25.2926 11.7907C25.272 11.7702 25.252 11.7574 25.2388 11.7513L25.236 11.75H22.764L22.7612 11.7513C22.748 11.7574 22.728 11.7702 22.7074 11.7907C22.6869 11.8113 22.6741 11.8313 22.6679 11.8445L22.6667 11.8473ZM25.5 21C25.5 21.8284 24.8284 22.5 24 22.5C23.1716 22.5 22.5 21.8284 22.5 21C22.5 20.1716 23.1716 19.5 24 19.5C24.8284 19.5 25.5 20.1716 25.5 21ZM27 21C27 22.6569 25.6569 24 24 24C22.3431 24 21 22.6569 21 21C21 19.3431 22.3431 18 24 18C25.6569 18 27 19.3431 27 21Z" fill="#03020D"/>
79
+ </symbol><symbol id="sprite-icon-gui-ably-badge" viewBox="0 0 24 24"><title>sprite-icon-gui-ably-badge</title>
80
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M2.77068 19.6145L11.8483 3H9.39923L1 18.3727L2.77068 19.6145ZM21.0524 19.6145L11.9748 3H14.4238L22.823 18.3727L21.0524 19.6145ZM11.9115 12.6525L20.9259 19.7123L19.0862 21L11.9115 15.3833L4.73681 21L2.89715 19.7123L11.9115 12.6525Z"/>
81
+ </symbol><symbol fill="none" id="sprite-icon-gui-burger-menu" viewBox="0 0 24 24"><title>sprite-icon-gui-burger-menu</title>
82
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M24 13H0V11H24V13Z" fill="currentColor"/>
83
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M24 6H0V4H24V6Z" fill="currentColor"/>
84
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M24 20H0V18H24V20Z" fill="currentColor"/>
85
+ </symbol><symbol fill="none" id="sprite-icon-gui-close" viewBox="0 0 24 24"><title>sprite-icon-gui-close</title>
86
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M13.4142 12L22.7071 21.2929L21.2929 22.7071L12 13.4142L2.70711 22.7071L1.29289 21.2929L10.5858 12L1.29289 2.70712L2.70711 1.29291L12 10.5858L21.2929 1.29291L22.7071 2.70712L13.4142 12Z" fill="currentColor"/>
87
+ </symbol><symbol fill="none" id="sprite-icon-gui-disclosure-arrow" viewBox="0 0 24 24"><title>sprite-icon-gui-disclosure-arrow</title>
88
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="currentColor" d="M12.9046 12L9.00671 16.331L10.4933 17.669L14.9933 12.669L14.9933 11.331L10.4933 6.33105L9.00671 7.66898L12.9046 12Z"/>
89
+ </symbol><symbol fill="none" id="sprite-icon-gui-enlarge" viewBox="0 0 24 24"><title>sprite-icon-gui-enlarge</title>
90
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M17 10.5C17 14.0899 14.0899 17 10.5 17C6.91015 17 4 14.0899 4 10.5C4 6.91015 6.91015 4 10.5 4C14.0899 4 17 6.91015 17 10.5ZM15.7618 17.1761C14.3145 18.3183 12.4869 19 10.5 19C5.80558 19 2 15.1944 2 10.5C2 5.80558 5.80558 2 10.5 2C15.1944 2 19 5.80558 19 10.5C19 12.4869 18.3183 14.3146 17.176 15.7619L22.7071 21.293L21.2929 22.7072L15.7618 17.1761ZM9.5 9.5V6.5H11.5V9.5H14.5V11.5H11.5V14.5H9.5V11.5H6.5V9.5H9.5Z" fill="currentColor"/>
91
+ </symbol><symbol fill="none" id="sprite-icon-gui-external-link" viewBox="0 0 24 24"><title>sprite-icon-gui-external-link</title>
92
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M3 4C3 3.44772 3.44772 3 4 3H12V1H4C2.34315 1 1 2.34315 1 4V20C1 21.6569 2.34315 23 4 23H20C21.6569 23 23 21.6569 23 20V12.4762H21V20C21 20.5523 20.5523 21 20 21H4C3.44772 21 3 20.5523 3 20V4ZM15 3H19.6707L11.775 11.3113L13.225 12.6888L21 4.50456V10H23V2L22 1H15V3Z" fill="currentColor"/>
93
+ </symbol><symbol fill="none" id="sprite-icon-gui-link-arrow" viewBox="0 0 24 24"><title>sprite-icon-gui-link-arrow</title>
94
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M16.9979 11H4V13H16.9979L14 16.331L15.4866 17.6689L19.9866 12.6689V11.331L15.4866 6.33099L14 7.66892L16.9979 11Z" fill="currentColor"/>
95
+ </symbol><symbol fill="none" id="sprite-icon-gui-minus" viewBox="0 0 24 24"><title>sprite-icon-gui-minus</title>
96
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M22 13H2V11H22V13Z" fill="currentColor"/>
97
+ </symbol><symbol fill="none" id="sprite-icon-gui-plus" viewBox="0 0 24 24"><title>sprite-icon-gui-plus</title>
98
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M11 13V22H13V13H22V11H13V2H11V11H2V13H11Z" fill="currentColor"/>
99
+ </symbol><symbol fill="none" id="sprite-icon-gui-search" viewBox="0 0 24 24"><title>sprite-icon-gui-search</title>
100
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M17 10.5C17 14.0899 14.0899 17 10.5 17C6.91015 17 4 14.0899 4 10.5C4 6.91015 6.91015 4 10.5 4C14.0899 4 17 6.91015 17 10.5ZM15.7618 17.176C14.3145 18.3183 12.4869 19 10.5 19C5.80558 19 2 15.1944 2 10.5C2 5.80558 5.80558 2 10.5 2C15.1944 2 19 5.80558 19 10.5C19 12.4869 18.3183 14.3145 17.176 15.7618L22.7071 21.2929L21.2929 22.7071L15.7618 17.176Z" fill="currentColor"/>
101
+ </symbol><symbol fill="none" id="sprite-icon-gui-tick" viewBox="0 0 24 24"><title>sprite-icon-gui-tick</title>
102
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M18.8321 6.55471L10.8321 18.5547L9.21913 18.6247L5.21913 13.6247L6.78087 12.3753L9.92655 16.3074L17.1679 5.44531L18.8321 6.55471Z" fill="currentColor"/>
103
+ </symbol><symbol id="sprite-icon-gui-warning" viewBox="0 0 24 24"><title>sprite-icon-gui-warning</title>
104
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M10.2302 3.2156C10.98 1.79092 13.02 1.79093 13.7698 3.2156L22.1135 19.0685C22.8144 20.4003 21.8487 22 20.3436 22H3.65636C2.15134 22 1.18557 20.4003 1.88653 19.0685L10.2302 3.2156ZM12 4.14709L3.65637 20L20.3436 20L12 4.14709Z"/>
105
+ <rect x="11" y="9" width="2" height="6"/>
106
+ <rect x="11" y="16" width="2" height="2"/>
107
+ </symbol><symbol id="sprite-linkedin" viewBox="0 0 24 24"><title>sprite-linkedin</title>
108
+ <path d="M24 1.76471V22.2353C24 22.7033 23.8141 23.1522 23.4831 23.4831C23.1522 23.8141 22.7033 24 22.2353 24H1.76471C1.29668 24 0.847817 23.8141 0.51687 23.4831C0.185924 23.1522 0 22.7033 0 22.2353L0 1.76471C0 1.29668 0.185924 0.847817 0.51687 0.51687C0.847817 0.185924 1.29668 0 1.76471 0L22.2353 0C22.7033 0 23.1522 0.185924 23.4831 0.51687C23.8141 0.847817 24 1.29668 24 1.76471ZM7.05882 9.17647H3.52941V20.4706H7.05882V9.17647ZM7.37647 5.29412C7.37833 5.02715 7.32759 4.76242 7.22714 4.51506C7.12669 4.2677 6.9785 4.04255 6.79103 3.85246C6.60357 3.66237 6.38049 3.51107 6.13455 3.4072C5.88861 3.30332 5.62462 3.24891 5.35765 3.24706H5.29412C4.7512 3.24706 4.23053 3.46273 3.84663 3.84663C3.46273 4.23053 3.24706 4.7512 3.24706 5.29412C3.24706 5.83703 3.46273 6.35771 3.84663 6.74161C4.23053 7.1255 4.7512 7.34118 5.29412 7.34118C5.56111 7.34774 5.82678 7.30164 6.07594 7.2055C6.32511 7.10936 6.55289 6.96506 6.74627 6.78086C6.93965 6.59666 7.09484 6.37616 7.20297 6.13196C7.3111 5.88775 7.37006 5.62464 7.37647 5.35765V5.29412ZM20.4706 13.6094C20.4706 10.2141 18.3106 8.89412 16.1647 8.89412C15.4621 8.85894 14.7626 9.00858 14.1358 9.32814C13.5091 9.64769 12.9771 10.126 12.5929 10.7153H12.4941V9.17647H9.17647V20.4706H12.7059V14.4635C12.6549 13.8483 12.8487 13.2378 13.2452 12.7646C13.6417 12.2915 14.2089 11.9939 14.8235 11.9365H14.9576C16.08 11.9365 16.9129 12.6424 16.9129 14.4212V20.4706H20.4424L20.4706 13.6094Z"/>
109
+ </symbol><symbol id="sprite-quote" viewBox="0 0 25 19"><title>sprite-quote</title>
110
+ <path d="M8.78125 19H0V12.7188C0 10.1771 0.21875 8.17708 0.65625 6.71875C1.11458 5.23958 1.94792 3.91667 3.15625 2.75C4.36458 1.58333 5.90625 0.666667 7.78125 0L9.5 3.625C7.75 4.20833 6.48958 5.02083 5.71875 6.0625C4.96875 7.10417 4.57292 8.48958 4.53125 10.2188H8.78125V19ZM23.4375 19H14.6562V12.7188C14.6562 10.1562 14.875 8.14583 15.3125 6.6875C15.7708 5.22917 16.6042 3.91667 17.8125 2.75C19.0417 1.58333 20.5833 0.666667 22.4375 0L24.1562 3.625C22.4062 4.20833 21.1458 5.02083 20.375 6.0625C19.625 7.10417 19.2292 8.48958 19.1875 10.2188H23.4375V19Z"/>
111
+ </symbol><symbol id="sprite-twitter" viewBox="0 0 24 20"><title>sprite-twitter</title>
112
+ <path d="M24 2.304C23.1129 2.7 22.1658 2.964 21.1708 3.084C22.1898 2.472 22.969 1.512 23.3287 0.36C22.3816 0.924 21.3267 1.332 20.1998 1.56C19.3007 0.6 18.03 0 16.6034 0C13.8821 0 11.6883 2.208 11.6883 4.92C11.6883 5.304 11.7363 5.676 11.8202 6.048C7.73227 5.844 4.11189 3.888 1.67832 0.9C1.25874 1.632 1.00699 2.472 1.00699 3.372C1.00699 5.076 1.87013 6.588 3.2008 7.476C2.3976 7.452 1.63037 7.224 0.971029 6.864C0.971029 6.888 0.971029 6.9 0.971029 6.924C0.971029 9.312 2.66134 11.304 4.91509 11.748C4.50749 11.856 4.06394 11.916 3.62038 11.916C3.30869 11.916 2.997 11.88 2.6973 11.832C3.32068 13.788 5.14286 15.216 7.28871 15.252C5.61039 16.572 3.48851 17.364 1.17483 17.364C0.779221 17.364 0.383616 17.34 0 17.292C2.18182 18.684 4.75924 19.5 7.54046 19.5C16.5914 19.5 21.5305 12 21.5305 5.496C21.5305 5.28 21.5305 5.076 21.5185 4.86C22.5015 4.164 23.3407 3.3 24 2.304Z"/>
113
+ </symbol></svg>