Diff of /web/features/features.css [000000] .. [8c4ad8]

Switch to unified view

a b/web/features/features.css
1
/* Features Page Styles */
2
3
/* Hero section */
4
.features-hero {
5
    padding: 140px 0 80px;
6
    position: relative;
7
    text-align: center;
8
}
9
10
.features-hero-content h1 {
11
    font-size: 3.5rem;
12
    margin-bottom: var(--space-md);
13
}
14
15
.features-hero-content p {
16
    font-size: 1.2rem;
17
    max-width: 700px;
18
    margin: 0 auto;
19
    color: rgba(255, 255, 255, 0.8);
20
}
21
22
/* Feature highlights */
23
.feature-highlights {
24
    padding-top: var(--space-xxl);
25
}
26
27
.features-grid {
28
    display: grid;
29
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
30
    gap: var(--space-xl);
31
}
32
33
.feature-card {
34
    background: rgba(255, 255, 255, 0.05);
35
    border-radius: var(--radius-lg);
36
    padding: var(--space-xl);
37
    border: 1px solid rgba(255, 255, 255, 0.1);
38
    transition: all var(--transition-normal);
39
    height: 100%;
40
    display: flex;
41
    flex-direction: column;
42
}
43
44
.feature-card:hover {
45
    transform: translateY(-5px);
46
    background: rgba(255, 255, 255, 0.08);
47
    box-shadow: var(--shadow-md);
48
    border-color: rgba(255, 255, 255, 0.15);
49
}
50
51
.feature-card .feature-icon {
52
    width: 60px;
53
    height: 60px;
54
    background: linear-gradient(135deg, rgba(255, 0, 102, 0.15), rgba(0, 164, 239, 0.15));
55
    border-radius: var(--radius-md);
56
    display: flex;
57
    align-items: center;
58
    justify-content: center;
59
    font-size: 1.5rem;
60
    color: var(--blue);
61
    margin-bottom: var(--space-md);
62
}
63
64
.feature-card h3 {
65
    font-size: 1.3rem;
66
    margin-bottom: var(--space-sm);
67
    color: var(--white);
68
}
69
70
.feature-card p {
71
    color: rgba(255, 255, 255, 0.7);
72
    flex: 1;
73
    margin-bottom: var(--space-md);
74
}
75
76
.feature-link {
77
    display: inline-flex;
78
    align-items: center;
79
    gap: var(--space-xs);
80
    color: var(--blue);
81
    font-weight: 500;
82
    font-size: 0.95rem;
83
    transition: all var(--transition-fast);
84
}
85
86
.feature-link i {
87
    transition: all var(--transition-fast);
88
}
89
90
.feature-link:hover {
91
    color: var(--light-blue);
92
}
93
94
.feature-link:hover i {
95
    transform: translateX(var(--space-xs));
96
}
97
98
/* Detailed feature sections */
99
.section-detailed {
100
    padding: var(--space-xxl) 0;
101
}
102
103
.feature-section-odd {
104
    background: linear-gradient(135deg, rgba(5, 30, 62, 0.7), rgba(0, 20, 39, 0.7));
105
}
106
107
.feature-detailed {
108
    display: grid;
109
    grid-template-columns: 1fr 1fr;
110
    gap: var(--space-xxl);
111
    align-items: center;
112
}
113
114
.feature-detailed.reverse {
115
    grid-template-columns: 1fr 1fr;
116
    direction: rtl;
117
}
118
119
.feature-detailed.reverse .feature-content {
120
    direction: ltr;
121
}
122
123
.feature-image {
124
    position: relative;
125
}
126
127
.feature-image-wrapper {
128
    position: relative;
129
    overflow: hidden;
130
    border-radius: var(--radius-lg);
131
    box-shadow: var(--shadow-lg);
132
    background: linear-gradient(135deg, rgba(255, 0, 102, 0.1), rgba(0, 164, 239, 0.1));
133
    padding: var(--space-sm);
134
    height: 0;
135
    padding-bottom: 70%;
136
    display: flex;
137
    align-items: center;
138
    justify-content: center;
139
}
140
141
.feature-image-wrapper::before {
142
    content: '';
143
    position: absolute;
144
    top: 0;
145
    left: 0;
146
    width: 100%;
147
    height: 100%;
148
    background: linear-gradient(135deg, rgba(255, 0, 102, 0.05), rgba(0, 164, 239, 0.05));
149
    z-index: 0;
150
}
151
152
.feature-image-wrapper img {
153
    position: absolute;
154
    top: 0;
155
    left: 0;
156
    width: 100%;
157
    height: 100%;
158
    object-fit: cover;
159
    object-position: center;
160
    transition: all var(--transition-normal);
161
}
162
163
.feature-content h2 {
164
    font-size: 2.5rem;
165
    margin-bottom: var(--space-md);
166
    color: var(--white);
167
}
168
169
.feature-content > p {
170
    font-size: 1.1rem;
171
    color: rgba(255, 255, 255, 0.8);
172
    margin-bottom: var(--space-lg);
173
}
174
175
.feature-list {
176
    list-style: none;
177
    padding: 0;
178
    margin: 0 0 var(--space-xl) 0;
179
}
180
181
.feature-list li {
182
    display: flex;
183
    margin-bottom: var(--space-lg);
184
    gap: var(--space-md);
185
}
186
187
.feature-list li i {
188
    color: var(--blue);
189
    font-size: 1.2rem;
190
    flex-shrink: 0;
191
    margin-top: 0.2rem;
192
}
193
194
.feature-list li div h4 {
195
    margin: 0 0 var(--space-xs) 0;
196
    font-size: 1.1rem;
197
    color: var(--white);
198
}
199
200
.feature-list li div p {
201
    margin: 0;
202
    color: rgba(255, 255, 255, 0.7);
203
}
204
205
/* Comparison table */
206
.comparison-section {
207
    background: var(--dark-blue);
208
    padding: var(--space-xxl) 0;
209
}
210
211
.comparison-table-container {
212
    overflow-x: auto;
213
    margin-top: var(--space-xl);
214
}
215
216
.comparison-table {
217
    width: 100%;
218
    border-collapse: collapse;
219
    color: var(--white);
220
}
221
222
.comparison-table th,
223
.comparison-table td {
224
    padding: var(--space-md) var(--space-lg);
225
    text-align: left;
226
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
227
}
228
229
.comparison-table th {
230
    background: rgba(0, 0, 0, 0.2);
231
    font-weight: 600;
232
    color: var(--blue);
233
}
234
235
.comparison-table tr:hover td {
236
    background: rgba(255, 255, 255, 0.05);
237
}
238
239
.comparison-table td:nth-child(1) {
240
    font-weight: 500;
241
}
242
243
.check-icon {
244
    color: var(--success);
245
    margin-right: var(--space-xs);
246
}
247
248
.x-icon {
249
    color: var(--error);
250
    margin-right: var(--space-xs);
251
}
252
253
.minus-icon {
254
    color: var(--warning);
255
    margin-right: var(--space-xs);
256
}
257
258
/* Testimonials */
259
.testimonials-section {
260
    padding: var(--space-xxl) 0;
261
}
262
263
.testimonials-grid {
264
    display: grid;
265
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
266
    gap: var(--space-xl);
267
    margin-top: var(--space-xl);
268
}
269
270
.testimonial-card {
271
    background: rgba(255, 255, 255, 0.05);
272
    border-radius: var(--radius-lg);
273
    padding: var(--space-xl);
274
    border: 1px solid rgba(255, 255, 255, 0.1);
275
    transition: all var(--transition-normal);
276
    height: 100%;
277
    display: flex;
278
    flex-direction: column;
279
}
280
281
.testimonial-card:hover {
282
    transform: translateY(-5px);
283
    background: rgba(255, 255, 255, 0.08);
284
    box-shadow: var(--shadow-md);
285
    border-color: rgba(255, 255, 255, 0.15);
286
}
287
288
.testimonial-content {
289
    flex: 1;
290
}
291
292
.testimonial-content p {
293
    font-style: italic;
294
    color: rgba(255, 255, 255, 0.85);
295
    font-size: 1.05rem;
296
    line-height: 1.6;
297
    position: relative;
298
    padding: 0 var(--space-sm);
299
}
300
301
.testimonial-content p::before,
302
.testimonial-content p::after {
303
    content: '"';
304
    color: var(--blue);
305
    font-size: 1.5rem;
306
    font-weight: 700;
307
    position: absolute;
308
}
309
310
.testimonial-content p::before {
311
    left: -var(--space-xs);
312
    top: -var(--space-xs);
313
}
314
315
.testimonial-content p::after {
316
    right: -var(--space-xs);
317
    bottom: 0;
318
}
319
320
.testimonial-author {
321
    display: flex;
322
    align-items: center;
323
    margin-top: var(--space-md);
324
    padding-top: var(--space-md);
325
    border-top: 1px solid rgba(255, 255, 255, 0.1);
326
}
327
328
.author-info h4 {
329
    margin: 0 0 var(--space-xs) 0;
330
    font-size: 1rem;
331
    color: var(--white);
332
}
333
334
.author-info p {
335
    margin: 0;
336
    font-size: 0.85rem;
337
    color: rgba(255, 255, 255, 0.6);
338
}
339
340
/* CTA Section */
341
.cta-section {
342
    background: linear-gradient(135deg, rgba(255, 0, 102, 0.1), rgba(0, 164, 239, 0.1));
343
    padding: var(--space-xxl) 0;
344
    text-align: center;
345
}
346
347
.cta-section h2 {
348
    font-size: 2.5rem;
349
    margin-bottom: var(--space-md);
350
    color: var(--white);
351
}
352
353
.cta-section p {
354
    font-size: 1.2rem;
355
    color: rgba(255, 255, 255, 0.8);
356
    margin-bottom: var(--space-xl);
357
    max-width: 700px;
358
    margin-left: auto;
359
    margin-right: auto;
360
}
361
362
.cta-buttons {
363
    display: flex;
364
    gap: var(--space-md);
365
    justify-content: center;
366
}
367
368
/* Animation for fade-in elements */
369
[data-aos] {
370
    opacity: 0;
371
    transform: translateY(20px);
372
    transition: opacity 0.8s ease, transform 0.8s ease;
373
}
374
375
[data-aos].aos-animate {
376
    opacity: 1;
377
    transform: translateY(0);
378
}
379
380
[data-aos-delay="100"] {
381
    transition-delay: 0.1s;
382
}
383
384
[data-aos-delay="200"] {
385
    transition-delay: 0.2s;
386
}
387
388
/* Responsive styles */
389
@media (max-width: 1024px) {
390
    .feature-detailed,
391
    .feature-detailed.reverse {
392
        grid-template-columns: 1fr;
393
        gap: var(--space-xl);
394
        direction: ltr;
395
    }
396
    
397
    .feature-content h2 {
398
        font-size: 2rem;
399
    }
400
    
401
    .cta-buttons {
402
        flex-direction: column;
403
        max-width: 300px;
404
        margin: 0 auto;
405
    }
406
}
407
408
@media (max-width: 768px) {
409
    .features-hero-content h1 {
410
        font-size: 2.5rem;
411
    }
412
    
413
    .features-grid {
414
        grid-template-columns: 1fr;
415
    }
416
    
417
    .testimonials-grid {
418
        grid-template-columns: 1fr;
419
    }
420
    
421
    .feature-image-wrapper {
422
        padding-bottom: 60%;
423
    }
424
}
425
426
@media (max-width: 480px) {
427
    .features-hero-content h1 {
428
        font-size: 2rem;
429
    }
430
    
431
    .features-hero-content p {
432
        font-size: 1rem;
433
    }
434
    
435
    .feature-content h2 {
436
        font-size: 1.75rem;
437
    }
438
    
439
    .feature-list li {
440
        flex-direction: column;
441
        gap: var(--space-xs);
442
    }
443
    
444
    .comparison-table th,
445
    .comparison-table td {
446
        padding: var(--space-sm);
447
    }
448
}