@@ -132,12 +132,16 @@ h1, h2, h3, h4, h5, h6 {
132
132
/* ---------------------------------------------------------- */
133
133
134
134
body {
135
- font-family : var (--font-sans );
135
+ font-family : var (--gh- font-body , var ( --font- sans) );
136
136
font-size : 1.6rem ;
137
137
background-color : var (--background-color );
138
138
color : var (--color-primary-text );
139
139
}
140
140
141
+ h1 , h2 , h3 , h4 , h5 , h6 {
142
+ font-family : var (--gh-font-heading , var (--font-sans ));
143
+ }
144
+
141
145
a {
142
146
color : var (--color-darker-gray );
143
147
text-decoration : none;
@@ -244,7 +248,7 @@ button.gh-form-input {
244
248
color : rgb (0 0 0 / 0.3 );
245
249
}
246
250
247
- : is (.has-serif-title , .has-mono-title ) .gh-form-input {
251
+ : is (.has-serif-title , .has-mono-title ): not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-form-input {
248
252
padding-inline : 20px ;
249
253
}
250
254
@@ -280,7 +284,7 @@ button.gh-form-input {
280
284
cursor : pointer;
281
285
}
282
286
283
- : is (.has-serif-title , .has-mono-title ) button .gh-form-input {
287
+ : is (.has-serif-title , .has-mono-title ): not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) button .gh-form-input {
284
288
padding-inline-start : 50px ;
285
289
}
286
290
@@ -300,7 +304,7 @@ button.gh-form-input {
300
304
color : var (--color-secondary-text );
301
305
}
302
306
303
- : is (.has-serif-title , .has-mono-title ) .gh-form > svg {
307
+ : is (.has-serif-title , .has-mono-title ): not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-form > svg {
304
308
left : 16px ;
305
309
}
306
310
@@ -438,6 +442,7 @@ button.gh-form-input {
438
442
439
443
.gh-navigation-logo {
440
444
position : relative;
445
+ font-family : var (--gh-font-heading , var (--font-sans ));
441
446
font-size : calc (2.4rem * var (--factor , 1 ));
442
447
font-weight : 725 ;
443
448
letter-spacing : -0.015em ;
@@ -1609,7 +1614,7 @@ Search LOGO Login Subscribe
1609
1614
height : 18px ;
1610
1615
}
1611
1616
1612
- .has-serif-title .gh-more svg {
1617
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-more svg {
1613
1618
margin-top : 0 ;
1614
1619
}
1615
1620
@@ -2118,7 +2123,7 @@ unless a heading is the very first element in the post content */
2118
2123
font-weight : 700 ;
2119
2124
}
2120
2125
2121
- .has-serif-body .post-template .gh-content .drop-cap > p : first-of-type : first-letter {
2126
+ .has-serif-body .post-template : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content .drop-cap > p : first-of-type : first-letter {
2122
2127
font-size : 3.2em ;
2123
2128
}
2124
2129
@@ -2163,15 +2168,15 @@ unless a heading is the very first element in the post content */
2163
2168
font-size : 0.95em ;
2164
2169
}
2165
2170
2166
- .has-serif-body .gh-content > blockquote ,
2167
- .has-serif-body .gh-content > ol ,
2168
- .has-serif-body .gh-content > ul ,
2169
- .has-serif-body .gh-content > dl ,
2170
- .has-serif-body .gh-content > p ,
2171
- .has-serif-body .gh-content .kg-callout-text ,
2172
- .has-serif-body .gh-content .kg-toggle-content > ol ,
2173
- .has-serif-body .gh-content .kg-toggle-content > ul ,
2174
- .has-serif-body .gh-content .kg-toggle-content > p {
2171
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content > blockquote ,
2172
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content > ol ,
2173
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content > ul ,
2174
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content > dl ,
2175
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content > p ,
2176
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content .kg-callout-text ,
2177
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content .kg-toggle-content > ol ,
2178
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content .kg-toggle-content > ul ,
2179
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-content .kg-toggle-content > p {
2175
2180
font-family : var (--font-serif-alt );
2176
2181
}
2177
2182
@@ -2313,11 +2318,11 @@ unless a heading is the very first element in the post content */
2313
2318
font-weight : 700 ;
2314
2319
}
2315
2320
2316
- .has-serif-title .kg-toggle-card .kg-toggle-heading-text {
2321
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .kg-toggle-card .kg-toggle-heading-text {
2317
2322
font-family : var (--font-serif );
2318
2323
}
2319
2324
2320
- .has-mono-title .kg-toggle-card .kg-toggle-heading-text {
2325
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .kg-toggle-card .kg-toggle-heading-text {
2321
2326
font-family : var (--font-mono );
2322
2327
}
2323
2328
@@ -2356,15 +2361,15 @@ blockquote.kg-blockquote-alt {
2356
2361
2357
2362
/* Header */
2358
2363
2359
- .has-serif-title .kg-card .kg-header-card h2 .kg-header-card-header {
2364
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .kg-card .kg-header-card h2 .kg-header-card-header {
2360
2365
font-family : var (--font-serif );
2361
2366
}
2362
2367
2363
- .has-mono-title .kg-card .kg-header-card h2 .kg-header-card-header {
2368
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .kg-card .kg-header-card h2 .kg-header-card-header {
2364
2369
font-family : var (--font-mono );
2365
2370
}
2366
2371
2367
- .has-serif-body .kg-header-card h3 .kg-header-card-subheader {
2372
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .kg-header-card h3 .kg-header-card-subheader {
2368
2373
font-family : var (--font-serif );
2369
2374
}
2370
2375
@@ -2417,15 +2422,15 @@ blockquote.kg-blockquote-alt {
2417
2422
margin-top : 12px ;
2418
2423
}
2419
2424
2420
- .has-serif-title .kg-product-card .kg-card .kg-product-card-title {
2425
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .kg-product-card .kg-card .kg-product-card-title {
2421
2426
font-family : var (--font-serif );
2422
2427
}
2423
2428
2424
- .has-mono-title .kg-product-card .kg-card .kg-product-card-title {
2429
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .kg-product-card .kg-card .kg-product-card-title {
2425
2430
font-family : var (--font-mono );
2426
2431
}
2427
2432
2428
- .has-serif-body .kg-product-card-description : is (p , ul , ol ) {
2433
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .kg-product-card-description : is (p , ul , ol ) {
2429
2434
font-family : var (--font-serif-alt );
2430
2435
}
2431
2436
@@ -2597,131 +2602,131 @@ figcaption a {
2597
2602
/* 20. Design settings
2598
2603
/* ---------------------------------------------------------- */
2599
2604
2600
- .has-serif-title {
2605
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) {
2601
2606
--factor : 1.15 ;
2602
2607
}
2603
2608
2604
- .has-mono-title {
2609
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) {
2605
2610
--factor : 1.1 ;
2606
2611
}
2607
2612
2608
- .has-sans-title : is (.is-title , .gh-content : is (h2 , h3 )) {
2609
- font-family : var (--font-sans );
2613
+ .has-sans-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) : is (.is-title , .gh-content : is (h2 , h3 )) {
2614
+ font-family : var (--gh- font-heading , var ( --font- sans) );
2610
2615
}
2611
2616
2612
- .has-serif-title : is (.is-title , .gh-content : is (h2 , h3 )) {
2613
- font-family : var (--font-serif );
2617
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) : is (.is-title , .gh-content : is (h2 , h3 )) {
2618
+ font-family : var (--gh- font-heading , var ( --font- serif) );
2614
2619
font-weight : 550 ;
2615
2620
}
2616
2621
2617
- .has-mono-title : is (.is-title , .gh-content : is (h2 , h3 )) {
2618
- font-family : var (--font-mono );
2622
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) : is (.is-title , .gh-content : is (h2 , h3 )) {
2623
+ font-family : var (--gh- font-heading , var ( --font- mono) );
2619
2624
}
2620
2625
2621
- .has-sans-body .is-body {
2622
- font-family : var (--font-sans );
2626
+ .has-sans-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .is-body {
2627
+ font-family : var (--gh- font-body , var ( --font- sans) );
2623
2628
}
2624
2629
2625
- .has-serif-body .is-body {
2626
- font-family : var (--font-serif-alt );
2630
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .is-body {
2631
+ font-family : var (--gh- font-body , var ( --font- serif-alt) );
2627
2632
}
2628
2633
2629
- .has-serif-title .gh-header .is-classic .gh-header-title {
2634
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-header .is-classic .gh-header-title {
2630
2635
font-weight : 550 ;
2631
2636
letter-spacing : -0.015em ;
2632
2637
}
2633
2638
2634
- .has-mono-title .gh-header .is-classic .gh-header-title {
2639
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-header .is-classic .gh-header-title {
2635
2640
letter-spacing : -0.01em ;
2636
2641
}
2637
2642
2638
- .has-serif-title .gh-form {
2643
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-form {
2639
2644
border-radius : 0 ;
2640
2645
}
2641
2646
2642
- .has-serif-title .gh-card-title {
2647
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-card-title {
2643
2648
line-height : 1.15 ;
2644
2649
letter-spacing : -0.006em ;
2645
2650
font-size : calc (2.0 rem*var(--factor , 1))
2646
2651
}
2647
2652
2648
- .has-serif-title .gh-featured-feed .gh-card-title {
2653
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-featured-feed .gh-card-title {
2649
2654
font-size : calc (1.6 rem*var(--factor , 1))
2650
2655
}
2651
2656
2652
- .has-mono-title .gh-featured-feed .gh-card-title {
2657
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-featured-feed .gh-card-title {
2653
2658
font-size : calc (1.5 rem*var(--factor , 1));
2654
2659
letter-spacing : 0 ;
2655
2660
}
2656
2661
2657
- .has-serif-title .gh-header .is-highlight .gh-featured-feed .gh-card-title {
2662
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-header .is-highlight .gh-featured-feed .gh-card-title {
2658
2663
font-size : clamp (1.6rem , 0.23vw + 1.51rem , 1.8rem );
2659
2664
}
2660
2665
2661
- .has-mono-title .gh-card-title {
2666
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-card-title {
2662
2667
font-size : calc (1.8 rem*var(--factor , 1));
2663
2668
line-height : 1.2 ;
2664
2669
}
2665
2670
2666
- .has-serif-title .gh-about-title {
2671
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-about-title {
2667
2672
letter-spacing : -0.009em ;
2668
2673
}
2669
2674
2670
- .has-serif-title .gh-footer-signup-header {
2675
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-footer-signup-header {
2671
2676
letter-spacing : -0.019em ;
2672
2677
}
2673
2678
2674
- .has-serif-title .gh-article-title {
2679
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-article-title {
2675
2680
letter-spacing : -0.019em ;
2676
2681
}
2677
2682
2678
- .has-serif-body {
2683
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) {
2679
2684
--content-font-size : 1.9rem ;
2680
2685
}
2681
2686
2682
- .has-serif-body .gh-card-excerpt {
2687
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-card-excerpt {
2683
2688
font-size : 1.65rem ;
2684
2689
line-height : 1.4 ;
2685
2690
letter-spacing : 0.0005em ;
2686
2691
}
2687
2692
2688
- .has-serif-body .gh-header .is-magazine .gh-header-inner > .gh-card .gh-card-excerpt ,
2689
- .has-serif-body .gh-header .is-highlight .gh-card : first-child .gh-card-excerpt {
2693
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-header .is-magazine .gh-header-inner > .gh-card .gh-card-excerpt ,
2694
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-header .is-highlight .gh-card : first-child .gh-card-excerpt {
2690
2695
font-size : 1.8rem ;
2691
2696
letter-spacing : -0.001em ;
2692
2697
}
2693
2698
2694
- .has-serif-title .gh-header .is-magazine .gh-header-inner > .gh-card .gh-card-title ,
2695
- .has-serif-title .gh-header .is-highlight .gh-header-left .gh-card-title {
2699
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-header .is-magazine .gh-header-inner > .gh-card .gh-card-title ,
2700
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-header .is-highlight .gh-header-left .gh-card-title {
2696
2701
font-weight : 550 ;
2697
2702
font-size : clamp (3.2rem , 1.82vw + 2.47rem , 4.9rem )
2698
2703
}
2699
2704
2700
- .has-serif-body .gh-about-description {
2705
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-about-description {
2701
2706
font-size : 1.6rem ;
2702
2707
}
2703
2708
2704
- .has-serif-body .gh-article-excerpt {
2709
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-article-excerpt {
2705
2710
letter-spacing : 0 ;
2706
2711
}
2707
2712
2708
- .has-serif-body .gh-footer-signup-subhead {
2713
+ .has-serif-body : not ([ class *= " gh-font-body" ]) : not ([ class ^= "gh-font-body" ]) .gh-footer-signup-subhead {
2709
2714
letter-spacing : 0 ;
2710
2715
}
2711
2716
2712
- .has-serif-title : is (.gh-button , .gh-form , .gh-form-input ) {
2717
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) : is (.gh-button , .gh-form , .gh-form-input ) {
2713
2718
border-radius : 0 ;
2714
2719
}
2715
2720
2716
- .has-mono-title : is (.gh-button ) {
2721
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) : is (.gh-button ) {
2717
2722
border-radius : 0 ;
2718
2723
}
2719
2724
2720
- .has-mono-title : is (.gh-form ) {
2725
+ .has-mono-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) : is (.gh-form ) {
2721
2726
border-radius : 0 ;
2722
2727
}
2723
2728
2724
- .has-serif-title .gh-cta-title {
2729
+ .has-serif-title : not ([ class *= " gh-font-heading" ]) : not ([ class ^= "gh-font-heading" ]) .gh-cta-title {
2725
2730
font-size : 4.8rem ;
2726
2731
}
2727
2732
@@ -2768,6 +2773,7 @@ figcaption a {
2768
2773
2769
2774
.gh-footer-logo {
2770
2775
position : relative;
2776
+ font-family : var (--gh-font-heading , var (--font-sans ));
2771
2777
font-size : calc (2.4rem * var (--factor , 1 ));
2772
2778
font-weight : 725 ;
2773
2779
letter-spacing : -0.015em ;
0 commit comments