18
18
--body-line-height : 1.7 ;
19
19
--paragraph-spacing : 1.6rem ;
20
20
--heading-spacing : 1.8rem ;
21
+
22
+ /* Typographic scale */
23
+ --text-xs : 0.75rem ; /* 12px */
24
+ --text-sm : 0.875rem ; /* 14px */
25
+ --text-base : 1rem ; /* 16px */
26
+ --text-md : 1.125rem ; /* 18px */
27
+ --text-lg : 1.25rem ; /* 20px */
28
+ --text-xl : 1.5rem ; /* 24px */
29
+ --text-2xl : 1.875rem ; /* 30px */
30
+ --text-3xl : 2.25rem ; /* 36px */
31
+ --text-4xl : 3rem ; /* 48px */
32
+
33
+ /* Spacing rhythm values */
34
+ --space-1 : 0.25rem ;
35
+ --space-2 : 0.5rem ;
36
+ --space-3 : 0.75rem ;
37
+ --space-4 : 1rem ;
38
+ --space-6 : 1.5rem ;
39
+ --space-8 : 2rem ;
40
+ --space-12 : 3rem ;
41
+ --space-16 : 4rem ;
21
42
}
22
43
23
44
* {
26
47
box-sizing : border-box;
27
48
}
28
49
50
+ html {
51
+ scroll-behavior : smooth;
52
+ }
53
+
54
+ h1 , h2 , h3 , h4 , h5 , h6 {
55
+ letter-spacing : -0.025em ;
56
+ font-weight : 700 ;
57
+ }
58
+
59
+ h1 {
60
+ font-size : var (--text-4xl );
61
+ line-height : 1.1 ;
62
+ font-weight : 800 ;
63
+ }
64
+
65
+ h2 {
66
+ font-size : var (--text-2xl );
67
+ line-height : 1.2 ;
68
+ }
69
+
70
+ h3 {
71
+ font-size : var (--text-xl );
72
+ line-height : 1.3 ;
73
+ }
74
+
29
75
body {
30
76
font-family : 'Inter' , -apple-system, BlinkMacSystemFont, 'Segoe UI' , Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans' , 'Helvetica Neue' , sans-serif;
31
77
font-size : 16px ;
61
107
62
108
.logo {
63
109
font-size : 1.8rem ;
64
- font-weight : 700 ;
110
+ font-weight : 600 ;
65
111
font-family : 'GlassTTYVT220' , monospace;
66
112
color : var (--terminal-green );
67
113
text-decoration : none;
78
124
text-decoration : none;
79
125
font-weight : 500 ;
80
126
transition : color 0.3s ;
127
+ font-size : var (--text-sm );
128
+ letter-spacing : 0.01em ;
129
+ text-transform : uppercase;
81
130
}
82
131
83
132
.nav-links a : hover {
@@ -252,7 +301,7 @@ nav {
252
301
border-radius : 8px ;
253
302
padding : 30px ;
254
303
box-shadow : 0 4px 10px rgba (0 , 0 , 0 , 0.05 );
255
- transition : transform 0.3s , box-shadow 0.3s ;
304
+ transition : transform 0.3s , box-shadow 0.3s , background-color 0.3 s ;
256
305
border-left : 3px solid var (--primary );
257
306
display : block;
258
307
color : inherit;
@@ -262,7 +311,14 @@ nav {
262
311
263
312
.feature-card : hover {
264
313
transform : translateY (-5px );
265
- box-shadow : 0 8px 20px rgba (0 , 0 , 0 , 0.1 );
314
+ box-shadow : 0 8px 20px rgba (0 , 0 , 0 , 0.12 );
315
+ background-color : rgba (76 , 110 , 245 , 0.03 );
316
+ }
317
+
318
+ .feature-card p {
319
+ font-size : var (--text-base );
320
+ line-height : 1.6 ;
321
+ color : rgba (33 , 37 , 41 , 0.9 );
266
322
}
267
323
268
324
.feature-card-header {
@@ -284,14 +340,14 @@ nav {
284
340
}
285
341
286
342
.feature-title {
287
- font-size : 1.35 rem ;
343
+ font-size : var ( --text-lg ) ;
288
344
color : var (--dark );
289
345
margin : 0 ;
290
346
position : relative;
291
- padding-bottom : 12 px ;
347
+ padding-bottom : var ( --space-3 ) ;
292
348
font-weight : 600 ;
293
- letter-spacing : -0.25 px ;
294
- line-height : var ( --heading-line-height ) ;
349
+ letter-spacing : -0.01 em ;
350
+ line-height : 1.3 ;
295
351
}
296
352
297
353
.feature-title ::after {
@@ -309,17 +365,24 @@ nav {
309
365
background-color : # f8f9fb ;
310
366
}
311
367
368
+ code , pre , .code-block {
369
+ font-family : 'Fira Code' , 'JetBrains Mono' , 'SF Mono' , Consolas, Monaco, 'Andale Mono' , monospace;
370
+ font-feature-settings : "liga" 1 , "calt" 1 ; /* Enable ligatures */
371
+ letter-spacing : -0.025em ;
372
+ font-size : 0.95em ;
373
+ }
374
+
312
375
.code-block {
313
376
background-color : var (--code-bg );
314
377
border-radius : 8px ;
315
378
padding : 1.5rem ;
316
379
color : white;
317
- font-family : 'SF Mono' , 'Cascadia Code' , 'Fira Code' , Consolas, 'Liberation Mono' , Menlo, monospace;
318
380
font-size : 1.1rem ;
319
- line-height : 1.6 ;
381
+ line-height : 1.5 ;
320
382
margin : 1.5rem 0 ;
321
383
overflow-x : auto;
322
384
box-shadow : 0 4px 16px rgba (0 , 0 , 0 , 0.1 );
385
+ tab-size : 2 ;
323
386
}
324
387
325
388
.testimonials {
@@ -353,6 +416,8 @@ nav {
353
416
padding : 0 10px ;
354
417
font-size : 1.1rem ;
355
418
line-height : var (--body-line-height );
419
+ text-wrap : balance;
420
+ hanging-punctuation : first;
356
421
}
357
422
358
423
.testimonial-text ::before ,
@@ -546,12 +611,15 @@ footer {
546
611
height : 28px ;
547
612
border-radius : 4px ;
548
613
overflow : hidden;
549
- font-size : 0.85 rem ;
614
+ font-size : var ( --text-xs ) ;
550
615
font-weight : 600 ;
551
616
line-height : 1 ;
552
617
text-decoration : none;
553
618
transition : transform 0.2s ;
554
619
box-shadow : 0 1px 3px rgba (0 , 0 , 0 , 0.12 );
620
+ font-family : 'Inter' , -apple-system, BlinkMacSystemFont, sans-serif;
621
+ letter-spacing : 0.02em ;
622
+ text-transform : uppercase;
555
623
}
556
624
557
625
.github-badge : hover {
@@ -740,6 +808,30 @@ footer {
740
808
}
741
809
}
742
810
811
+ @media (max-width : 768px ) {
812
+ : root {
813
+ /* Adjust scale for mobile */
814
+ --text-4xl : 2.5rem ;
815
+ --text-2xl : 1.75rem ;
816
+ --text-xl : 1.25rem ;
817
+ }
818
+
819
+ body {
820
+ line-height : 1.5 ;
821
+ }
822
+
823
+ .feature-card p {
824
+ font-size : 0.9375rem ;
825
+ }
826
+
827
+ /* Optimize testimonial display on mobile */
828
+ .testimonial-text {
829
+ font-size : 1rem ;
830
+ line-height : 1.6 ;
831
+ text-wrap : pretty; /* Modern browsers will balance text */
832
+ }
833
+ }
834
+
743
835
@media (max-width : 576px ) {
744
836
: root {
745
837
--heading-line-height : 1.3 ;
0 commit comments