mp-design-system 1.0.4 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. package/dist/build/arc.abe174a6.svg +1 -0
  2. package/dist/build/concentric.465e6b4d.svg +1 -0
  3. package/dist/build/crystal.8300dbe3.svg +1 -0
  4. package/dist/build/{dots-pattern.1b95f054.svg → dots-pattern.1bae0e23.svg} +1 -1
  5. package/dist/build/js/app.js +1 -1
  6. package/dist/build/js/app.js.map +1 -1
  7. package/dist/build/scss/library.css +1 -1
  8. package/dist/build/scss/library.css.map +1 -1
  9. package/dist/build/scss/main.css +1 -1
  10. package/dist/build/scss/main.css.map +1 -1
  11. package/package.json +1 -1
  12. package/src/_data/config.js +1 -1
  13. package/src/_headers +9 -0
  14. package/src/_includes/components/card/card.config.js +10 -6
  15. package/src/_includes/components/component/preview-cards-three-alt.njk +1 -1
  16. package/src/_includes/components/component/preview-cards-three.njk +1 -1
  17. package/src/_includes/components/component/preview-cards-two.njk +1 -1
  18. package/src/_includes/components/component/preview-content-width.njk +1 -1
  19. package/src/_includes/components/component/preview-default.njk +1 -1
  20. package/src/_includes/components/component/preview-form.njk +1 -1
  21. package/src/_includes/components/dynamic-form/dynamic-form.config.js +16 -0
  22. package/src/_includes/components/dynamic-form/dynamic-form.njk +319 -0
  23. package/src/_includes/components/dynamic-form/dynamic-form.scss +77 -0
  24. package/src/_includes/components/dynamic-form/macro.njk +5 -0
  25. package/src/_includes/components/header/header.config.js +30 -0
  26. package/src/_includes/components/header/header.njk +15 -0
  27. package/src/_includes/components/input/combobox.njk +17 -0
  28. package/src/_includes/components/input/combobox.scss +31 -0
  29. package/src/_includes/components/input/combox.config.js +49 -0
  30. package/src/_includes/components/input/input.config.js +1 -1
  31. package/src/_includes/components/input/input.njk +0 -2
  32. package/src/_includes/components/input/macro.njk +14 -10
  33. package/src/_includes/components/input/radio.scss +9 -0
  34. package/src/_includes/components/off-canvas/macro.njk +5 -0
  35. package/src/_includes/components/off-canvas/off-canvas.config.js +28 -0
  36. package/src/_includes/components/off-canvas/off-canvas.njk +28 -0
  37. package/src/{assets/scss/objects → _includes/components/off-canvas}/off-canvas.scss +14 -4
  38. package/src/_includes/includes/color-swatches.njk +220 -0
  39. package/src/_includes/includes/system-footer.njk +1 -1
  40. package/src/_includes/library-navigation/brand-nav.njk +3 -2
  41. package/src/_includes/navigation/store.njk +29 -0
  42. package/src/_includes/system.njk +1 -1
  43. package/src/assets/js/app.js +2 -0
  44. package/src/assets/js/imports/combobox.js +66 -0
  45. package/src/assets/js/imports/off-canvas.js +195 -74
  46. package/src/assets/scss/components/index.scss +1 -0
  47. package/src/assets/scss/library.scss +4 -2
  48. package/src/assets/scss/objects/index.scss +0 -1
  49. package/src/assets/svg/arc.svg +1 -1
  50. package/src/assets/svg/concentric.svg +1 -1
  51. package/src/assets/svg/crystal.svg +1 -1
  52. package/src/assets/svg/dots-pattern.svg +1 -1
  53. package/src/brand/colors.njk +2 -216
  54. package/src/brand/index.njk +7 -6
  55. package/src/brand/requirements.md +98 -0
  56. package/src/brand/{downloads.njk → resources.njk} +15 -1
  57. package/src/index.njk +13 -10
  58. package/src/quickstart.md +41 -0
  59. package/dist/build/arc.a8e07ecd.svg +0 -1
  60. package/dist/build/concentric.05eaed9c.svg +0 -1
  61. package/dist/build/crystal.a90c9e1f.svg +0 -1
  62. package/src/brand/basics.md +0 -36
  63. package/src/checklist.md +0 -71
  64. package/src/patterns/off-canvas.njk +0 -42
@@ -1,103 +1,224 @@
1
- // Add click event listeners to each toggle button
1
+ // Function to initialize off-canvas behavior
2
2
  function OffCanvas() {
3
- const toggleButtons = Array.from(document.querySelectorAll('.c-button--off-canvas-toggle'));
4
- toggleButtons.forEach((button) => {
5
- button.addEventListener('click', handleToggleClick);
6
- });
3
+ // Select all elements that trigger off-canvas behavior
4
+ const toggles = document.querySelectorAll(".c-off-canvas__toggle");
5
+
6
+ // Iterate through each toggle element
7
+ if (toggles.length) {
8
+ toggles.forEach(toggle => {
9
+ // Determine initial visibility state and handle click event
10
+ handleOffCanvas(toggle, isVisible(toggle));
11
+ toggle.addEventListener('click', () => toggleOffCanvas(toggle));
12
+ });
13
+
14
+ // Add event listener for scroll events to check visibility
15
+ // window.addEventListener('scroll', () => {
16
+ // toggles.forEach(toggle => {
17
+ // handleOffCanvas(toggle, isVisible(toggle));
18
+ // });
19
+ // });
20
+
21
+ // Add event listener for resize events to check visibility
22
+ window.addEventListener('resize', () => {
23
+ toggles.forEach(toggle => {
24
+ handleOffCanvas(toggle, isVisible(toggle));
25
+ });
26
+ });
27
+ }
7
28
  }
8
29
 
