PluginProbe
MarqueeAll – Elementor Marquee for Image, Text, Post Grid, Testimonial, Cryptocurrency, Faqs & News Ticker 🌀 / 1.1.9
MarqueeAll – Elementor Marquee for Image, Text, Post Grid, Testimonial, Cryptocurrency, Faqs & News Ticker 🌀 v1.1.9
1.2.3 1.2.2 trunk 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1
marqueeall / assets / css / masscie.css

masscie.css in MarqueeAll – Elementor Marquee for Image, Text, Post Grid, Testimonial, Cryptocurrency, Faqs & News Ticker 🌀 1.1.9, at assets/css/masscie.css

468 lines 9.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* masscie-marquee CSS - Final Polished Version */
2
3 /* Root vars */
4 .masscie-marquee-wrap {
5 --masscie-gap: 24px;
6 --masscie-duration: 30s;
7 overflow: hidden;
8 position: relative;
9 width: 100%;
10 display: block;
11 will-change: transform;
12 backface-visibility: hidden;
13 }
14
15 /* Track */
16 .masscie-track {
17 display: flex;
18 gap: var(--masscie-gap, 24px);
19 flex-wrap: nowrap;
20 align-items: center;
21 transition: none !important;
22 transform: translateZ(0);
23 will-change: transform;
24 }
25
26 /* Group = one set of items */
27 .masscie-group {
28 display: flex;
29 gap: var(--masscie-gap, 24px);
30 flex-shrink: 0;
31 align-items: center;
32 animation: masscie-scroll-x linear infinite;
33 animation-duration: var(--masscie-duration, 30s);
34 animation-play-state: running;
35 backface-visibility: hidden;
36 transform: translate3d(0,0,0);
37 will-change: transform;
38 }
39
40 /* Vertical mode */
41 .masscie-vertical .masscie-track {
42 flex-direction: column;
43 }
44 .masscie-vertical .masscie-group {
45 flex-direction: column;
46 animation-name: masscie-scroll-y !important;
47 }
48
49 /* Reverse direction */
50 .masscie-reverse .masscie-group {
51 animation-direction: reverse;
52 }
53
54 .elementor-widget-masscie-testimonial-marquee .masscie-item img {
55 width: 250px;
56 height: 100%;
57 display: block;
58 object-fit: cover;
59 object-position: center;
60 }
61
62 .masscie-news-title {
63 display: inline-flex;
64 align-items: center;
65 gap: 8px;
66 font-size: 16px;
67 font-weight: 600;
68 color: #fff;
69 background-color: #000;
70 padding: 10px 20px;
71 border-radius: 6px;
72 margin-bottom: 10px;
73 }
74
75 .masscie-news-title svg, .masscie-separator svg {
76 width: 16px; /* small icon */
77 height: 16px;
78 fill: #fff; /* white icon */
79 }
80
81 /* Items */
82 .masscie-marquee-wrap .masscie-track > * {
83 flex: 0 0 auto !important;
84 min-width: 0;
85 }
86 .masscie-item {
87 margin: 0;
88 box-sizing: border-box;
89 display: flex;
90 align-items: center;
91 justify-content: center;
92 }
93 .elementor-widget-masscie-testimonial-marquee .masscie-item img {
94 width: 50px;
95 height: 52px;
96 border-radius: 50%;
97 }
98 .elementor-widget-masscie-image-marquee img {
99 width: 250px;
100 height: 100%;
101 }
102 /* Keyframes — one full group width/height */
103 @keyframes masscie-scroll-x {
104 0% { transform: translate3d(0,0,0); }
105 100% { transform: translate3d(calc(-1 * (100% + var(--masscie-gap, 24px))),0,0); }
106 }
107
108 @keyframes masscie-scroll-y {
109 0% { transform: translate3d(0,0,0); }
110 100% { transform: translate3d(0,calc(-1 * (100% + var(--masscie-gap, 24px))),0); }
111 }
112
113 /* Prevent blink at load by forcing groups offscreen immediately */
114 .masscie-group {
115 animation-fill-mode: forwards;
116 }
117
118 /* Reduced motion */
119 @media (prefers-reduced-motion: reduce) {
120 .masscie-group { animation-play-state: paused !important; }
121 }
122
123 /* RTL safe */
124 [dir="rtl"] .masscie-track { direction: rtl; }
125
126 .masscie-mask-edges {
127 -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
128 mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
129 }
130 .masscie-vertical.masscie-mask-edges {
131 -webkit-mask-image: linear-gradient(to bottom, transparent, black 10%, black 90%, transparent);
132 mask-image: linear-gradient(to bottom, transparent, black 10%, black 90%, transparent);
133 }
134
135 .masscie-icon {
136 display: flex;
137 align-items: center;
138 }
139
140 .masscie-icon svg {
141 width: 16px;
142 height: 16px;
143 fill: currentColor;
144 margin-right: 10px;
145 }
146
147 .masscie-testimonial .masscie-content {
148 font-size: 15px;
149 line-height: 1.6;
150 color: #444;
151 margin-bottom: 20px;
152 }
153
154
155 .masscie-testimonial .masscie-author {
156 margin-top: auto;
157 }
158
159 .masscie-testimonial .masscie-name {
160 font-weight: 700;
161 font-size: 16px;
162 color: #1a1a1a;
163 }
164
165 .masscie-testimonial .masscie-role {
166 font-size: 14px;
167 color: #666;
168 margin-bottom: 6px;
169 }
170
171 .masscie-testimonial .masscie-rating {
172 color: #f5a623; /* gold stars */
173 font-size: 14px;
174 }
175
176 .masscie-card {
177 backdrop-filter: blur(10px);
178 border-radius: 20px;
179 padding: 2rem;
180 width: 100%; /* adapt to container width */
181 max-width: 350px; /* optional: prevent too wide cards */
182 box-shadow: 0 0px 10px rgba(0, 0, 0, 0.1);
183 border: 1px solid rgba(255, 255, 255, 0.2);
184 transition: all 0.3s ease;
185 position: relative;
186 overflow: hidden;
187 background: #fff;
188 box-sizing: border-box; /* ensures padding doesn't break layout */
189 }
190
191 /* Marquee Track */
192 .elementor-widget-post-grid-marquee .masscie-track {
193 display: flex;
194 gap: var(--masscie-gap);
195 }
196
197 /* Marquee wrapper */
198 .elementor-widget-post-grid-marquee .masscie-marquee-wrap {
199 padding: 20px 0;
200 }
201
202
203 .masscie-card:hover {
204 transform: translateY(-10px);
205 }
206
207 .masscie-content {
208 font-size: 1.1rem;
209 line-height: 1.6;
210 color: #2d3748;
211 margin-bottom: 1.5rem;
212 font-weight: 400;
213 }
214
215 .masscie-author {
216 display: flex;
217 gap: 1rem;
218 }
219
220 .masscie-avatar {
221 width: 60px;
222 height: 60px;
223 border-radius: 50%;
224 object-fit: cover;
225 display: flex;
226 align-items: center;
227 justify-content: center;
228 color: white;
229 font-weight: 600;
230 font-size: 1.2rem;
231 text-transform: uppercase;
232 transition: all 0.3s ease;
233 }
234
235 .masscie-avatar:hover {
236 transform: scale(1.1);
237 box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
238 }
239
240 .masscie-name {
241 font-weight: 600;
242 font-size: 1.1rem;
243 color: #2d3748;
244 margin-bottom: 0.25rem;
245 }
246
247 .masscie-role {
248 color: #718096;
249 font-size: 0.9rem;
250 margin-bottom: 0.5rem;
251 }
252
253 .masscie-rating {
254 display: flex;
255 gap: 0.25rem;
256 }
257
258 .masscie-star {
259 color: #fbbf24;
260 font-size: 1.5rem;
261 }
262
263 /* Responsive Design */
264 @media (max-width: 768px) {
265
266 .masscie-card {
267 width: 300px;
268 padding: 1.5rem;
269 }
270
271 .masscie-content {
272 font-size: 1rem;
273 }
274
275 .masscie-avatar {
276 width: 50px;
277 height: 50px;
278 font-size: 1rem;
279 }
280
281 .masscie-track::before,
282 .masscie-track::after {
283 width: 50px;
284 }
285 }
286
287 @media (max-width: 480px) {
288 .masscie-card {
289 width: 280px;
290 padding: 1.25rem;
291 }
292
293 .masscie-content {
294 font-size: 0.95rem;
295 }
296
297 .masscie-name {
298 font-size: 1rem;
299 }
300
301 .masscie-role {
302 font-size: 0.85rem;
303 }
304 }
305
306 /* Dark mode support */
307 @media (prefers-color-scheme: dark) {
308 .masscie-card {
309 background: rgba(45, 55, 72, 0.9);
310 color: #e2e8f0;
311 }
312
313 .masscie-content {
314 color: #e2e8f0;
315 }
316
317 .masscie-name {
318 color: #f7fafc;
319 }
320
321 .masscie-role {
322 color: #a0aec0;
323 }
324 }
325
326 .pgm-post-card {
327 background: #fff;
328 border-radius: 14px;
329 box-shadow: 0 5px 15px rgba(0,0,0,0.07);
330 overflow: hidden;
331 padding: 12px;
332 transition: transform 0.3s ease, box-shadow 0.3s ease;
333 max-width: 380px;
334 }
335 .pgm-info {
336 padding: 15px;
337 }
338
339 .pgm-post-card:hover {
340 transform: translateY(-6px);
341 box-shadow: 0 8px 20px rgba(0,0,0,0.1);
342 }
343
344 .pgm-thumb img {
345 width: 100%;
346 height: auto;
347 border-radius: 12px;
348 object-fit: cover;
349 }
350
351 .pgm-title {
352 font-size: 1.8rem;
353 font-weight: 600;
354 margin-bottom: 10px;
355 }
356
357 .pgm-title a {
358 text-decoration: none;
359 color: #222;
360 }
361
362 .pgm-meta {
363 margin-top: 2px;
364 font-size: 14px;
365 color: #777;
366 display: flex;
367 gap: 10px;
368 align-items: center;
369 }
370
371 .pgm-meta i {
372 margin-right: 5px;
373 color: #888;
374 }
375
376 .pgm-excerpt {
377 margin-top: 10px;
378 color: #555;
379 font-size: 14px;
380 }
381
382 .pgm-readmore {
383 display: inline-block;
384 margin-top: 12px;
385 padding: 6px 18px;
386 background: #f13624;
387 color: #fff;
388 border-radius: 8px;
389 text-decoration: none;
390 font-weight: 500;
391 transition: all 0.3s ease;
392 font-size: 14px;
393 }
394
395 .pgm-readmore:hover {
396 background: #005bb5;
397 }
398
399 /* Team Member Image with Grayscale Effect */
400 .masscie-team-member-image {
401 margin: 0 auto 20px;
402 border-radius: 50%;
403 transition: all 0.5s ease;
404 }
405
406 /* Default state for images when grayscale is enabled */
407 .masscie-grayscale .masscie-team-member-image img {
408 filter: grayscale(100%);
409 transition: all 0.5s ease;
410 }
411
412 /* Hover state - show color */
413 .masscie-grayscale .masscie-team-member:hover .masscie-team-member-image img {
414 filter: grayscale(0%);
415 }
416
417 /* Base image styles */
418 .masscie-team-member-image img {
419 width: 100%;
420 height: 100%;
421 object-fit: cover;
422 transition: all 0.5s ease;
423 }
424
425 /* Text Scramble */
426 .masscie-scramble-container {
427 display: flex;
428 justify-content: center;
429 align-items: center;
430 min-height: 100px;
431 width: 100%;
432 }
433
434 .masscie-scramble-text {
435 font-family: 'Roboto Mono', monospace;
436 font-weight: 100;
437 font-size: 28px;
438 text-align: center;
439 line-height: 1.4;
440 }
441
442 .masscie-scramble-text .dud {
443 opacity: 0.6;
444 }
445
446 /* Text Scramble Widget Styles */
447 .masscie-scramble-container {
448 display: inline-flex;
449 align-items: center;
450 flex-wrap: wrap;
451 gap: 5px;
452 line-height: 1;
453 }
454
455 .masscie-scramble-before,
456 .masscie-scramble-after,
457 .masscie-scramble-text {
458 display: inline-block;
459 vertical-align: middle;
460 margin: 0;
461 padding: 0;
462 line-height: inherit;
463 }
464
465 .masscie-scramble-text {
466 display: inline-flex;
467 align-items: center;
468 }