PluginProbe
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor / 2.0.7
Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor v2.0.7
2.0.13 2.0.12 2.0.11 2.0.10 2.0.9 trunk 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8
blockenberg / blocks / services-showcase / style.css

style.css in Blockenberg — 600+ Advanced Gutenberg Blocks & AI Agent for WordPress Block Editor 2.0.7, at blocks/services-showcase/style.css

365 lines 13.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* ====================================================
2 Services Showcase — bkbg-sshw-*
3 ==================================================== */
4
5 /* Wrapper */
6 .bkbg-sshw-wrap {
7 box-sizing: border-box;
8 width: 100%;
9 padding-top: var(--bkbg-sshw-pt, 72px);
10 padding-bottom: var(--bkbg-sshw-pb, 72px);
11 }
12
13 /* ── Section header ── */
14 .bkbg-sshw-eyebrow {
15 display: inline-block;
16 background: var(--bkbg-sshw-eyebrow-bg, #ede9fe);
17 color: var(--bkbg-sshw-eyebrow-color, #6c3fb5);
18 font-size: 12px;
19 font-weight: 600;
20 letter-spacing: .08em;
21 text-transform: uppercase;
22 padding: 4px 14px;
23 border-radius: 100px;
24 margin-bottom: 16px;
25 }
26 .bkbg-sshw-section-title {
27 margin: 0 0 12px;
28 font-family: var(--bkshw-stt-font-family);
29 font-size: var(--bkshw-stt-font-size-d, clamp(26px, 3vw, 40px));
30 font-weight: var(--bkshw-stt-font-weight, 700);
31 font-style: var(--bkshw-stt-font-style, normal);
32 text-decoration: var(--bkshw-stt-text-decoration, none);
33 text-transform: var(--bkshw-stt-text-transform, none);
34 line-height: var(--bkshw-stt-line-height-d, 1.22);
35 letter-spacing: var(--bkshw-stt-letter-spacing-d, normal);
36 word-spacing: var(--bkshw-stt-word-spacing-d, normal);
37 color: var(--bkbg-sshw-title2-color, #1e293b);
38 }
39 .bkbg-sshw-header .bkbg-sshw-section-title {
40 font-family: var(--bkshw-stt-font-family);
41 font-size: var(--bkshw-stt-font-size-d, clamp(26px, 3vw, 40px));
42 font-weight: var(--bkshw-stt-font-weight, 700);
43 font-style: var(--bkshw-stt-font-style, normal);
44 text-decoration: var(--bkshw-stt-text-decoration, none);
45 text-transform: var(--bkshw-stt-text-transform, none);
46 line-height: var(--bkshw-stt-line-height-d, 1.22);
47 letter-spacing: var(--bkshw-stt-letter-spacing-d, normal);
48 word-spacing: var(--bkshw-stt-word-spacing-d, normal);
49 color: var(--bkbg-sshw-title2-color, #1e293b);
50 }
51 .bkbg-sshw-section-sub {
52 margin: 0;
53 font-size: 17px;
54 color: var(--bkbg-sshw-sub-color, #64748b);
55 max-width: 560px;
56 }
57 /* auto-center sub when header is centred */
58 .bkbg-sshw-header[style*="center"] .bkbg-sshw-section-sub {
59 margin-left: auto;
60 margin-right: auto;
61 }
62
63 /* ── Grid ── */
64 .bkbg-sshw-grid {
65 display: grid;
66 grid-template-columns: repeat(var(--bkbg-sshw-cols, 3), 1fr);
67 gap: var(--bkbg-sshw-gap, 28px);
68 align-items: stretch;
69 }
70
71 /* ── Card base ── */
72 .bkbg-sshw-card {
73 position: relative;
74 display: flex;
75 flex-direction: column;
76 background: var(--bkbg-sshw-card-bg, #ffffff);
77 border-radius: var(--bkbg-sshw-r, 16px);
78 padding: var(--bkbg-sshw-pad, 32px);
79 transition: transform .25s, box-shadow .25s;
80 overflow: hidden;
81 }
82
83 /* ── Card style variants ── */
84 /* clean — flat, no shadow */
85 .bkbg-sshw-card--clean {
86 border: 1px solid var(--bkbg-sshw-card-brd, #e2e8f0);
87 }
88 .bkbg-sshw-card--clean:hover {
89 transform: translateY(-4px);
90 box-shadow: 0 12px 32px rgba(0,0,0,.08);
91 }
92 /* bordered — thicker border emphasis */
93 .bkbg-sshw-card--bordered {
94 border: 2px solid var(--bkbg-sshw-card-brd, #e2e8f0);
95 }
96 .bkbg-sshw-card--bordered:hover {
97 border-color: var(--bkbg-sshw-feat-chk, #6c3fb5);
98 transform: translateY(-3px);
99 }
100 /* shadow — floating card */
101 .bkbg-sshw-card--shadow {
102 box-shadow: 0 4px 20px rgba(0,0,0,.08);
103 }
104 .bkbg-sshw-card--shadow:hover {
105 transform: translateY(-6px);
106 box-shadow: 0 16px 48px rgba(0,0,0,.14);
107 }
108 /* accent-top — coloured bar at top */
109 .bkbg-sshw-card--accent-top {
110 border: 1px solid var(--bkbg-sshw-card-brd, #e2e8f0);
111 padding-top: calc(var(--bkbg-sshw-pad, 32px) + 6px);
112 }
113 .bkbg-sshw-accent-bar {
114 position: absolute;
115 top: 0;
116 left: 0;
117 right: 0;
118 height: 5px;
119 border-radius: var(--bkbg-sshw-r, 16px) var(--bkbg-sshw-r, 16px) 0 0;
120 }
121 .bkbg-sshw-card--accent-top:hover {
122 transform: translateY(-4px);
123 box-shadow: 0 12px 32px rgba(0,0,0,.08);
124 }
125 /* gradient bg */
126 .bkbg-sshw-card--gradient {
127 background: linear-gradient(145deg, #f5f3ff 0%, #eff6ff 100%);
128 border: 1px solid #ddd6fe;
129 }
130 .bkbg-sshw-card--gradient:hover {
131 transform: translateY(-4px);
132 box-shadow: 0 12px 32px rgba(108,63,181,.12);
133 }
134
135 /* ── Badge ── */
136 .bkbg-sshw-badge {
137 position: absolute;
138 top: 16px;
139 right: 16px;
140 background: var(--bkbg-sshw-eyebrow-bg, #ede9fe);
141 color: var(--bkbg-sshw-eyebrow-color, #6c3fb5);
142 font-size: 11px;
143 font-weight: 700;
144 letter-spacing: .06em;
145 text-transform: uppercase;
146 padding: 3px 10px;
147 border-radius: 100px;
148 }
149
150 /* ── Icon ── */
151 .bkbg-sshw-icon-wrap {
152 width: var(--bkbg-sshw-icon-bg-sz, 72px);
153 height: var(--bkbg-sshw-icon-bg-sz, 72px);
154 border-radius: 16px;
155 display: flex;
156 align-items: center;
157 justify-content: center;
158 margin-bottom: 20px;
159 flex-shrink: 0;
160 transition: transform .25s;
161 }
162 .bkbg-sshw-card:hover .bkbg-sshw-icon-wrap {
163 transform: scale(1.06);
164 }
165 .bkbg-sshw-icon {
166 font-size: var(--bkbg-sshw-icon-sz, 40px);
167 line-height: 1;
168 display: block;
169 }
170 .bkbg-sshw-icon svg { width: 1em; height: 1em; fill: currentColor; }
171 .bkbg-sshw-icon .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
172 .bkbg-sshw-icon .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
173
174 /* Card image variant */
175 .bkbg-sshw-card-image {
176 width: 100%;
177 margin-bottom: 20px;
178 border-radius: 8px;
179 overflow: hidden;
180 }
181 .bkbg-sshw-card-image img {
182 width: 100%;
183 display: block;
184 object-fit: cover;
185 max-height: 180px;
186 }
187
188 /* ── Card text ── */
189 .bkbg-sshw-card-title {
190 margin: 0 0 10px;
191 font-family: var(--bkshw-ctt-font-family);
192 font-size: var(--bkshw-ctt-font-size-d, var(--bkbg-sshw-title-sz, 21px));
193 font-weight: var(--bkshw-ctt-font-weight, 700);
194 font-style: var(--bkshw-ctt-font-style, normal);
195 text-decoration: var(--bkshw-ctt-text-decoration, none);
196 text-transform: var(--bkshw-ctt-text-transform, none);
197 line-height: var(--bkshw-ctt-line-height-d, 1.25);
198 letter-spacing: var(--bkshw-ctt-letter-spacing-d, normal);
199 word-spacing: var(--bkshw-ctt-word-spacing-d, normal);
200 color: var(--bkbg-sshw-title-color, #1e293b);
201 }
202 .bkbg-sshw-card .bkbg-sshw-card-title {
203 font-family: var(--bkshw-ctt-font-family);
204 font-size: var(--bkshw-ctt-font-size-d, var(--bkbg-sshw-title-sz, 21px));
205 font-weight: var(--bkshw-ctt-font-weight, 700);
206 font-style: var(--bkshw-ctt-font-style, normal);
207 text-decoration: var(--bkshw-ctt-text-decoration, none);
208 text-transform: var(--bkshw-ctt-text-transform, none);
209 line-height: var(--bkshw-ctt-line-height-d, 1.25);
210 letter-spacing: var(--bkshw-ctt-letter-spacing-d, normal);
211 word-spacing: var(--bkshw-ctt-word-spacing-d, normal);
212 color: var(--bkbg-sshw-title-color, #1e293b);
213 }
214 .bkbg-sshw-card-desc {
215 margin: 0 0 18px;
216 font-family: var(--bkshw-cdt-font-family);
217 font-size: var(--bkshw-cdt-font-size-d, var(--bkbg-sshw-desc-sz, 15px));
218 font-weight: var(--bkshw-cdt-font-weight, 400);
219 font-style: var(--bkshw-cdt-font-style, normal);
220 text-decoration: var(--bkshw-cdt-text-decoration, none);
221 text-transform: var(--bkshw-cdt-text-transform, none);
222 line-height: var(--bkshw-cdt-line-height-d, 1.65);
223 letter-spacing: var(--bkshw-cdt-letter-spacing-d, normal);
224 word-spacing: var(--bkshw-cdt-word-spacing-d, normal);
225 color: var(--bkbg-sshw-desc-color, #64748b);
226 flex: 1;
227 }
228
229 /* ── Feature list ── */
230 .bkbg-sshw-features {
231 list-style: none;
232 margin: 0 0 20px;
233 padding: 0;
234 display: flex;
235 flex-direction: column;
236 gap: 8px;
237 }
238 .bkbg-sshw-feature-item {
239 display: flex;
240 align-items: baseline;
241 gap: 8px;
242 font-size: var(--bkbg-sshw-feat-sz, 14px);
243 color: var(--bkbg-sshw-feat-color, #475569);
244 }
245 .bkbg-sshw-feat-check {
246 font-size: 14px;
247 font-weight: 700;
248 flex-shrink: 0;
249 line-height: 1;
250 }
251 .bkbg-sshw-feat-check svg { width: 1em; height: 1em; fill: currentColor; }
252 .bkbg-sshw-feat-check .dashicons { font-size: inherit; width: 1em; height: 1em; line-height: 1; }
253 .bkbg-sshw-feat-check .bkbg-icon-img { width: 1em; height: 1em; object-fit: contain; }
254
255 /* ── CTA ── */
256 .bkbg-sshw-cta {
257 display: inline-flex;
258 align-items: center;
259 text-decoration: none;
260 font-weight: 600;
261 font-size: 14px;
262 gap: 4px;
263 margin-top: auto;
264 transition: opacity .2s, transform .2s;
265 width: fit-content;
266 }
267 .bkbg-sshw-cta:hover {
268 opacity: .8;
269 transform: translateX(2px);
270 }
271
272 /* Link-arrow style */
273 .bkbg-sshw-cta--link-arrow {
274 background: transparent;
275 padding: 0;
276 border: none;
277 }
278 .bkbg-sshw-cta-arrow {
279 transition: transform .2s;
280 display: inline-block;
281 }
282 .bkbg-sshw-cta--link-arrow:hover .bkbg-sshw-cta-arrow {
283 transform: translateX(4px);
284 }
285
286 /* Solid button */
287 .bkbg-sshw-cta--btn-solid {
288 background: currentColor;
289 color: #fff;
290 padding: 10px 20px;
291 border-radius: 50px;
292 }
293 .bkbg-sshw-cta--btn-solid span,
294 .bkbg-sshw-cta--btn-solid {
295 color: #fff !important;
296 }
297 /* trick: solid bg needs the text white but color var drives bg */
298 .bkbg-sshw-cta--btn-solid {
299 background: var(--bkbg-sshw-cta-color, #6c3fb5);
300 color: #fff;
301 }
302
303 /* Outline button */
304 .bkbg-sshw-cta--btn-outline {
305 border: 2px solid currentColor;
306 padding: 8px 20px;
307 border-radius: 50px;
308 }
309
310 /* ── Responsive ── */
311 @media (max-width: 1024px) {
312 .bkbg-sshw-header .bkbg-sshw-section-title {
313 font-size: var(--bkshw-stt-font-size-t, var(--bkshw-stt-font-size-d, clamp(26px, 3vw, 40px)));
314 line-height: var(--bkshw-stt-line-height-t, var(--bkshw-stt-line-height-d, 1.22));
315 letter-spacing: var(--bkshw-stt-letter-spacing-t, var(--bkshw-stt-letter-spacing-d, normal));
316 word-spacing: var(--bkshw-stt-word-spacing-t, var(--bkshw-stt-word-spacing-d, normal));
317 }
318 .bkbg-sshw-card .bkbg-sshw-card-title {
319 font-size: var(--bkshw-ctt-font-size-t, var(--bkshw-ctt-font-size-d, var(--bkbg-sshw-title-sz, 21px)));
320 line-height: var(--bkshw-ctt-line-height-t, var(--bkshw-ctt-line-height-d, 1.25));
321 letter-spacing: var(--bkshw-ctt-letter-spacing-t, var(--bkshw-ctt-letter-spacing-d, normal));
322 word-spacing: var(--bkshw-ctt-word-spacing-t, var(--bkshw-ctt-word-spacing-d, normal));
323 }
324 .bkbg-sshw-card-desc {
325 font-size: var(--bkshw-cdt-font-size-t, var(--bkshw-cdt-font-size-d, var(--bkbg-sshw-desc-sz, 15px)));
326 line-height: var(--bkshw-cdt-line-height-t, var(--bkshw-cdt-line-height-d, 1.65));
327 letter-spacing: var(--bkshw-cdt-letter-spacing-t, var(--bkshw-cdt-letter-spacing-d, normal));
328 word-spacing: var(--bkshw-cdt-word-spacing-t, var(--bkshw-cdt-word-spacing-d, normal));
329 }
330 }
331 @media (max-width: 767px) {
332 .bkbg-sshw-header .bkbg-sshw-section-title {
333 font-size: var(--bkshw-stt-font-size-m, var(--bkshw-stt-font-size-t, var(--bkshw-stt-font-size-d, clamp(26px, 3vw, 40px))));
334 line-height: var(--bkshw-stt-line-height-m, var(--bkshw-stt-line-height-t, var(--bkshw-stt-line-height-d, 1.22)));
335 letter-spacing: var(--bkshw-stt-letter-spacing-m, var(--bkshw-stt-letter-spacing-t, var(--bkshw-stt-letter-spacing-d, normal)));
336 word-spacing: var(--bkshw-stt-word-spacing-m, var(--bkshw-stt-word-spacing-t, var(--bkshw-stt-word-spacing-d, normal)));
337 }
338 .bkbg-sshw-card .bkbg-sshw-card-title {
339 font-size: var(--bkshw-ctt-font-size-m, var(--bkshw-ctt-font-size-t, var(--bkshw-ctt-font-size-d, var(--bkbg-sshw-title-sz, 21px))));
340 line-height: var(--bkshw-ctt-line-height-m, var(--bkshw-ctt-line-height-t, var(--bkshw-ctt-line-height-d, 1.25)));
341 letter-spacing: var(--bkshw-ctt-letter-spacing-m, var(--bkshw-ctt-letter-spacing-t, var(--bkshw-ctt-letter-spacing-d, normal)));
342 word-spacing: var(--bkshw-ctt-word-spacing-m, var(--bkshw-ctt-word-spacing-t, var(--bkshw-ctt-word-spacing-d, normal)));
343 }
344 .bkbg-sshw-card-desc {
345 font-size: var(--bkshw-cdt-font-size-m, var(--bkshw-cdt-font-size-t, var(--bkshw-cdt-font-size-d, var(--bkbg-sshw-desc-sz, 15px))));
346 line-height: var(--bkshw-cdt-line-height-m, var(--bkshw-cdt-line-height-t, var(--bkshw-cdt-line-height-d, 1.65)));
347 letter-spacing: var(--bkshw-cdt-letter-spacing-m, var(--bkshw-cdt-letter-spacing-t, var(--bkshw-cdt-letter-spacing-d, normal)));
348 word-spacing: var(--bkshw-cdt-word-spacing-m, var(--bkshw-cdt-word-spacing-t, var(--bkshw-cdt-word-spacing-d, normal)));
349 }
350 }
351
352 @media (max-width: 960px) {
353 .bkbg-sshw-grid {
354 grid-template-columns: repeat(2, 1fr);
355 }
356 }
357 @media (max-width: 580px) {
358 .bkbg-sshw-grid {
359 grid-template-columns: 1fr;
360 }
361 .bkbg-sshw-card {
362 padding: 24px 20px;
363 }
364 }
365