maverick-wave 4.28.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +29 -1
- package/.claude/skills/mw-maverick-wave/SKILL.md +39 -24
- package/.claude/skills/mw-maverick-wave/examples/angular-services.md +16 -4
- package/.claude/skills/mw-maverick-wave/examples/static-landing-page.md +13 -4
- package/.claude/skills/mw-maverick-wave/references/components.md +42 -5
- package/.claude/skills/mw-maverick-wave/references/forms.md +14 -2
- package/.claude/skills/mw-maverick-wave/references/javascript.md +17 -4
- package/.claude/skills/mw-maverick-wave/references/layout.md +53 -19
- package/.claude/skills/mw-maverick-wave/references/theming.md +38 -1
- package/.impeccable/config.local.json +5 -0
- package/.impeccable/hook.cache.json +1 -0
- package/CHANGELOG.md +11 -0
- package/CLAUDE.md +5 -5
- package/README.md +48 -4
- package/index.html +19 -38
- package/maverick-wave.min.css +14 -12
- package/maverick-wave.min.js +1 -1
- package/package.json +2 -2
- package/scripts/verify.js +27 -2
- package/src/js/main.js +223 -83
- package/src/partials/accordions-container.html +6 -10
- package/src/partials/alerts-container.html +6 -6
- package/src/partials/announcement-container.html +5 -5
- package/src/partials/avatars-container.html +85 -17
- package/src/partials/badges-container.html +6 -6
- package/src/partials/blog-posts-container.html +11 -12
- package/src/partials/buttons-container.html +3 -3
- package/src/partials/cards-container.html +26 -9
- package/src/partials/code-container.html +5 -5
- package/src/partials/content-slider-container.html +5 -4
- package/src/partials/divider-container.html +7 -7
- package/src/partials/dropdown-container.html +2 -2
- package/src/partials/empty-state-container.html +5 -5
- package/src/partials/footer-container.html +21 -18
- package/src/partials/form-elements-container.html +14 -14
- package/src/partials/gallery-container.html +16 -8
- package/src/partials/get-started-container.html +4 -8
- package/src/partials/header-container.html +18 -7
- package/src/partials/home-container.html +10 -20
- package/src/partials/input-group-container.html +11 -2
- package/src/partials/kbd-container.html +1 -1
- package/src/partials/login-container.html +5 -1
- package/src/partials/media-container.html +2 -2
- package/src/partials/modals-container.html +22 -32
- package/src/partials/pricing-container.html +9 -9
- package/src/partials/skeleton-container.html +6 -6
- package/src/partials/stepper-container.html +2 -2
- package/src/partials/tables-container.html +12 -12
- package/src/partials/tabs-container.html +17 -27
- package/src/partials/tags-container.html +23 -17
- package/src/partials/techstack-bucket-container.html +13 -0
- package/src/partials/tiles-container.html +26 -9
- package/src/partials/typography-container.html +7 -6
- package/src/partials/utilities-container.html +35 -15
- package/src/scss/_layers.scss +10 -0
- package/src/scss/abstracts/_index.scss +6 -0
- package/src/scss/abstracts/_mixins.scss +61 -153
- package/src/scss/abstracts/_variables.scss +123 -319
- package/src/scss/base/_base.scss +170 -190
- package/src/scss/base/_reset.scss +106 -104
- package/src/scss/base/_typography.scss +153 -151
- package/src/scss/components/_accordions.scss +97 -97
- package/src/scss/components/_alerts.scss +71 -70
- package/src/scss/components/_announcement.scss +71 -70
- package/src/scss/components/_avatars.scss +130 -142
- package/src/scss/components/_badge.scss +131 -132
- package/src/scss/components/_blog-post.scss +223 -220
- package/src/scss/components/_breadcrumbs.scss +93 -92
- package/src/scss/components/_button-bar.scss +102 -110
- package/src/scss/components/_buttons.scss +319 -324
- package/src/scss/components/_calendar.scss +251 -252
- package/src/scss/components/_cards.scss +359 -386
- package/src/scss/components/_code.scss +190 -194
- package/src/scss/components/_coming-soon.scss +77 -75
- package/src/scss/components/_content-slider.scss +90 -89
- package/src/scss/components/_divider.scss +55 -53
- package/src/scss/components/_dropdown.scss +179 -185
- package/src/scss/components/_empty-state.scss +57 -57
- package/src/scss/components/_flag.scss +294 -278
- package/src/scss/components/_gallery.scss +131 -133
- package/src/scss/components/_info.scss +151 -167
- package/src/scss/components/_kanban.scss +332 -341
- package/src/scss/components/_kbd.scss +40 -38
- package/src/scss/components/_lang-switch.scss +89 -97
- package/src/scss/components/_links.scss +21 -28
- package/src/scss/components/_lists.scss +510 -514
- package/src/scss/components/_localhost-indicator.scss +26 -24
- package/src/scss/components/_media.scss +22 -20
- package/src/scss/components/_meta-info.scss +35 -33
- package/src/scss/components/_modals.scss +277 -186
- package/src/scss/components/_pagination.scss +81 -87
- package/src/scss/components/_panels.scss +99 -97
- package/src/scss/components/_pricing.scss +183 -241
- package/src/scss/components/_progress.scss +112 -89
- package/src/scss/components/_prose.scss +35 -33
- package/src/scss/components/_ratings.scss +40 -38
- package/src/scss/components/_segmented.scss +82 -84
- package/src/scss/components/_skeleton.scss +66 -72
- package/src/scss/components/_spinners.scss +155 -159
- package/src/scss/components/_stepper.scss +116 -116
- package/src/scss/components/_tables.scss +155 -148
- package/src/scss/components/_tabs.scss +232 -141
- package/src/scss/components/_tags.scss +109 -107
- package/src/scss/components/_techstack-bucket.scss +123 -122
- package/src/scss/components/_testimonial.scss +72 -70
- package/src/scss/components/_theme-toggle.scss +53 -51
- package/src/scss/components/_tiles.scss +174 -174
- package/src/scss/components/_timelines.scss +282 -280
- package/src/scss/components/_toasts.scss +66 -72
- package/src/scss/form-elements/_checkbox.scss +117 -132
- package/src/scss/form-elements/_form.scss +149 -115
- package/src/scss/form-elements/_input-group.scss +99 -103
- package/src/scss/form-elements/_input.scss +74 -74
- package/src/scss/form-elements/_login.scss +48 -48
- package/src/scss/form-elements/_prefilled.scss +53 -51
- package/src/scss/form-elements/_radio.scss +95 -107
- package/src/scss/form-elements/_select.scss +42 -42
- package/src/scss/form-elements/_slider.scss +117 -132
- package/src/scss/form-elements/_textarea.scss +68 -54
- package/src/scss/form-elements/_toggle.scss +127 -140
- package/src/scss/layout/_footer.scss +172 -171
- package/src/scss/layout/_grid.scss +268 -302
- package/src/scss/layout/_header.scss +426 -427
- package/src/scss/layout/_home.scss +28 -27
- package/src/scss/layout/_main.scss +275 -238
- package/src/scss/layout/_page-header.scss +38 -36
- package/src/scss/layout/_section.scss +150 -124
- package/src/scss/main.scss +1 -1
- package/src/scss/utilities/_accessibility.scss +46 -45
- package/src/scss/utilities/_aspect.scss +22 -20
- package/src/scss/utilities/_corner.scss +23 -5
- package/src/scss/utilities/_display.scss +76 -70
- package/src/scss/utilities/_elevation.scss +13 -11
- package/src/scss/utilities/_flex.scss +83 -85
- package/src/scss/utilities/_reveal.scss +40 -63
- package/src/scss/utilities/_spacing.scss +63 -64
- package/src/scss/utilities/_text.scss +139 -141
- package/src/scss/utilities/_touch-targets.scss +130 -147
|
@@ -1,155 +1,156 @@
|
|
|
1
1
|
@use '../abstracts' as *;
|
|
2
2
|
|
|
3
|
-
.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
.mw-techstack-logo {
|
|
23
|
-
width: 32px;
|
|
24
|
-
height: 32px;
|
|
25
|
-
}
|
|
3
|
+
@layer mw.components {
|
|
4
|
+
.mw-techstack {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-wrap: wrap;
|
|
7
|
+
gap: spacing('4');
|
|
8
|
+
|
|
9
|
+
// Base item
|
|
10
|
+
&-item {
|
|
11
|
+
display: inline-flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
text-decoration: none;
|
|
14
|
+
background: var(--mw-card-background);
|
|
15
|
+
border: 1px solid var(--mw-border);
|
|
16
|
+
border-radius: radius('md');
|
|
17
|
+
padding: spacing('2');
|
|
18
|
+
transition: var(--mw-transition-fast);
|
|
19
|
+
color: var(--mw-text-color);
|
|
20
|
+
min-width: 50px;
|
|
21
|
+
min-height: 50px;
|
|
26
22
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
.mw-techstack-logo {
|
|
24
|
+
width: 32px;
|
|
25
|
+
height: 32px;
|
|
26
|
+
}
|
|
30
27
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
.mw-techstack-name {
|
|
29
|
+
font-size: font-size('sm');
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.mw-techstack-desc {
|
|
33
|
+
font-size: font-size('xs');
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@include hover {
|
|
37
|
+
transform: translateY(-2px);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
&:hover {
|
|
41
|
+
box-shadow: var(--mw-elevation-3);
|
|
42
|
+
border-color: var(--mw-primary-text-color);
|
|
43
|
+
|
|
44
|
+
.mw-techstack-logo {
|
|
45
|
+
transform: scale(1.1);
|
|
46
|
+
}
|
|
34
47
|
|
|
35
|
-
|
|
36
|
-
|
|
48
|
+
.mw-techstack-name {
|
|
49
|
+
color: var(--mw-primary-text-color);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
37
52
|
}
|
|
38
53
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
54
|
+
&-item-sm {
|
|
55
|
+
padding: spacing('1') spacing('2');
|
|
56
|
+
min-width: 32px;
|
|
57
|
+
min-height: 32px;
|
|
58
|
+
border-radius: radius('sm');
|
|
42
59
|
|
|
43
60
|
.mw-techstack-logo {
|
|
44
|
-
|
|
61
|
+
width: 18px;
|
|
62
|
+
height: 18px;
|
|
45
63
|
}
|
|
46
64
|
|
|
47
|
-
.mw-techstack-
|
|
48
|
-
|
|
65
|
+
.mw-techstack-info {
|
|
66
|
+
margin-left: spacing('2');
|
|
67
|
+
margin-right: spacing('1');
|
|
49
68
|
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
69
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
min-width: 32px;
|
|
57
|
-
min-height: 32px;
|
|
58
|
-
border-radius: radius('sm');
|
|
70
|
+
.mw-techstack-name {
|
|
71
|
+
font-size: font-size('xs');
|
|
72
|
+
}
|
|
59
73
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
74
|
+
.mw-techstack-desc {
|
|
75
|
+
display: none;
|
|
76
|
+
}
|
|
63
77
|
}
|
|
64
78
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
79
|
+
&-logo {
|
|
80
|
+
object-fit: contain;
|
|
81
|
+
border-radius: radius('sm');
|
|
82
|
+
transition: transform var(--mw-duration-fast) var(--mw-ease-out);
|
|
83
|
+
flex-shrink: 0;
|
|
68
84
|
}
|
|
69
85
|
|
|
70
|
-
|
|
71
|
-
|
|
86
|
+
&-info {
|
|
87
|
+
display: flex;
|
|
88
|
+
flex-direction: column;
|
|
89
|
+
margin-left: spacing('3');
|
|
90
|
+
margin-right: spacing('2');
|
|
91
|
+
justify-content: center;
|
|
72
92
|
}
|
|
73
93
|
|
|
74
|
-
|
|
75
|
-
|
|
94
|
+
&-name {
|
|
95
|
+
font-weight: font-weight('bold');
|
|
96
|
+
line-height: 1.1;
|
|
97
|
+
transition: color var(--mw-duration-fast) var(--mw-ease-out);
|
|
76
98
|
}
|
|
77
|
-
}
|
|
78
99
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
100
|
+
&-desc {
|
|
101
|
+
color: var(--mw-text-muted-color);
|
|
102
|
+
margin-top: 2px;
|
|
103
|
+
line-height: 1.1;
|
|
104
|
+
}
|
|
84
105
|
}
|
|
85
106
|
|
|
86
|
-
|
|
107
|
+
// Bucket container
|
|
108
|
+
.mw-techstack-bucket {
|
|
87
109
|
display: flex;
|
|
88
|
-
flex-
|
|
89
|
-
margin-left: spacing('3');
|
|
90
|
-
margin-right: spacing('2');
|
|
110
|
+
flex-wrap: wrap;
|
|
91
111
|
justify-content: center;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
color: var(--mw-text-muted-color);
|
|
102
|
-
margin-top: 2px;
|
|
103
|
-
line-height: 1.1;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
112
|
+
gap: spacing('1');
|
|
113
|
+
padding: spacing('3');
|
|
114
|
+
position: relative;
|
|
115
|
+
margin-top: spacing('2');
|
|
116
|
+
border-left: 2px solid var(--mw-dark-border);
|
|
117
|
+
border-right: 2px solid var(--mw-dark-border);
|
|
118
|
+
border-bottom: 4px solid var(--mw-dark-border);
|
|
119
|
+
border-top: 2px solid transparent;
|
|
120
|
+
border-radius: radius('none') radius('none') radius('xl') radius('xl');
|
|
106
121
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
&::before {
|
|
123
|
-
content: '';
|
|
124
|
-
position: absolute;
|
|
125
|
-
top: -2px;
|
|
126
|
-
left: -2px;
|
|
127
|
-
right: -2px;
|
|
128
|
-
height: 2px;
|
|
129
|
-
background: linear-gradient(
|
|
130
|
-
90deg,
|
|
131
|
-
var(--mw-dark-border) 0%,
|
|
132
|
-
transparent 25%,
|
|
133
|
-
transparent 75%,
|
|
134
|
-
var(--mw-dark-border) 100%
|
|
135
|
-
);
|
|
136
|
-
}
|
|
122
|
+
&::before {
|
|
123
|
+
content: '';
|
|
124
|
+
position: absolute;
|
|
125
|
+
top: -2px;
|
|
126
|
+
left: -2px;
|
|
127
|
+
right: -2px;
|
|
128
|
+
height: 2px;
|
|
129
|
+
background: linear-gradient(
|
|
130
|
+
90deg,
|
|
131
|
+
var(--mw-dark-border) 0%,
|
|
132
|
+
transparent 25%,
|
|
133
|
+
transparent 75%,
|
|
134
|
+
var(--mw-dark-border) 100%
|
|
135
|
+
);
|
|
136
|
+
}
|
|
137
137
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
138
|
+
&-narrow {
|
|
139
|
+
max-width: 14rem;
|
|
140
|
+
padding: spacing('5') spacing('6');
|
|
141
|
+
margin-inline: auto;
|
|
142
|
+
}
|
|
143
143
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
144
|
+
// Variant dashed - completely closed
|
|
145
|
+
&-dashed {
|
|
146
|
+
background: transparent;
|
|
147
|
+
border: 2px dashed var(--mw-border);
|
|
148
|
+
border-radius: radius('xl');
|
|
149
|
+
border-top: 2px dashed var(--mw-border);
|
|
150
150
|
|
|
151
|
-
|
|
152
|
-
|
|
151
|
+
&::before {
|
|
152
|
+
display: none;
|
|
153
|
+
}
|
|
153
154
|
}
|
|
154
155
|
}
|
|
155
156
|
}
|
|
@@ -1,80 +1,82 @@
|
|
|
1
1
|
@use '../abstracts' as *;
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
// <
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
//
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
3
|
+
@layer mw.components {
|
|
4
|
+
// A voice about the product - a quote card with its source. A figure, because
|
|
5
|
+
// quote and attribution belong together and that is the element that says so:
|
|
6
|
+
//
|
|
7
|
+
// <figure class="mw-testimonial">
|
|
8
|
+
// <blockquote>...</blockquote>
|
|
9
|
+
// <figcaption class="mw-testimonial-source">
|
|
10
|
+
// Name <span class="mw-testimonial-detail">· role or occasion</span>
|
|
11
|
+
// </figcaption>
|
|
12
|
+
// </figure>
|
|
13
|
+
.mw-testimonial {
|
|
14
|
+
@include surface;
|
|
15
|
+
display: flex;
|
|
16
|
+
flex-direction: column;
|
|
17
|
+
padding: spacing('5');
|
|
18
|
+
background: var(--mw-card-background);
|
|
19
|
+
border: 1px solid var(--mw-border);
|
|
20
|
+
box-shadow: var(--mw-elevation-2);
|
|
20
21
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
22
|
+
// Several of these in a row, each quote on the base blockquote tint, add up
|
|
23
|
+
// to a solid colored wall nobody reads through. The card already carries the
|
|
24
|
+
// surface - inside it the quote keeps only the edge and the quotation marks
|
|
25
|
+
// as its sign.
|
|
26
|
+
blockquote {
|
|
27
|
+
background: color-mix(in srgb, var(--mw-secondary-color) 6%, transparent);
|
|
28
|
+
border-left-color: color-mix(
|
|
29
|
+
in srgb,
|
|
30
|
+
var(--mw-secondary-color) 45%,
|
|
31
|
+
transparent
|
|
32
|
+
);
|
|
33
|
+
padding-block: spacing('2');
|
|
34
|
+
font-size: font-size('base');
|
|
35
|
+
line-height: 1.6;
|
|
36
|
+
}
|
|
35
37
|
}
|
|
36
|
-
}
|
|
37
38
|
|
|
38
|
-
// margin-top: auto, so in a grid of equal-height cards every source line sits
|
|
39
|
-
// on its card's bottom edge instead of floating under quotes of random length.
|
|
40
|
-
//
|
|
41
|
-
// A wrapping flex row rather than inline text, so an optional date can sit on
|
|
42
|
-
// the card's right edge: "who" on the left, "when" on the right, and the two
|
|
43
|
-
// do not run into each other. The column gap stands in for the space the
|
|
44
|
-
// inline flow used to leave between name and detail. When the line runs out
|
|
45
|
-
// of room the date drops to a line of its own and stays right-aligned - its
|
|
46
|
-
// auto margin absorbs whatever is left.
|
|
47
|
-
.mw-testimonial-source {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
39
|
+
// margin-top: auto, so in a grid of equal-height cards every source line sits
|
|
40
|
+
// on its card's bottom edge instead of floating under quotes of random length.
|
|
41
|
+
//
|
|
42
|
+
// A wrapping flex row rather than inline text, so an optional date can sit on
|
|
43
|
+
// the card's right edge: "who" on the left, "when" on the right, and the two
|
|
44
|
+
// do not run into each other. The column gap stands in for the space the
|
|
45
|
+
// inline flow used to leave between name and detail. When the line runs out
|
|
46
|
+
// of room the date drops to a line of its own and stays right-aligned - its
|
|
47
|
+
// auto margin absorbs whatever is left.
|
|
48
|
+
.mw-testimonial-source {
|
|
49
|
+
display: flex;
|
|
50
|
+
flex-wrap: wrap;
|
|
51
|
+
align-items: baseline;
|
|
52
|
+
column-gap: spacing('2');
|
|
53
|
+
row-gap: spacing('1');
|
|
54
|
+
margin-top: auto;
|
|
55
|
+
padding-top: spacing('5');
|
|
56
|
+
font-size: font-size('sm');
|
|
57
|
+
font-weight: font-weight('bold');
|
|
58
|
+
color: var(--mw-primary-text-color);
|
|
59
|
+
}
|
|
59
60
|
|
|
60
|
-
.mw-testimonial-detail {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}
|
|
61
|
+
.mw-testimonial-detail {
|
|
62
|
+
font-weight: font-weight('normal');
|
|
63
|
+
color: var(--mw-text-muted-color);
|
|
64
|
+
}
|
|
64
65
|
|
|
65
|
-
// When the voice spoke - a <time>, month and year, on the right edge of the
|
|
66
|
-
// source line. Optional on purpose: a dated quote ages, and a wall of voices
|
|
67
|
-
// from three years ago says more about the page than about the product.
|
|
68
|
-
.mw-testimonial-date {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
66
|
+
// When the voice spoke - a <time>, month and year, on the right edge of the
|
|
67
|
+
// source line. Optional on purpose: a dated quote ages, and a wall of voices
|
|
68
|
+
// from three years ago says more about the page than about the product.
|
|
69
|
+
.mw-testimonial-date {
|
|
70
|
+
margin-left: auto;
|
|
71
|
+
font-weight: font-weight('normal');
|
|
72
|
+
color: var(--mw-text-muted-color);
|
|
73
|
+
white-space: nowrap;
|
|
74
|
+
}
|
|
74
75
|
|
|
75
|
-
// The one voice lifted above the grid - it may speak a size louder.
|
|
76
|
-
.mw-testimonial-featured {
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
// The one voice lifted above the grid - it may speak a size louder.
|
|
77
|
+
.mw-testimonial-featured {
|
|
78
|
+
blockquote {
|
|
79
|
+
font-size: font-size('md');
|
|
80
|
+
}
|
|
79
81
|
}
|
|
80
82
|
}
|
|
@@ -1,61 +1,63 @@
|
|
|
1
1
|
@use 'sass:map';
|
|
2
2
|
@use '../abstracts' as *;
|
|
3
3
|
|
|
4
|
-
.
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
@layer mw.components {
|
|
5
|
+
.mw-theme-toggle {
|
|
6
|
+
position: relative;
|
|
7
|
+
top: 1px;
|
|
8
|
+
width: 60px;
|
|
9
|
+
height: 30px;
|
|
10
|
+
border-radius: radius('lg');
|
|
11
|
+
background: var(--mw-dark-footer-background);
|
|
12
|
+
border: 1px solid var(--mw-header-border);
|
|
13
|
+
cursor: pointer;
|
|
14
|
+
display: flex;
|
|
15
|
+
align-items: center;
|
|
16
|
+
transition: var(--mw-transition);
|
|
17
|
+
margin-right: spacing('6');
|
|
18
|
+
appearance: none;
|
|
19
|
+
padding: 0;
|
|
20
|
+
@include tappable;
|
|
21
|
+
@include focus-ring;
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
&:active {
|
|
24
|
+
transform: scale(0.95);
|
|
25
|
+
transition-duration: var(--mw-duration-instant);
|
|
26
|
+
}
|
|
26
27
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
@include media-up('lg') {
|
|
29
|
+
margin-right: spacing('5');
|
|
30
|
+
}
|
|
30
31
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
32
|
+
&-slider {
|
|
33
|
+
position: absolute;
|
|
34
|
+
left: 3px;
|
|
35
|
+
top: 50%;
|
|
36
|
+
transform: translateY(-50%);
|
|
37
|
+
width: 20px;
|
|
38
|
+
height: 20px;
|
|
39
|
+
border-radius: radius('full');
|
|
40
|
+
background: var(--mw-secondary-color);
|
|
41
|
+
transition: var(--mw-transition);
|
|
42
|
+
display: flex;
|
|
43
|
+
align-items: center;
|
|
44
|
+
justify-content: center;
|
|
45
|
+
color: var(--mw-secondary-accent-text-color);
|
|
46
|
+
font-size: font-size('md');
|
|
47
|
+
}
|
|
47
48
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
&.mw-active &-slider,
|
|
50
|
+
&.active &-slider {
|
|
51
|
+
left: 35px;
|
|
52
|
+
}
|
|
52
53
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
54
|
+
&-icon {
|
|
55
|
+
display: flex;
|
|
56
|
+
align-items: center;
|
|
57
|
+
justify-content: center;
|
|
58
|
+
line-height: 1;
|
|
59
|
+
font-size: font-size('base');
|
|
60
|
+
transform: rotate(16deg);
|
|
61
|
+
}
|
|
60
62
|
}
|
|
61
63
|
}
|