9
- // Function to handle the toggle button click
10
- function handleToggleClick() {
11
- const target = this.getAttribute('data-target');
12
- const offCanvas = document.getElementById(target);
13
- openOffCanvas(offCanvas);
30
+ // Function to check if an element is currently visible on the page
31
+ function isVisible(element) {
32
+ // Check element's position and styles for visibility
33
+ const rect = element.getBoundingClientRect();
34
+ const style = window.getComputedStyle(element);
35
+ return (
36
+ rect.top >= 0 &&
37
+ rect.left >= 0 &&
38
+ rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
39
+ rect.right <= (window.innerWidth || document.documentElement.clientWidth) &&
40
+ style.display !== 'none' &&
41
+ style.visibility !== 'hidden'
42
+ );
14
43
  }
15
44
 
16
- // Function to open the off-canvas drawer
17
- function openOffCanvas(offCanvas) {
18
- const offCanvasList = document.querySelectorAll('.o-off-canvas');
19
- const isOpen = offCanvas.classList.contains('o-off-canvas--open');
20
-
21
- // Close other off-canvas drawers only if the target is not already open
22
- if (!isOpen) {
23
- offCanvasList.forEach((drawer) => {
24
- if (drawer !== offCanvas) {
25
- closeOffCanvas(drawer);
26
- }
27
- });
45
+ // Function to handle off-canvas behavior based on visibility
46
+ function handleOffCanvas(toggle, isVisible) {
47
+ const target = document.getElementById(toggle.getAttribute('data-target'));
48
+ if (isVisible === true) {
49
+ createOffCanvas(target);
50
+ } else {
51
+ removeOffCanvas(target);
28
52
  }
53
+ }
29
54
 
30
- // Open the target off-canvas drawer
31
- offCanvas.classList.add('o-off-canvas--open');
32
- offCanvas.setAttribute('aria-hidden', 'false');
55
+ // Function to create off canvas
56
+ function createOffCanvas(target) {
57
+ // Add necessary classes and attributes for off-canvas display
58
+ target.classList.add('c-off-canvas');
59
+ target.setAttribute('tabindex', '-1');
60
+ target.setAttribute('aria-hidden', 'true');
61
+
62
+ // Extract specific sections of the off-canvas content
63
+ const targetHeader = target.querySelector('[data-off-canvas="header"]');
64
+ const targetMain = target.querySelector('[data-off-canvas="main"]');
65
+ const targetFooter = target.querySelector('[data-off-canvas="footer"]');
66
+
67
+ // Extract content from the sections
68
+ const targetHeaderContent = targetHeader !== null ? targetHeader.outerHTML : '';
69
+ const targetMainContent = targetMain !== null ? targetMain.outerHTML : '';
70
+ const targetFooterContent = targetFooter !== null ? targetFooter.outerHTML : '';
71
+
72
+ // Replace the target's content with off-canvas structure
73
+ target.innerHTML = `
74
+ <div class="c-off-canvas__backdrop" role="presentation"></div>
75
+ <div class="c-off-canvas__content" role="dialog" aria-modal="true" aria-labelledby="offCanvasHeader">
76
+ <header id="offCanvasHeader" class="c-off-canvas__header">${targetHeaderContent}</header>
77
+ <main class="c-off-canvas__main">${targetMainContent}</main>
78
+ <footer class="c-off-canvas__footer">
79
+ ${targetFooterContent}
80
+ <button class="mp c-twi c-twi--left c-off-canvas__close" data-off-canvas-close="true">
81
+ <span>Cancel</span>
82
+ <svg role="img" aria-hidden="true" focusable="false" class="mp c-icon c-icon--cross">
83
+ <use xlink:href="/static/svg/sprite.svg#cross"></use>
84
+ </svg>
85
+ </button>
86
+ </footer>
87
+ </div>
88
+ `;
89
+ }
33
90
 
34
- // Add click event listener to the backdrop to close the off-canvas drawer
35
- const backdrop = offCanvas.querySelector('.o-off-canvas__backdrop');
36
- backdrop.addEventListener('click', handleBackdropClick);
91
+ // Function to remove off-canvas layout
92
+ function removeOffCanvas(target) {
93
+ // Remove classes and attributes for off-canvas display
94
+ target.classList.remove('c-off-canvas', 'c-off-canvas--active');
95
+ target.removeAttribute('tabindex');
96
+ target.removeAttribute('aria-hidden');
97
+
98
+ // Remove backdrop element if present
99
+ const targetBackdrop = target.querySelector('.c-off-canvas__backdrop');
100
+ if (targetBackdrop) {
101
+ targetBackdrop.remove();
102
+ }
37
103
 
38
- // Add keydown event listener to close the off-canvas drawer with the Esc key
39
- document.addEventListener('keydown', handleKeyDown);
104
+ // Restore original content by removing off-canvas structure
105
+ const targetContent = target.querySelector('.c-off-canvas__content');
106
+ if (targetContent) {
107
+ while (targetContent.firstChild) {
108
+ target.insertBefore(targetContent.firstChild, targetContent);
109
+ }
110
+ target.removeChild(targetContent);
111
+ }
40
112
 
41
- // Prevent background scroll
42
- document.body.style.overflowY = 'hidden';
43
- }
113
+ const targetHeader = target.querySelector('.c-off-canvas__header');
114
+ if (targetHeader) {
115
+ while (targetHeader.firstChild) {
116
+ target.insertBefore(targetHeader.firstChild, targetHeader);
117
+ }
118
+ target.removeChild(targetHeader);
119
+ }
44
120
 
45
- // Function to handle the backdrop click
46
- function handleBackdropClick() {
47
- const offCanvas = this.closest('.o-off-canvas');
48
- closeOffCanvas(offCanvas);
49
- }
121
+ const targetMain = target.querySelector('.c-off-canvas__main');
122
+ if (targetMain) {
123
+ while (targetMain.firstChild) {
124
+ target.insertBefore(targetMain.firstChild, targetMain);
125
+ }
126
+ target.removeChild(targetMain);
127
+ }
50
128
 
51
- // Function to handle the keydown event
52
- function handleKeyDown(event) {
53
- if (event.key === 'Escape') {
54
- const openDrawer = document.querySelector('.o-off-canvas--open');
55
- if (openDrawer) {
56
- closeOffCanvas(openDrawer);
129
+ const targetFooter = target.querySelector('.c-off-canvas__footer');
130
+ if (targetFooter) {
131
+ while (targetFooter.firstChild) {
132
+ target.insertBefore(targetFooter.firstChild, targetFooter);
57
133
  }
134
+ target.removeChild(targetFooter);
135
+ }
136
+
137
+ // Remove close button element if present
138
+ const targetClose = target.querySelector('.c-off-canvas__close');
139
+ if (targetClose) {
140
+ targetClose.remove();
141
+ }
142
+ }
143
+
144
+ // Function to toggle off-canvas visibility
145
+ function toggleOffCanvas(toggle) {
146
+ const target = document.getElementById(toggle.getAttribute('data-target'));
147
+
148
+ // Check if the target is already open or closed
149
+ if (!target.classList.contains('c-off-canvas--active')) {
150
+ openOffCanvas(toggle, target);
151
+ } else if (target.classList.contains('c-off-canvas--active')) {
152
+ closeOffCanvas(target);
58
153
  }
59
154
  }
60
155
 
61
- // Function to close the off-canvas drawer
62
- function closeOffCanvas(offCanvas) {
63
- offCanvas.classList.remove('o-off-canvas--open');
64
- offCanvas.setAttribute('aria-hidden', 'true');
156
+ function openOffCanvas(toggle, target) {
157
+ // Add classes and attributes for open off-canvas
158
+ toggle.setAttribute('aria-expanded', 'true');
159
+ target.classList.add('c-off-canvas--active');
160
+ target.setAttribute('aria-hidden', 'false');
161
+
162
+ // Add event listener for backdrop clicks
163
+ const offCanvasBackdrop = target.querySelector('.c-off-canvas__backdrop');
164
+ if(offCanvasBackdrop) {
165
+ offCanvasBackdrop.addEventListener('click', handleBackdropClick);
166
+ }
167
+
168
+ // Add event listener forclose button clicks
169
+ const offCanvasCloseElements = target.querySelectorAll('[data-off-canvas-close="true"]');
170
+ if (offCanvasCloseElements.length > 0) {
171
+ offCanvasCloseElements.forEach((offCanvasClose) => {
172
+ offCanvasClose.addEventListener('click', handleCloseClick);
173
+ });
174
+ }
65
175
 
66
- // Remove backdrop click event listener when closing the off-canvas drawer
67
- const backdrop = offCanvas.querySelector('.o-off-canvas__backdrop');
68
- backdrop.removeEventListener('click', handleBackdropClick);
176
+ // Add event listener for Escape key press
177
+ document.addEventListener('keydown', handleKeyDown, { once: true });
69
178
 
70
- // Remove keydown event listener when closing the off-canvas drawer
71
- document.removeEventListener('keydown', handleKeyDown);
179
+ // Adjust body overflow to prevent scrolling
180
+ document.body.style.overflowY = 'hidden';
72
181
 
73
- // Allow background scroll
74
- document.body.style.overflowY = '';
182
+ // Close other open off-canvas elements
183
+ const allOffCanvasElementsExceptCurrent = Array.from(document.querySelectorAll('.c-off-canvas')).filter(offCanvas => offCanvas !== target);
184
+ if (allOffCanvasElementsExceptCurrent.length > 0) {
185
+ allOffCanvasElementsExceptCurrent.forEach((offCanvas) => {
186
+ closeOffCanvas(offCanvas);
187
+ });
188
+ }
75
189
  }
76
190
 
77
- // Update button functionality
78
- const updateButton = document.querySelectorAll('.o-off-canvas__update');
79
- updateButton.forEach((button) => {
80
- button.addEventListener('click', handleUpdateButtonClick);
81
- });
191
+ // Function to close an off-canvas
192
+ function closeOffCanvas(target) {
193
+ // Remove classes and attributes for open off-canvas
194
+ document.querySelector('[data-target="' + target.id + '"').setAttribute('aria-expanded', 'false');
195
+ target.classList.remove('c-off-canvas--active');
196
+ target.setAttribute('aria-hidden', 'true');
82
197
 
83
- // Handle the update button click
84
- function handleUpdateButtonClick() {
85
- // Save the options somewhere
86
- const offCanvas = this.closest('.o-off-canvas');
198
+ // Restore body overflow
199
+ document.body.style.overflowY = '';
200
+ }
201
+
202
+ // Function to handle backdrop click
203
+ function handleBackdropClick() {
204
+ const offCanvas = this.closest('.c-off-canvas');
87
205
  closeOffCanvas(offCanvas);
88
206
  }
89
207
 
90
- // Close button functionality
91
- const closeButton = document.querySelectorAll('.o-off-canvas__close');
92
- closeButton.forEach((button) => {
93
- button.addEventListener('click', handleCloseButtonClick);
94
- });
208
+ // Function to handle Escape key press
209
+ function handleKeyDown(event) {
210
+ if (event.key === 'Escape') {
211
+ const activeOffCanvas = document.querySelector('.c-off-canvas--active');
212
+ if (activeOffCanvas) {
213
+ closeOffCanvas(activeOffCanvas);
214
+ }
215
+ }
216
+ }
95
217
 
96
- // Handle the close button click
97
- function handleCloseButtonClick() {
98
- const offCanvas = this.closest('.o-off-canvas');
218
+ // Function to handle close button click
219
+ function handleCloseClick() {
220
+ const offCanvas = this.closest('.c-off-canvas');
99
221
  closeOffCanvas(offCanvas);
100
- };
101
-
222
+ }
102
223
 
103
224
  export default OffCanvas;
@@ -20,6 +20,7 @@
20
20
  @import '~comp/input/toggle.scss';
21
21
  @import '~comp/internal-nav/internal-nav.scss';
22
22
  @import '~comp/meta-box/meta-box.scss';
23
+ @import '~comp/off-canvas/off-canvas.scss';
23
24
  @import '~comp/option-list/option-list.scss';
24
25
  @import '~comp/post-meta/post-meta.scss';
25
26
  @import '~comp/product-signpost/product-signpost.scss';
@@ -249,10 +249,12 @@
249
249
  }
250
250
 
251
251
  iframe {
252
+ --negative-padding: calc( var(--space-m) * -1 );
252
253
  height: 100%;
253
254
  width: 100%;
254
- left: -4px;
255
- top: -4px;
255
+ width: calc( 100% - var(--negative-padding) *2 );
256
+ left: var(--negative-padding);
257
+ top: var(--negative-padding);
256
258
  transition:
257
259
  padding .3s cubic-bezier(0.22, 0.61, 0.36, 1),
258
260
  background-color .3s cubic-bezier(0.22, 0.61, 0.36, 1);
@@ -1,3 +1,2 @@
1
- @import './off-canvas.scss';
2
1
  @import './prose.scss';
3
2
  @import './grid.scss';
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 693 671" opacity="0.075"><g clip-path="url(#a)"><path stroke="#3D7B87" d="M388.57 203.44c40.74 9.94 66.77 48.93 58.38 88.2-8.38 39.27-48.05 64.23-89.3 56.67"/><path stroke="#3D7B87" d="M402.01 140.47c2.72.35 5.43.82 8.15 1.4 56.13 11.98 91.68 68.3 79.4 125.79-12.27 57.5-67.72 94.39-123.84 82.4a98.78 98.78 0 0 1-8.01-2.04"/><path stroke="#3D7B87" d="M432.3-1.42c3.09.5 6.18 1.08 9.27 1.74 97.39 20.78 159.62 115.91 139.01 212.47-20.6 96.55-116.27 157.98-213.65 137.19a183 183 0 0 1-9.17-2.2"/><path stroke="#3D7B87" d="M359.04 347.92c50.87 14.25 81.93 69.05 69.9 125.41-9.2 43.08-41 75.04-78.8 84.26"/><path stroke="#3D7B87" d="M358.75 349.03a75.38 75.38 0 0 1-15.33 143.5m472.91-210.11c-136.88 72.26-297.27 99.23-458.69 65.9"/><path stroke="#3D7B87" d="M710.4 603.24c-92.04-125.65-211.68-216.14-352.29-256"/><path stroke="#3D7B87" d="M730.15 434.78c20.26-94.9-46.81-189.74-149.9-211.75-103.1-22-203.05 37.17-223.31 132.09-20.26 94.9 46.8 189.74 149.9 211.75 103.1 22 203.05-37.17 223.3-132.09Z"/><path stroke="#3D7B87" d="M565.63 393.51c11.4-53.42-25.74-106.7-83.05-118.93-57.32-12.24-112.98 21.23-124.38 74.65-11.41 53.43 25.74 106.7 83.05 118.94 57.31 12.23 112.98-21.23 124.38-74.66Z"/><path stroke="#3D7B87" d="M507.87 381.04c8.07-37.81-18.83-75.68-60.2-84.5-41.36-8.84-81.37 14.74-89.44 52.55-8.08 37.81 18.82 75.68 60.19 84.51 41.36 8.83 81.38-14.75 89.45-52.56Z"/><path stroke="#3D7B87" d="M668.34-16.28c-164.89 90.43-279.7 223.03-314.5 386.05-34.6 162.08 15.29 329 127.5 478.23"/><path stroke="#3D7B87" d="M482.38 560.08c20.96-98.17-37.75-193.87-131.07-213.79-93.33-19.92-186 43.46-206.95 141.63-20.96 98.18 37.75 193.87 131.07 213.8 93.33 19.92 186-43.47 206.95-141.64Z"/><circle cx="545.73" cy="65.7" r="6.7" fill="#3D7B87" transform="rotate(12.05 545.73 65.7)"/><circle cx="6.7" cy="6.7" r="6.7" fill="#3D7B87" transform="scale(1 -1) rotate(-12.05 -2911.17 -1076.64)"/><ellipse cx="4.94" cy="7.18" fill="#3D7B87" rx="4.94" ry="7.18" transform="scale(1 -1) rotate(-20.98 183.75 -1296.01)"/><ellipse cx="4.74" cy="6.4" fill="#3D7B87" rx="4.74" ry="6.4" transform="scale(1 -1) rotate(-12.05 187.9 -2125.37)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(31.69 1029.73 -24.26)"/><ellipse cx="2.8" cy="5.82" fill="#3D7B87" rx="2.8" ry="5.82" transform="scale(1 -1) rotate(31.69 867.17 203.72)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(16.08 1654.79 57.2)"/><ellipse cx="163.88" cy="128.11" fill="#3D7B87" rx="4.48" ry="9.03" transform="rotate(-120.9 163.88 128.11)"/><ellipse cx="274.03" cy="67.48" fill="#3D7B87" rx="4.48" ry="9.03" transform="rotate(-113.38 274.03 67.48)"/><ellipse cx="367.21" cy="92.23" fill="#3D7B87" rx="3.39" ry="7.31" transform="rotate(-99.19 367.2 92.23)"/><ellipse cx="3.98" cy="6.65" fill="#3D7B87" rx="3.98" ry="6.65" transform="scale(1 -1) rotate(3.39 8253.05 -219.92)"/><ellipse cx="3.48" cy="6.68" fill="#3D7B87" rx="3.48" ry="6.68" transform="scale(1 -1) rotate(24.86 1254.69 -215.22)"/><ellipse cx="3.76" cy="7.12" fill="#3D7B87" rx="3.76" ry="7.12" transform="scale(1 -1) rotate(49.8 674.95 -223)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-24.75 -733 -411.39)"/><ellipse cx="4.06" cy="7.93" fill="#3D7B87" rx="4.06" ry="7.93" transform="scale(1 -1) rotate(-38.06 -261.45 -309.48)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(2.61 7685.98 3177.5)"/><ellipse cx="3.46" cy="6.72" fill="#3D7B87" rx="3.46" ry="6.72" transform="scale(1 -1) rotate(-.91 -18651.2 -141.87)"/><ellipse cx="19.17" cy="224.95" fill="#3D7B87" rx="3.55" ry="6.9" transform="rotate(23.2 19.17 224.95)"/><ellipse cx="9.33" cy="256.03" fill="#3D7B87" rx="3.65" ry="7.09" transform="rotate(12.05 9.33 256.03)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(36.8 698.44 97.73)"/><ellipse cx="4.91" cy="9.03" fill="#3D7B87" rx="4.91" ry="9.03" transform="scale(1 -1) rotate(35.4 868.22 142.26)"/><ellipse cx="4.91" cy="7.64" fill="#3D7B87" rx="4.91" ry="7.64" transform="scale(1 -1) rotate(44.07 803.06 63.23)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-38.32 -292.24 -370.78)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-51.58 -121.02 -356.51)"/><ellipse cx="4.06" cy="9.03" fill="#3D7B87" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-62.45 6.86 -343.71)"/><ellipse cx="5.46" cy="9.03" fill="#3D7B87" rx="5.46" ry="9.03" transform="scale(1 -1) rotate(-77.71 94.75 -297.43)"/><ellipse cx="4.79" cy="4.88" fill="#3D7B87" rx="4.79" ry="4.88" transform="scale(1 -1) rotate(-12.05 -2589.61 -1403.38)"/><ellipse cx="4.79" cy="4.88" fill="#3D7B87" rx="4.79" ry="4.88" transform="scale(1 -1) rotate(-12.05 -2137.24 -1615.32)"/><ellipse cx="4.79" cy="4.88" fill="#3D7B87" rx="4.79" ry="4.88" transform="scale(1 -1) rotate(-12.05 -2683.45 -1973.08)"/><ellipse cx="482.54" cy="126.94" fill="#3D7B87" rx="4.79" ry="4.88" transform="rotate(12.05 482.54 126.94)"/><ellipse cx="4.79" cy="4.88" fill="#3D7B87" rx="4.79" ry="4.88" transform="matrix(.978 .2088 .2088 -.978 446 631.9)"/><ellipse cx="584.07" cy="149.46" fill="#3D7B87" rx="4.79" ry="4.88" transform="rotate(12.05 584.07 149.46)"/><ellipse cx="6.52" cy="6.65" fill="#3D7B87" rx="6.52" ry="6.65" transform="scale(1 -1) rotate(-12.05 -2495.49 -1899.88)"/><ellipse cx="452.09" cy="161.39" fill="#3D7B87" rx="4.78" ry="5.77" transform="rotate(-44.35 452.09 161.39)"/><ellipse cx="6.52" cy="6.65" fill="#3D7B87" rx="6.52" ry="6.65" transform="matrix(.978 .2088 .2088 -.978 335.3 496.36)"/><ellipse cx="416.1" cy="214.01" fill="#3D7B87" rx="6.52" ry="6.65" transform="rotate(12.05 416.1 214.01)"/><ellipse cx="5.02" cy="6.18" fill="#3D7B87" rx="5.02" ry="6.18" transform="scale(1 -1) rotate(-26.41 -907.55 -1119.88)"/><ellipse cx="489.75" cy="225.01" fill="#3D7B87" rx="5.02" ry="6.18" transform="rotate(-2.31 489.75 225.01)"/><ellipse cx="5.32" cy="5.42" fill="#3D7B87" rx="5.32" ry="5.42" transform="scale(1 -1) rotate(-12.05 -2090.56 -1998.83)"/><ellipse cx="439.92" cy="243.88" fill="#3D7B87" rx="5.32" ry="5.42" transform="rotate(12.05 439.92 243.88)"/><ellipse cx="2.84" cy="5.27" fill="#3D7B87" rx="2.84" ry="5.27" transform="scale(1 -1) rotate(-8.31 -2220.86 -1682.37)"/><ellipse cx="232.75" cy="289.48" fill="#3D7B87" rx="2.84" ry="5.27" transform="rotate(15.8 232.75 289.48)"/><ellipse cx="7.5" cy="11.35" fill="#3D7B87" rx="7.5" ry="11.35" transform="scale(1 -1) rotate(-12.05 -2451.83 -2523.91)"/><ellipse cx="578.22" cy="223.89" fill="#3D7B87" rx="5.02" ry="4.58" transform="rotate(12.05 578.22 223.89)"/><ellipse cx="3.54" cy="6.98" fill="#3D7B87" rx="3.54" ry="6.98" transform="scale(1 -1) rotate(-31.41 -745.42 -1273.8)"/><ellipse cx="650.64" cy="251.96" fill="#3D7B87" rx="3.54" ry="6.98" transform="rotate(-7.3 650.64 251.96)"/><ellipse cx="5.42" cy="4.43" fill="#3D7B87" rx="5.42" ry="4.43" transform="matrix(.978 .2088 .2088 -.978 473.24 473)"/><ellipse cx="532.6" cy="301.26" fill="#3D7B87" rx="5.42" ry="4.31" transform="rotate(12.05 532.6 301.26)"/><ellipse cx="6.7" cy="5.11" fill="#3D7B87" rx="6.7" ry="5.11" transform="scale(1 -1) rotate(-30.78 -529.84 -1189.83)"/><ellipse cx="565.93" cy="358.88" fill="#3D7B87" rx="6.7" ry="5.11" transform="rotate(-6.68 565.93 358.88)"/><ellipse cx="5.16" cy="4.6" fill="#3D7B87" rx="5.16" ry="4.6" transform="scale(1 -1) rotate(-47.05 -293.12 -1016.12)"/><ellipse cx="5.44" cy="3.86" fill="#3D7B87" rx="5.44" ry="3.86" transform="scale(1 -1) rotate(-43.96 -292.56 -955.94)"/><ellipse cx="622.7" cy="350.92" fill="#3D7B87" rx="5.95" ry="4.22" transform="rotate(-15.38 622.7 350.92)"/><ellipse cx="4.89" cy="4.1" fill="#3D7B87" rx="4.89" ry="4.1" transform="scale(1 -1) rotate(-88.1 -9.93 -434.95)"/><ellipse cx="445.81" cy="297.26" fill="#3D7B87" rx="4.89" ry="4.1" transform="rotate(-64 445.8 297.26)"/><ellipse cx="8.53" cy="6.01" fill="#3D7B87" rx="8.53" ry="6.01" transform="scale(-1 1) rotate(78.34 -489.68 -34.66)"/><ellipse cx="487.64" cy="276.67" fill="#3D7B87" rx="8.53" ry="6.01" transform="rotate(-77.57 487.64 276.67)"/><ellipse cx="8.53" cy="6.01" fill="#3D7B87" rx="8.53" ry="6.01" transform="scale(-1 1) rotate(59.21 -595.82 -237.03)"/><ellipse cx="504.69" cy="362.53" fill="#3D7B87" rx="8.53" ry="6.01" transform="rotate(-96.69 504.69 362.53)"/></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h693v671H0z"/></clipPath></defs></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 693 671" opacity="0.075"><defs><clipPath id="a"><path fill="#fff" d="M0 0h693v671H0z"/></clipPath></defs><g clip-path="url(#a)"><g stroke="#3D7B87"><path d="M388.57 203.44c40.74 9.94 66.77 48.93 58.38 88.2-8.38 39.27-48.05 64.23-89.3 56.67"/><path d="M402.01 140.47c2.72.35 5.43.82 8.15 1.4 56.13 11.98 91.68 68.3 79.4 125.79-12.27 57.5-67.72 94.39-123.84 82.4a98.78 98.78 0 0 1-8.01-2.04"/><path d="M432.3-1.42c3.09.5 6.18 1.08 9.27 1.74 97.39 20.78 159.62 115.91 139.01 212.47-20.6 96.55-116.27 157.98-213.65 137.19a183 183 0 0 1-9.17-2.2"/><path d="M359.04 347.92c50.87 14.25 81.93 69.05 69.9 125.41-9.2 43.08-41 75.04-78.8 84.26"/><path d="M358.75 349.03a75.38 75.38 0 0 1-15.33 143.5m472.91-210.11c-136.88 72.26-297.27 99.23-458.69 65.9"/><path d="M710.4 603.24c-92.04-125.65-211.68-216.14-352.29-256"/><path d="M730.15 434.78c20.26-94.9-46.81-189.74-149.9-211.75-103.1-22-203.05 37.17-223.31 132.09-20.26 94.9 46.8 189.74 149.9 211.75 103.1 22 203.05-37.17 223.3-132.09Z"/><path d="M565.63 393.51c11.4-53.42-25.74-106.7-83.05-118.93-57.32-12.24-112.98 21.23-124.38 74.65-11.41 53.43 25.74 106.7 83.05 118.94 57.31 12.23 112.98-21.23 124.38-74.66Z"/><path d="M507.87 381.04c8.07-37.81-18.83-75.68-60.2-84.5-41.36-8.84-81.37 14.74-89.44 52.55-8.08 37.81 18.82 75.68 60.19 84.51 41.36 8.83 81.38-14.75 89.45-52.56Z"/><path d="M668.34-16.28c-164.89 90.43-279.7 223.03-314.5 386.05-34.6 162.08 15.29 329 127.5 478.23"/><path d="M482.38 560.08c20.96-98.17-37.75-193.87-131.07-213.79-93.33-19.92-186 43.46-206.95 141.63-20.96 98.18 37.75 193.87 131.07 213.8 93.33 19.92 186-43.47 206.95-141.64Z"/></g><g fill="#3D7B87"><circle cx="545.73" cy="65.7" r="6.7" transform="rotate(12.05 545.73 65.7)"/><circle cx="6.7" cy="6.7" r="6.7" transform="scale(1 -1) rotate(-12.05 -2911.17 -1076.64)"/><ellipse cx="4.94" cy="7.18" rx="4.94" ry="7.18" transform="scale(1 -1) rotate(-20.98 183.75 -1296.01)"/><ellipse cx="4.74" cy="6.4" rx="4.74" ry="6.4" transform="scale(1 -1) rotate(-12.05 187.9 -2125.37)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(31.69 1029.73 -24.26)"/><ellipse cx="2.8" cy="5.82" rx="2.8" ry="5.82" transform="scale(1 -1) rotate(31.69 867.17 203.72)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(16.08 1654.79 57.2)"/><ellipse cx="163.88" cy="128.11" rx="4.48" ry="9.03" transform="rotate(-120.9 163.88 128.11)"/><ellipse cx="274.03" cy="67.48" rx="4.48" ry="9.03" transform="rotate(-113.38 274.03 67.48)"/><ellipse cx="367.21" cy="92.23" rx="3.39" ry="7.31" transform="rotate(-99.19 367.2 92.23)"/><ellipse cx="3.98" cy="6.65" rx="3.98" ry="6.65" transform="scale(1 -1) rotate(3.39 8253.05 -219.92)"/><ellipse cx="3.48" cy="6.68" rx="3.48" ry="6.68" transform="scale(1 -1) rotate(24.86 1254.69 -215.22)"/><ellipse cx="3.76" cy="7.12" rx="3.76" ry="7.12" transform="scale(1 -1) rotate(49.8 674.95 -223)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-24.75 -733 -411.39)"/><ellipse cx="4.06" cy="7.93" rx="4.06" ry="7.93" transform="scale(1 -1) rotate(-38.06 -261.45 -309.48)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(2.61 7685.98 3177.5)"/><ellipse cx="3.46" cy="6.72" rx="3.46" ry="6.72" transform="scale(1 -1) rotate(-.91 -18651.2 -141.87)"/><ellipse cx="19.17" cy="224.95" rx="3.55" ry="6.9" transform="rotate(23.2 19.17 224.95)"/><ellipse cx="9.33" cy="256.03" rx="3.65" ry="7.09" transform="rotate(12.05 9.33 256.03)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(36.8 698.44 97.73)"/><ellipse cx="4.91" cy="9.03" rx="4.91" ry="9.03" transform="scale(1 -1) rotate(35.4 868.22 142.26)"/><ellipse cx="4.91" cy="7.64" rx="4.91" ry="7.64" transform="scale(1 -1) rotate(44.07 803.06 63.23)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-38.32 -292.24 -370.78)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-51.58 -121.02 -356.51)"/><ellipse cx="4.06" cy="9.03" rx="4.06" ry="9.03" transform="scale(1 -1) rotate(-62.45 6.86 -343.71)"/><ellipse cx="5.46" cy="9.03" rx="5.46" ry="9.03" transform="scale(1 -1) rotate(-77.71 94.75 -297.43)"/><ellipse cx="4.79" cy="4.88" rx="4.79" ry="4.88" transform="scale(1 -1) rotate(-12.05 -2589.61 -1403.38)"/><ellipse cx="4.79" cy="4.88" rx="4.79" ry="4.88" transform="scale(1 -1) rotate(-12.05 -2137.24 -1615.32)"/><ellipse cx="4.79" cy="4.88" rx="4.79" ry="4.88" transform="scale(1 -1) rotate(-12.05 -2683.45 -1973.08)"/><ellipse cx="482.54" cy="126.94" rx="4.79" ry="4.88" transform="rotate(12.05 482.54 126.94)"/><ellipse cx="4.79" cy="4.88" rx="4.79" ry="4.88" transform="matrix(.978 .2088 .2088 -.978 446 631.9)"/><ellipse cx="584.07" cy="149.46" rx="4.79" ry="4.88" transform="rotate(12.05 584.07 149.46)"/><ellipse cx="6.52" cy="6.65" rx="6.52" ry="6.65" transform="scale(1 -1) rotate(-12.05 -2495.49 -1899.88)"/><ellipse cx="452.09" cy="161.39" rx="4.78" ry="5.77" transform="rotate(-44.35 452.09 161.39)"/><ellipse cx="6.52" cy="6.65" rx="6.52" ry="6.65" transform="matrix(.978 .2088 .2088 -.978 335.3 496.36)"/><ellipse cx="416.1" cy="214.01" rx="6.52" ry="6.65" transform="rotate(12.05 416.1 214.01)"/><ellipse cx="5" cy="6.18" rx="5" ry="6.18" transform="scale(1 -1) rotate(-26.41 -907.55 -1119.88)"/><ellipse cx="489.75" cy="225.01" rx="5" ry="6.18" transform="rotate(-2.31 489.75 225.01)"/><ellipse cx="5.32" cy="5.42" rx="5.32" ry="5.42" transform="scale(1 -1) rotate(-12.05 -2090.56 -1998.83)"/><ellipse cx="439.92" cy="243.88" rx="5.32" ry="5.42" transform="rotate(12.05 439.92 243.88)"/><ellipse cx="2.84" cy="5.27" rx="2.84" ry="5.27" transform="scale(1 -1) rotate(-8.31 -2220.86 -1682.37)"/><ellipse cx="232.75" cy="289.48" rx="2.84" ry="5.27" transform="rotate(15.8 232.75 289.48)"/><ellipse cx="7.5" cy="11.35" rx="7.5" ry="11.35" transform="scale(1 -1) rotate(-12.05 -2451.83 -2523.91)"/><ellipse cx="578.22" cy="223.89" rx="5" ry="4.58" transform="rotate(12.05 578.22 223.89)"/><ellipse cx="3.54" cy="6.98" rx="3.54" ry="6.98" transform="scale(1 -1) rotate(-31.41 -745.42 -1273.8)"/><ellipse cx="650.64" cy="251.96" rx="3.54" ry="6.98" transform="rotate(-7.3 650.64 251.96)"/><ellipse cx="5.42" cy="4.43" rx="5.42" ry="4.43" transform="matrix(.978 .2088 .2088 -.978 473.24 473)"/><ellipse cx="532.6" cy="301.26" rx="5.42" ry="4.31" transform="rotate(12.05 532.6 301.26)"/><ellipse cx="6.7" cy="5.11" rx="6.7" ry="5.11" transform="scale(1 -1) rotate(-30.78 -529.84 -1189.83)"/><ellipse cx="565.93" cy="358.88" rx="6.7" ry="5.11" transform="rotate(-6.68 565.93 358.88)"/><ellipse cx="5.16" cy="4.6" rx="5.16" ry="4.6" transform="scale(1 -1) rotate(-47.05 -293.12 -1016.12)"/><ellipse cx="5.44" cy="3.86" rx="5.44" ry="3.86" transform="scale(1 -1) rotate(-43.96 -292.56 -955.94)"/><ellipse cx="622.7" cy="350.92" rx="5.95" ry="4.22" transform="rotate(-15.38 622.7 350.92)"/><ellipse cx="4.89" cy="4.1" rx="4.89" ry="4.1" transform="scale(1 -1) rotate(-88.1 -9.93 -434.95)"/><ellipse cx="445.81" cy="297.26" rx="4.89" ry="4.1" transform="rotate(-64 445.8 297.26)"/><ellipse cx="8.53" cy="6.01" rx="8.53" ry="6.01" transform="scale(-1 1) rotate(78.34 -489.68 -34.66)"/><ellipse cx="487.64" cy="276.67" rx="8.53" ry="6.01" transform="rotate(-77.57 487.64 276.67)"/><ellipse cx="8.53" cy="6.01" rx="8.53" ry="6.01" transform="scale(-1 1) rotate(59.21 -595.82 -237.03)"/><ellipse cx="504.69" cy="362.53" rx="8.53" ry="6.01" transform="rotate(-96.69 504.69 362.53)"/></g></g></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="641" height="1012" opacity="0.075" fill="none" viewBox="0 0 641 1012"><circle cx="641" cy="506" r="80" stroke="#004157"/><circle cx="641" cy="506" r="20" stroke="#004157"/><circle cx="641" cy="506" r="160" stroke="#004157"/><circle cx="641" cy="506" r="240" stroke="#004157"/><circle cx="641" cy="506" r="320" stroke="#004157"/><circle cx="641" cy="506" r="400" stroke="#004157"/><circle cx="641" cy="506" r="480" stroke="#004157"/><circle cx="641" cy="506" r="560" stroke="#004157"/><circle cx="641" cy="506" r="640" stroke="#004157"/></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="641" height="1012" fill="none" viewBox="0 0 641 1012"><g stroke="#3D7B87" opacity=".1"><circle cx="641" cy="506" r="80"/><circle cx="641" cy="506" r="20"/><circle cx="641" cy="506" r="160"/><circle cx="641" cy="506" r="240"/><circle cx="641" cy="506" r="320"/><circle cx="641" cy="506" r="400"/><circle cx="641" cy="506" r="480"/><circle cx="641" cy="506" r="560"/><circle cx="641" cy="506" r="640"/></g></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 523 666" opacity="0.075" ><g clip-path="url(#a)"><path stroke="#3D7B87" d="m74 183 62-61 81 14 20 76-62 62-81-15-20-76Zm78 304-20-77"/><path stroke="#3D7B87" d="m93 259-62 61 20 77 82 14 62-62-19-76M91 548l62-62 81 15 20 75-62 62-82-15-19-75Zm146-335 82 14 62-62-20-76-82-15-62 62m59 228 62-62 82 14 20 76-62 62-82-15-20-75Zm0 0-82-14"/><path stroke="#3D7B87" d="m296 439-63 62m145-48 20 77-62 61-83-14m127-411 82 14 62-62-19-76-83-15-62 62m79 304 82 14 63-62-20-76-82-14-63 61m43-137 20 76m-144 48-20-77"/><path stroke="#3D7B87" d="m521 406 20 77-62 61-82-14"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 205 131)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 263 359)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 268 68)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 327 295)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 306 221)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 364 449)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 324 585)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 181 631)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 60 179)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 121 405)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 125 115)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 183 343)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 39 390)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 161 269)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 19 315)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 223 494)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 80 541)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 347 84)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 407 311)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 410 22)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 470 249)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 449 175)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 508 401)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 465 539)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 493 36)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 225 205)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 284 433)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 241 571)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 98 618)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 81 253)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 141 481)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 369 158)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 428 385)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 385 523)"/><circle cx="9.9" cy="9.9" r="9.9" fill="#3D7B87" transform="matrix(1 -.33 .24 .91 511 113)"/><path stroke="#3D7B87" d="m41 177 23 4m69-66-6-21m73 572-6-22m82-576-5-21m72 572-5-22m82-576-6-21m73 572-6-22M0 314l23 4m37 222 23 4M510 36l39-37M85 649l18-17M27 420l17-17"/></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h523v666H0z"/></clipPath></defs></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 523 666" opacity="0.075"><defs><style>.a{fill:#3d7b87}</style><clipPath id="a"><path fill="#fff" d="M0 0h523v666H0z"/></clipPath></defs><g clip-path="url(#a)"><g stroke="#3D7B87"><path d="m74 183 62-61 81 14 20 76-62 62-81-15-20-76Zm78 304-20-77"/><path d="m93 259-62 61 20 77 82 14 62-62-19-76M91 548l62-62 81 15 20 75-62 62-82-15-19-75Zm146-335 82 14 62-62-20-76-82-15-62 62m59 228 62-62 82 14 20 76-62 62-82-15-20-75Zm0 0-82-14"/><path d="m296 439-63 62m145-48 20 77-62 61-83-14m127-411 82 14 62-62-19-76-83-15-62 62m79 304 82 14 63-62-20-76-82-14-63 61m43-137 20 76m-144 48-20-77"/><path d="m521 406 20 77-62 61-82-14"/><path d="m41 177 23 4m69-66-6-21m73 572-6-22m82-576-5-21m72 572-5-22m82-576-6-21m73 572-6-22M0 314l23 4m37 222 23 4M510 36l39-37M85 649l18-17M27 420l17-17"/></g><g fill="#3d7b87"><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 205 131)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 263 359)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 268 68)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 327 295)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 306 221)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 364 449)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 324 585)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 181 631)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 60 179)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 121 405)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 125 115)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 183 343)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 39 390)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 161 269)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 19 315)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 223 494)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 80 541)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 347 84)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 407 311)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 410 22)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 470 249)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 449 175)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 508 401)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 465 539)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 493 36)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 225 205)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 284 433)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 241 571)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 98 618)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 81 253)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 141 481)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 369 158)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 428 385)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 385 523)"/><circle cx="10" cy="10" r="10" transform="matrix(1 -.33 .24 .9 511 113)"/></g></g></svg>
@@ -1 +1 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="421" height="724" fill="none" viewBox="0 0 421 724"><g stroke="#004157" opacity=".1"><circle cx="36.965" cy="27.974" r="17.5" transform="rotate(-15 36.965 27.974)"/><circle cx="141.285" cy=".021" r="17.5" transform="rotate(-15 141.285 .021)"/><circle cx="3.44" cy="111.496" r="17.5" transform="rotate(-15 3.44 111.496)"/><circle cx="107.76" cy="83.544" r="17.5" transform="rotate(-15 107.76 83.544)"/><circle cx="212.08" cy="55.591" r="17.5" transform="rotate(-15 212.08 55.591)"/><circle cx="74.235" cy="167.067" r="17.5" transform="rotate(-15 74.235 167.067)"/><circle cx="178.555" cy="139.114" r="17.5" transform="rotate(-15 178.555 139.114)"/><circle cx="40.71" cy="250.59" r="17.5" transform="rotate(-15 40.71 250.59)"/><circle cx="145.03" cy="222.637" r="17.5" transform="rotate(-15 145.03 222.637)"/><circle cx="249.35" cy="194.685" r="17.5" transform="rotate(-15 249.35 194.685)"/><circle cx="7.185" cy="334.113" r="17.5" transform="rotate(-15 7.185 334.113)"/><circle cx="111.505" cy="306.16" r="17.5" transform="rotate(-15 111.505 306.16)"/><circle cx="215.825" cy="278.208" r="17.5" transform="rotate(-15 215.825 278.208)"/><circle cx="77.98" cy="389.683" r="17.5" transform="rotate(-15 77.98 389.683)"/><circle cx="182.3" cy="361.73" r="17.5" transform="rotate(-15 182.3 361.73)"/><circle cx="286.62" cy="333.778" r="17.5" transform="rotate(-15 286.62 333.778)"/><circle cx="44.455" cy="473.206" r="17.5" transform="rotate(-15 44.455 473.206)"/><circle cx="148.775" cy="445.254" r="17.5" transform="rotate(-15 148.775 445.254)"/><circle cx="253.095" cy="417.301" r="17.5" transform="rotate(-15 253.095 417.301)"/><circle cx="10.93" cy="556.729" r="17.5" transform="rotate(-15 10.93 556.729)"/><circle cx="115.25" cy="528.776" r="17.5" transform="rotate(-15 115.25 528.776)"/><circle cx="219.57" cy="500.824" r="17.5" transform="rotate(-15 219.57 500.824)"/><circle cx="323.89" cy="472.871" r="17.5" transform="rotate(-15 323.89 472.871)"/><circle cx="81.725" cy="612.299" r="17.5" transform="rotate(-15 81.725 612.299)"/><circle cx="186.045" cy="584.347" r="17.5" transform="rotate(-15 186.045 584.347)"/><circle cx="290.365" cy="556.394" r="17.5" transform="rotate(-15 290.365 556.394)"/><circle cx="48.2" cy="695.822" r="17.5" transform="rotate(-15 48.2 695.822)"/><circle cx="152.52" cy="667.87" r="17.5" transform="rotate(-15 152.52 667.87)"/><circle cx="256.84" cy="639.917" r="17.5" transform="rotate(-15 256.84 639.917)"/><circle cx="361.16" cy="611.965" r="17.5" transform="rotate(-15 361.16 611.965)"/><circle cx="223.315" cy="723.44" r="17.5" transform="rotate(-15 223.315 723.44)"/><circle cx="327.635" cy="695.488" r="17.5" transform="rotate(-15 327.635 695.488)"/></g></svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="421" height="724" fill="none" viewBox="0 0 421 724"><g stroke="#3D7B87" opacity=".1"><circle cx="36.965" cy="27.974" r="17.5" transform="rotate(-15 36.965 27.974)"/><circle cx="141.285" cy=".021" r="17.5" transform="rotate(-15 141.285 .021)"/><circle cx="3.44" cy="111.496" r="17.5" transform="rotate(-15 3.44 111.496)"/><circle cx="107.76" cy="83.544" r="17.5" transform="rotate(-15 107.76 83.544)"/><circle cx="212.08" cy="55.591" r="17.5" transform="rotate(-15 212.08 55.591)"/><circle cx="74.235" cy="167.067" r="17.5" transform="rotate(-15 74.235 167.067)"/><circle cx="178.555" cy="139.114" r="17.5" transform="rotate(-15 178.555 139.114)"/><circle cx="40.71" cy="250.59" r="17.5" transform="rotate(-15 40.71 250.59)"/><circle cx="145.03" cy="222.637" r="17.5" transform="rotate(-15 145.03 222.637)"/><circle cx="249.35" cy="194.685" r="17.5" transform="rotate(-15 249.35 194.685)"/><circle cx="7.185" cy="334.113" r="17.5" transform="rotate(-15 7.185 334.113)"/><circle cx="111.505" cy="306.16" r="17.5" transform="rotate(-15 111.505 306.16)"/><circle cx="215.825" cy="278.208" r="17.5" transform="rotate(-15 215.825 278.208)"/><circle cx="77.98" cy="389.683" r="17.5" transform="rotate(-15 77.98 389.683)"/><circle cx="182.3" cy="361.73" r="17.5" transform="rotate(-15 182.3 361.73)"/><circle cx="286.62" cy="333.778" r="17.5" transform="rotate(-15 286.62 333.778)"/><circle cx="44.455" cy="473.206" r="17.5" transform="rotate(-15 44.455 473.206)"/><circle cx="148.775" cy="445.254" r="17.5" transform="rotate(-15 148.775 445.254)"/><circle cx="253.095" cy="417.301" r="17.5" transform="rotate(-15 253.095 417.301)"/><circle cx="10.93" cy="556.729" r="17.5" transform="rotate(-15 10.93 556.729)"/><circle cx="115.25" cy="528.776" r="17.5" transform="rotate(-15 115.25 528.776)"/><circle cx="219.57" cy="500.824" r="17.5" transform="rotate(-15 219.57 500.824)"/><circle cx="323.89" cy="472.871" r="17.5" transform="rotate(-15 323.89 472.871)"/><circle cx="81.725" cy="612.299" r="17.5" transform="rotate(-15 81.725 612.299)"/><circle cx="186.045" cy="584.347" r="17.5" transform="rotate(-15 186.045 584.347)"/><circle cx="290.365" cy="556.394" r="17.5" transform="rotate(-15 290.365 556.394)"/><circle cx="48.2" cy="695.822" r="17.5" transform="rotate(-15 48.2 695.822)"/><circle cx="152.52" cy="667.87" r="17.5" transform="rotate(-15 152.52 667.87)"/><circle cx="256.84" cy="639.917" r="17.5" transform="rotate(-15 256.84 639.917)"/><circle cx="361.16" cy="611.965" r="17.5" transform="rotate(-15 361.16 611.965)"/><circle cx="223.315" cy="723.44" r="17.5" transform="rotate(-15 223.315 723.44)"/><circle cx="327.635" cy="695.488" r="17.5" transform="rotate(-15 327.635 695.488)"/></g></svg>