ultimate-jekyll-manager 0.0.117 → 0.0.119

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CLAUDE.md +616 -138
  2. package/README.md +108 -0
  3. package/TODO.md +1 -1
  4. package/dist/assets/js/core/auth.js +8 -11
  5. package/dist/assets/js/core/cookieconsent.js +24 -17
  6. package/dist/assets/js/core/exit-popup.js +15 -12
  7. package/dist/assets/js/core/social-sharing.js +8 -4
  8. package/dist/assets/js/libs/auth/pages.js +14 -13
  9. package/dist/assets/js/libs/dev.js +192 -129
  10. package/dist/assets/js/libs/prerendered-icons.js +27 -0
  11. package/dist/assets/js/pages/account/index.js +4 -3
  12. package/dist/assets/js/pages/account/sections/api-keys.js +2 -6
  13. package/dist/assets/js/pages/account/sections/connections.js +101 -59
  14. package/dist/assets/js/pages/account/sections/delete.js +83 -84
  15. package/dist/assets/js/pages/account/sections/referrals.js +29 -29
  16. package/dist/assets/js/pages/account/sections/security.js +51 -71
  17. package/dist/assets/js/pages/admin/notifications/new/index.js +17 -10
  18. package/dist/assets/js/pages/blog/index.js +7 -5
  19. package/dist/assets/js/pages/contact/index.js +6 -33
  20. package/dist/assets/js/pages/download/index.js +3 -2
  21. package/dist/assets/js/pages/payment/checkout/index.js +6 -6
  22. package/dist/assets/js/pages/payment/checkout/modules/processors-main.js +2 -2
  23. package/dist/assets/js/pages/payment/checkout/modules/session.js +4 -4
  24. package/dist/assets/js/pages/pricing/index.js +5 -2
  25. package/dist/assets/themes/classy/css/components/_cards.scss +2 -2
  26. package/dist/defaults/_.env +6 -0
  27. package/dist/defaults/_.gitignore +7 -1
  28. package/dist/defaults/dist/_includes/core/body.html +18 -3
  29. package/dist/defaults/dist/_includes/core/foot.html +1 -0
  30. package/dist/defaults/dist/_includes/themes/classy/frontend/sections/nav.html +51 -36
  31. package/dist/defaults/dist/_layouts/blueprint/admin/notifications/new.html +13 -2
  32. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/about.html +84 -42
  33. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/account/index.html +67 -35
  34. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/blog/index.html +72 -58
  35. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/blog/post.html +46 -29
  36. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/contact.html +36 -16
  37. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/download.html +111 -73
  38. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/index.html +111 -56
  39. package/dist/defaults/dist/_layouts/themes/classy/frontend/pages/pricing.html +127 -81
  40. package/dist/defaults/dist/pages/pricing.md +7 -0
  41. package/dist/defaults/dist/pages/test/libraries/lazy-loading.html +1 -1
  42. package/dist/gulp/tasks/defaults.js +210 -1
  43. package/firebase-debug.log +504 -0
  44. package/package.json +5 -5
@@ -6,14 +6,16 @@ layout: themes/[ site.theme.id ]/frontend/core/base
6
6
  # Hero Section
7
7
  hero:
8
8
  headline: "Download {{ site.brand.name }}"
9
- headline_accent: "Today"
9
+ headline_accent: "today"
10
10
  description: "Get {{ site.brand.name }} for your platform and start building amazing things"
11
11
 
12
12
  # Downloads Section
13
13
  downloads:
14
- superheadline: "{% uj_icon 'download' %} Download"
15
- headline: "Available on Every"
16
- headline_accent: "Platform"
14
+ superheadline:
15
+ icon: "download"
16
+ text: "Download"
17
+ headline: "Available on every"
18
+ headline_accent: "platform"
17
19
  subheadline: "Choose your platform below to get started"
18
20
  supported_platforms:
19
21
  - "Windows"
@@ -78,18 +80,20 @@ downloads:
78
80
 
79
81
  # Features Section
80
82
  features:
81
- superheadline: "{% uj_icon 'star' %} Benefits"
82
- headline: "Why You Should"
83
- headline_accent: "Download"
83
+ superheadline:
84
+ icon: "star"
85
+ text: "Benefits"
86
+ headline: "Why you should"
87
+ headline_accent: "download"
84
88
  subheadline: "Everything you need to succeed, built right in"
85
89
  items:
86
- - title: "Lightning Fast"
90
+ - title: "Lightning fast"
87
91
  description: "Install in seconds and start using immediately"
88
92
  icon: "bolt"
89
- - title: "Cross-Platform"
93
+ - title: "Cross-platform"
90
94
  description: "Seamlessly sync across all your devices"
91
95
  icon: "sync"
92
- - title: "Auto-Update"
96
+ - title: "Auto-update"
93
97
  description: "Always get the latest features automatically"
94
98
  icon: "cloud-arrow-down"
95
99
  - title: "Secure"
@@ -98,9 +102,11 @@ features:
98
102
 
99
103
  # System Requirements Section
100
104
  system_requirements:
101
- superheadline: "{% uj_icon 'server' %} Requirements"
105
+ superheadline:
106
+ icon: "server"
107
+ text: "Requirements"
102
108
  headline: "System"
103
- headline_accent: "Requirements"
109
+ headline_accent: "requirements"
104
110
  subheadline: "Make sure your device meets these minimum requirements"
105
111
  desktop:
106
112
  label: "Desktop"
@@ -121,10 +127,12 @@ system_requirements:
121
127
 
122
128
  # FAQ Section
123
129
  faqs:
124
- superheadline: "{% uj_icon 'circle-question' %} FAQs"
125
- headline: "Frequently Asked"
126
- headline_accent: "Questions"
127
- subheadline: "Everything you need to know about downloading and installing. Can't find the answer you're looking for? Please chat to our friendly team."
130
+ superheadline:
131
+ icon: "messages-question"
132
+ text: "FAQs"
133
+ headline: "Frequently asked"
134
+ headline_accent: "questions"
135
+ subheadline: "Everything you need to know about downloading and installing {{ site.brand.name }}."
128
136
  items:
129
137
  - question: "Is {{ site.brand.name }} free to download?"
130
138
  answer: "Yes! {{ site.brand.name }} is completely free to download and use. We offer premium features for power users, but the core functionality is always free."
@@ -137,7 +145,9 @@ faqs:
137
145
 
138
146
  # CTA Section
139
147
  cta:
140
- superheadline: "{% uj_icon 'headset' %} Support"
148
+ superheadline:
149
+ icon: "comments"
150
+ text: "Support"
141
151
  headline: "Need help getting"
142
152
  headline_accent: "started?"
143
153
  subheadline: "Our support team is here 24/7 to help you with installation and setup"
@@ -172,8 +182,13 @@ cta:
172
182
  <section class="pt-0">
173
183
  <div class="container">
174
184
  <div class="text-center mb-5" data-lazy="@class animation-slide-up">
175
- {% iftruthy page.resolved.downloads.superheadline %}
176
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.downloads.superheadline }}</span>
185
+ {% iftruthy page.resolved.downloads.superheadline.text %}
186
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
187
+ {% iftruthy page.resolved.downloads.superheadline.icon %}
188
+ {% uj_icon page.resolved.downloads.superheadline.icon, "me-1" %}
189
+ {% endiftruthy %}
190
+ {{ page.resolved.downloads.superheadline.text }}
191
+ </span>
177
192
  {% endiftruthy %}
178
193
  <h2 class="h2 mb-2">
179
194
  {{ page.resolved.downloads.headline }}
@@ -182,7 +197,7 @@ cta:
182
197
  {% endiftruthy %}
183
198
  </h2>
184
199
  {% iftruthy page.resolved.downloads.subheadline %}
185
- <p class="fs-5 text-muted mb-4">{{ page.resolved.downloads.subheadline }}</p>
200
+ <p class="fs-5 text-muted">{{ page.resolved.downloads.subheadline }}</p>
186
201
  {% endiftruthy %}
187
202
  </div>
188
203
 
@@ -190,7 +205,7 @@ cta:
190
205
  <div class="row justify-content-center mb-5">
191
206
  <div class="col-12">
192
207
  <div class="d-flex flex-wrap justify-content-center gap-3" data-lazy="@class animation-slide-up">
193
- <ul class="nav nav-pills gap-3 border-0" id="platform-selector" role="tablist">
208
+ <ul class="nav nav-pills gap-3 border-0 justify-content-center w-100" id="platform-selector" role="tablist">
194
209
  <!-- Loading tab (shown by default until platform is detected) -->
195
210
  <li class="nav-item d-none" role="presentation" data-platform="loading">
196
211
  <button
@@ -220,9 +235,9 @@ cta:
220
235
  {% endiftruthy %}
221
236
  {% endfor %}
222
237
 
223
- <li class="nav-item" role="presentation">
238
+ <li class="nav-item flex-fill flex-sm-grow-0" role="presentation">
224
239
  <button
225
- class="btn btn-outline-adaptive btn-lg platform-btn d-flex align-items-center justify-content-center"
240
+ class="btn btn-outline-adaptive btn-lg platform-btn d-flex align-items-center justify-content-center w-100"
226
241
  id="{{ platform.id }}-tab"
227
242
  data-bs-toggle="tab"
228
243
  data-bs-target="#{{ platform.id }}-pane"
@@ -320,7 +335,7 @@ cta:
320
335
  {% uj_icon "triangle-exclamation", "fs-4 me-3" %}
321
336
  <div class="text-start">
322
337
  <h6 class="mb-0">{{ page.resolved.downloads.not_available.headline }}</h6>
323
- <small>{{ page.resolved.downloads.not_available.description }}</small>
338
+ <small>{{ site.brand.name }} is not currently available for {{ platform.name }}. Please choose another platform.</small>
324
339
  </div>
325
340
  </div>
326
341
  {% endif %}
@@ -351,20 +366,8 @@ cta:
351
366
  {% endfor %}
352
367
  </div>
353
368
  {% else %}
354
- <div class="d-flex flex-column gap-3">
355
- {% for type in platform.types %}
356
- <button
357
- type="button"
358
- class="btn btn-primary btn-lg d-flex align-items-center justify-content-center"
359
- >
360
- {% uj_icon type.icon, "fa-3xl me-2" %}
361
- {{ type.name }}
362
- </button>
363
- {% endfor %}
364
- </div>
365
-
366
369
  {% if platform.id == "android" or platform.id == "ios" %}
367
- <div class="mt-4 text-start">
370
+ <div class="mb-4 text-start">
368
371
  <form id="mobile-email-form-{{ platform.id }}" class="mobile-email-form" data-platform="{{ platform.id }}">
369
372
  <label for="email-{{ platform.id }}" class="form-label">Email Address</label>
370
373
  <div class="row g-3">
@@ -389,6 +392,19 @@ cta:
389
392
  </form>
390
393
  </div>
391
394
  {% endif %}
395
+
396
+ <div class="d-flex flex-column gap-3">
397
+ {% for type in platform.types %}
398
+ <button
399
+ type="button"
400
+ class="btn btn-primary btn-lg d-flex align-items-center justify-content-center"
401
+ disabled
402
+ >
403
+ {% uj_icon type.icon, "fa-3xl me-2" %}
404
+ {{ type.name }}
405
+ </button>
406
+ {% endfor %}
407
+ </div>
392
408
  {% endif %}
393
409
  </div>
394
410
  </div>
@@ -404,8 +420,13 @@ cta:
404
420
  <section>
405
421
  <div class="container">
406
422
  <div class="text-center mb-5" data-lazy="@class animation-slide-up">
407
- {% iftruthy page.resolved.features.superheadline %}
408
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.features.superheadline }}</span>
423
+ {% iftruthy page.resolved.features.superheadline.text %}
424
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
425
+ {% iftruthy page.resolved.features.superheadline.icon %}
426
+ {% uj_icon page.resolved.features.superheadline.icon, "me-1" %}
427
+ {% endiftruthy %}
428
+ {{ page.resolved.features.superheadline.text }}
429
+ </span>
409
430
  {% endiftruthy %}
410
431
  <h2 class="h2 mb-2">
411
432
  {{ page.resolved.features.headline }}
@@ -444,8 +465,13 @@ cta:
444
465
  <div class="card border-0 shadow-sm">
445
466
  <div class="card-body p-5">
446
467
  <div class="text-center mb-4">
447
- {% iftruthy page.resolved.system_requirements.superheadline %}
448
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.system_requirements.superheadline }}</span>
468
+ {% iftruthy page.resolved.system_requirements.superheadline.text %}
469
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
470
+ {% iftruthy page.resolved.system_requirements.superheadline.icon %}
471
+ {% uj_icon page.resolved.system_requirements.superheadline.icon, "me-1" %}
472
+ {% endiftruthy %}
473
+ {{ page.resolved.system_requirements.superheadline.text }}
474
+ </span>
449
475
  {% endiftruthy %}
450
476
  <h2 class="h2 mb-2">
451
477
  {{ page.resolved.system_requirements.headline }}
@@ -505,9 +531,14 @@ cta:
505
531
  <div class="container">
506
532
  <div class="row justify-content-center">
507
533
  <div class="col-lg-8">
508
- <div class="text-center mb-4" data-lazy="@class animation-slide-up">
509
- {% iftruthy page.resolved.faqs.superheadline %}
510
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.faqs.superheadline }}</span>
534
+ <div class="text-center mb-5" data-lazy="@class animation-slide-up">
535
+ {% iftruthy page.resolved.faqs.superheadline.text %}
536
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
537
+ {% iftruthy page.resolved.faqs.superheadline.icon %}
538
+ {% uj_icon page.resolved.faqs.superheadline.icon, "me-1" %}
539
+ {% endiftruthy %}
540
+ {{ page.resolved.faqs.superheadline.text }}
541
+ </span>
511
542
  {% endiftruthy %}
512
543
  <h2 class="h2 mb-2">
513
544
  {{ page.resolved.faqs.headline }}
@@ -516,7 +547,7 @@ cta:
516
547
  {% endiftruthy %}
517
548
  </h2>
518
549
  {% iftruthy page.resolved.faqs.subheadline %}
519
- <p class="fs-5 text-muted mb-0">{{ page.resolved.faqs.subheadline }}</p>
550
+ <p class="fs-5 text-muted">{{ page.resolved.faqs.subheadline }}</p>
520
551
  {% endiftruthy %}
521
552
  </div>
522
553
 
@@ -544,36 +575,43 @@ cta:
544
575
  <!-- CTA Section -->
545
576
  <section>
546
577
  <div class="container">
547
- <div class="rounded-4 p-5 position-relative overflow-hidden bg-primary bg-gradient" data-lazy="@class animation-slide-up">
548
- <div class="row align-items-center py-4">
549
- <div class="col-lg-8 text-light text-center text-lg-start">
550
- {% iftruthy page.resolved.cta.superheadline %}
551
- <span class="badge bg-white bg-opacity-25 text-light p-2 mb-1 fw-semibold small">{{ page.resolved.cta.superheadline }}</span>
552
- {% endiftruthy %}
553
- <h2 class="h2 lh-sm mb-2">
554
- {{ page.resolved.cta.headline }}
555
- {% iftruthy page.resolved.cta.headline_accent %}
556
- <span class="text-accent">{{ page.resolved.cta.headline_accent }}</span>
578
+ <div class="card border-0 bg-gradient bg-primary text-white rounded-4 p-4 p-md-5 text-center position-relative overflow-hidden" data-lazy="@class animation-slide-up">
579
+ <!-- Decorative icon - top right -->
580
+ <div class="position-absolute top-0 end-0 opacity-25" style="font-size:10rem;transform:rotate(15deg)translate(30%,-30%)">
581
+ {% uj_icon "messages-question", "text-white" %}
582
+ </div>
583
+
584
+ <!-- Decorative icon - bottom left -->
585
+ <div class="position-absolute bottom-0 start-0 opacity-25" style="font-size:8rem;transform:rotate(-20deg)translate(-30%,30%)">
586
+ {% uj_icon "shield-check", "text-white" %}
587
+ </div>
588
+
589
+ <div class="position-relative">
590
+ {% iftruthy page.resolved.cta.superheadline.text %}
591
+ <span class="badge bg-white bg-opacity-25 text-light p-2 mb-3 fw-semibold small">
592
+ {% iftruthy page.resolved.cta.superheadline.icon %}
593
+ {% uj_icon page.resolved.cta.superheadline.icon, "me-1" %}
557
594
  {% endiftruthy %}
558
- </h2>
559
- {% iftruthy page.resolved.cta.subheadline %}
560
- <p class="fs-5 mb-4 opacity-90">
561
- {{ page.resolved.cta.subheadline }}
562
- </p>
595
+ {{ page.resolved.cta.superheadline.text }}
596
+ </span>
597
+ {% endiftruthy %}
598
+
599
+ <h2 class="h3 fw-bold mb-3">
600
+ {{ page.resolved.cta.headline }}
601
+ {% iftruthy page.resolved.cta.headline_accent %}
602
+ <span class="text-accent">{{ page.resolved.cta.headline_accent }}</span>
563
603
  {% endiftruthy %}
564
- <div class="d-flex flex-column flex-sm-row gap-3 justify-content-center justify-content-lg-start">
565
- <a href="{{ page.resolved.cta.primary_button.href }}" class="btn btn-adaptive btn-lg px-5 py-3">
566
- {% uj_icon page.resolved.cta.primary_button.icon, "me-2" %}
567
- {{ page.resolved.cta.primary_button.text }}
568
- </a>
569
- <a href="{{ page.resolved.cta.secondary_button.href }}" class="btn btn-outline-adaptive btn-lg px-5 py-3">
570
- {% uj_icon page.resolved.cta.secondary_button.icon, "me-2" %}
571
- {{ page.resolved.cta.secondary_button.text }}
572
- </a>
573
- </div>
574
- </div>
575
- <div class="col-lg-4 d-none d-lg-block text-end">
576
- {% uj_icon "download", "text-light display-1" %}
604
+ </h2>
605
+
606
+ {% iftruthy page.resolved.cta.subheadline %}
607
+ <p class="lead mb-4">{{ page.resolved.cta.subheadline }}</p>
608
+ {% endiftruthy %}
609
+
610
+ <div class="d-flex flex-column flex-sm-row gap-3 justify-content-center">
611
+ <a href="{{ page.resolved.cta.primary_button.href }}" class="btn btn-light btn-lg px-4">
612
+ {% uj_icon page.resolved.cta.primary_button.icon, "me-2" %}
613
+ {{ page.resolved.cta.primary_button.text }}
614
+ </a>
577
615
  </div>
578
616
  </div>
579
617
  </div>
@@ -11,8 +11,8 @@ theme:
11
11
  # Hero Section
12
12
  hero:
13
13
  tagline: "Introducing {{ site.brand.name }}"
14
- headline: "The #1 Platform for"
15
- headline_accent: "Business Success"
14
+ headline: "The #1 platform for business"
15
+ headline_accent: "success"
16
16
  description: "AI automation for modern businesses made simple."
17
17
  primary_button:
18
18
  text: "Get Started Free"
@@ -66,9 +66,11 @@ trusted_by:
66
66
 
67
67
  # Product Demo Section
68
68
  product_demo:
69
- superheadline: "{% uj_icon 'desktop' %} Demo"
69
+ superheadline:
70
+ icon: "rocket"
71
+ text: "Demo"
70
72
  headline: "See {{ site.brand.name }} in"
71
- headline_accent: "Action"
73
+ headline_accent: "action"
72
74
  subheadline: "Explore powerful features that help you succeed"
73
75
  tabs:
74
76
  - id: "dashboard"
@@ -102,28 +104,32 @@ product_demo:
102
104
  - "Compliance Tools"
103
105
  - "Data Protection"
104
106
 
105
- # Alternating Features Section
106
- alternating_features:
107
- superheadline: "{% uj_icon 'sparkles' %} Features"
108
- headline: "What Makes {{ site.brand.name }}"
109
- headline_accent: "Different"
107
+ # Showcase Section
108
+ showcase:
109
+ superheadline:
110
+ icon: "cubes"
111
+ text: "Showcase"
112
+ headline: "What makes {{ site.brand.name }}"
113
+ headline_accent: "different"
110
114
  subheadline: "Powerful features designed to accelerate your success"
111
115
  image_ratio: "4x3" # Options: 1x1, 4x3, 16x9, 21x9
112
116
  image_object_position: "center" # Options: center, top, bottom, left, right
113
117
  items:
114
- - title: "Seamless Integration"
118
+ - title: "Seamless integration"
115
119
  description: "Connect with your existing tools and platforms effortlessly. Our system automatically syncs data and streamlines your workflow for maximum efficiency."
116
120
  image: "https://cdn.itwcreativeworks.com/assets/sample/images/demos/1x1/sample-demo-1.svg"
117
- - title: "Data-Driven Insights"
121
+ - title: "Data-driven insights"
118
122
  description: "Make informed decisions with real-time analytics and actionable insights that help you understand what matters most to your business."
119
123
  image: "https://cdn.itwcreativeworks.com/assets/sample/images/demos/1x1/sample-demo-2.svg"
120
- - title: "Smart Automation"
124
+ - title: "Smart automation"
121
125
  description: "Focus on what matters while our intelligent platform handles routine tasks automatically, working 24/7 to keep your business running smoothly."
122
126
  image: "https://cdn.itwcreativeworks.com/assets/sample/images/demos/1x1/sample-demo-3.svg"
123
127
 
124
128
  # Features Section
125
129
  features:
126
- superheadline: "{% uj_icon 'check-circle' %} Features"
130
+ superheadline:
131
+ icon: "sparkles"
132
+ text: "Features"
127
133
  headline: "Design made"
128
134
  headline_accent: "simple"
129
135
  subheadline: "Get unlimited design requests delivered fast with our streamlined process."
@@ -144,8 +150,11 @@ features:
144
150
 
145
151
  # Testimonials Section
146
152
  testimonials:
147
- superheadline: "{% uj_icon 'comments' %} Testimonials"
148
- headline: "People {% uj_icon \"heart\", \"text-danger\" %} {{ site.brand.name }}"
153
+ superheadline:
154
+ icon: "megaphone"
155
+ text: "Testimonials"
156
+ headline: "People {% uj_icon \"heart\", \"text-danger\" %} "
157
+ headline_accent: "{{ site.brand.name }}"
149
158
  subheadline: "Hear from real people who have transformed their business with us"
150
159
  items:
151
160
  - quote: "This platform transformed my business. The support is incredible!"
@@ -189,9 +198,11 @@ stats:
189
198
 
190
199
  # CTA Section
191
200
  cta:
192
- superheadline: "{% uj_icon 'rocket' %} Launch"
193
- headline: "Ready to Transform your"
194
- headline_accent: "Business?"
201
+ superheadline:
202
+ icon: "rocket"
203
+ text: "Launch"
204
+ headline: "Ready to transform your"
205
+ headline_accent: "business?"
195
206
  description: "Join thousands of successful companies who have already accelerated their growth with {{ site.brand.name }}"
196
207
  primary_button:
197
208
  text: "Start Today"
@@ -307,8 +318,7 @@ cta:
307
318
  <p class="text-uppercase fw-semibold mb-3 opacity-80">{{ page.resolved.hero.tagline }}</p>
308
319
 
309
320
  <h1 class="h1 fw-900 mb-4">
310
- {{ page.resolved.hero.headline }}<br>
311
- <span class="text-accent">{{ page.resolved.hero.headline_accent }}</span>
321
+ {{ page.resolved.hero.headline }} <span class="text-accent">{{ page.resolved.hero.headline_accent }}</span>
312
322
  </h1>
313
323
 
314
324
  <p class="fs-4 mb-4 opacity-80">
@@ -334,7 +344,7 @@ cta:
334
344
  <!-- Trusted By Section -->
335
345
  <section class="overflow-hidden pt-7">
336
346
  <div class="container-fluid px-0">
337
- <div class="text-center mb-4" data-lazy="@class animation-slide-up">
347
+ <div class="text-center mb-3" data-lazy="@class animation-slide-up">
338
348
  <h3 class="fs-4">{{ page.resolved.trusted_by.headline }}</h3>
339
349
  </div>
340
350
 
@@ -354,8 +364,13 @@ cta:
354
364
  <section>
355
365
  <div class="container">
356
366
  <div class="text-center mb-5" data-lazy="@class animation-slide-up">
357
- {% iftruthy page.resolved.product_demo.superheadline %}
358
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.product_demo.superheadline }}</span>
367
+ {% iftruthy page.resolved.product_demo.superheadline.text %}
368
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
369
+ {% iftruthy page.resolved.product_demo.superheadline.icon %}
370
+ {% uj_icon page.resolved.product_demo.superheadline.icon, "me-1" %}
371
+ {% endiftruthy %}
372
+ {{ page.resolved.product_demo.superheadline.text }}
373
+ </span>
359
374
  {% endiftruthy %}
360
375
 
361
376
  <h2 class="h2 mb-2">
@@ -422,21 +437,26 @@ cta:
422
437
  </div>
423
438
  </section>
424
439
 
425
- <!-- Alternating Features Section -->
440
+ <!-- Showcase Section -->
426
441
  <section class="bg-body-secondary rounded-4">
427
442
  <div class="container">
428
443
  <div class="text-center mb-5" data-lazy="@class animation-slide-up">
429
- {% iftruthy page.resolved.alternating_features.superheadline %}
430
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.alternating_features.superheadline }}</span>
444
+ {% iftruthy page.resolved.showcase.superheadline.text %}
445
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
446
+ {% iftruthy page.resolved.showcase.superheadline.icon %}
447
+ {% uj_icon page.resolved.showcase.superheadline.icon, "me-1" %}
448
+ {% endiftruthy %}
449
+ {{ page.resolved.showcase.superheadline.text }}
450
+ </span>
431
451
  {% endiftruthy %}
432
452
  <h2 class="h2 mb-2">
433
- {{ page.resolved.alternating_features.headline }}
434
- <span class="text-accent">{{ page.resolved.alternating_features.headline_accent }}</span>
453
+ {{ page.resolved.showcase.headline }}
454
+ <span class="text-accent">{{ page.resolved.showcase.headline_accent }}</span>
435
455
  </h2>
436
- <p class="fs-5 text-muted">{{ page.resolved.alternating_features.subheadline }}</p>
456
+ <p class="fs-5 text-muted">{{ page.resolved.showcase.subheadline }}</p>
437
457
  </div>
438
458
 
439
- {% for item in page.resolved.alternating_features.items %}
459
+ {% for item in page.resolved.showcase.items %}
440
460
  {% assign is_even = forloop.index | modulo: 2 %}
441
461
 
442
462
  <!-- Set classes based on position -->
@@ -450,8 +470,8 @@ cta:
450
470
 
451
471
  <!-- Common content -->
452
472
  {% capture image_content %}
453
- {% assign ratio = page.resolved.alternating_features.image_ratio | default: "4x3" %}
454
- {% assign object_position = page.resolved.alternating_features.image_object_position | default: "center" %}
473
+ {% assign ratio = page.resolved.showcase.image_ratio | default: "4x3" %}
474
+ {% assign object_position = page.resolved.showcase.image_object_position | default: "center" %}
455
475
  <div class="card border-0 shadow-sm ratio ratio-{{ ratio }}">
456
476
  {% uj_image item.image, class="w-100 h-100 object-fit-cover rounded", style="object-position: {{ object_position }};", alt=item.title %}
457
477
  </div>
@@ -478,8 +498,13 @@ cta:
478
498
  <section>
479
499
  <div class="container">
480
500
  <div class="text-center mb-5" data-lazy="@class animation-slide-up">
481
- {% iftruthy page.resolved.features.superheadline %}
482
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.features.superheadline }}</span>
501
+ {% iftruthy page.resolved.features.superheadline.text %}
502
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
503
+ {% iftruthy page.resolved.features.superheadline.icon %}
504
+ {% uj_icon page.resolved.features.superheadline.icon, "me-1" %}
505
+ {% endiftruthy %}
506
+ {{ page.resolved.features.superheadline.text }}
507
+ </span>
483
508
  {% endiftruthy %}
484
509
  <h2 class="h2 mb-2">
485
510
  {{ page.resolved.features.headline }}
@@ -523,10 +548,20 @@ cta:
523
548
  <section>
524
549
  <div class="container">
525
550
  <div class="text-center mb-5" data-lazy="@class animation-slide-up">
526
- {% iftruthy page.resolved.testimonials.superheadline %}
527
- <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">{{ page.resolved.testimonials.superheadline }}</span>
551
+ {% iftruthy page.resolved.testimonials.superheadline.text %}
552
+ <span class="badge bg-body-tertiary border-gradient-rainbow border-1 text-body p-2 mb-1 fw-semibold small">
553
+ {% iftruthy page.resolved.testimonials.superheadline.icon %}
554
+ {% uj_icon page.resolved.testimonials.superheadline.icon, "me-1" %}
555
+ {% endiftruthy %}
556
+ {{ page.resolved.testimonials.superheadline.text }}
557
+ </span>
528
558
  {% endiftruthy %}
529
- <h2 class="h2 mb-2">{{ page.resolved.testimonials.headline }}</h2>
559
+ <h2 class="h2 mb-2">
560
+ {{ page.resolved.testimonials.headline }}
561
+ {% iftruthy page.resolved.testimonials.headline_accent %}
562
+ <span class="text-accent">{{ page.resolved.testimonials.headline_accent }}</span>
563
+ {% endiftruthy %}
564
+ </h2>
530
565
  {% iftruthy page.resolved.testimonials.subheadline %}
531
566
  <p class="fs-5 text-muted">{{ page.resolved.testimonials.subheadline }}</p>
532
567
  {% endiftruthy %}
@@ -607,29 +642,49 @@ cta:
607
642
  <!-- CTA Section -->
608
643
  <section>
609
644
  <div class="container">
610
- <div class="rounded-4 p-5 bg-primary bg-gradient text-light text-center" data-lazy="@class animation-slide-up">
611
- <div class="row justify-content-center">
612
- <div class="col-lg-8">
613
- {% iftruthy page.resolved.cta.superheadline %}
614
- <span class="badge bg-white bg-opacity-25 text-light p-2 mb-1 fw-semibold small">{{ page.resolved.cta.superheadline }}</span>
615
- {% endiftruthy %}
616
- <h2 class="h2 mb-4">
617
- {{ page.resolved.cta.headline }}
645
+ <div class="card border-0 bg-gradient bg-primary text-white rounded-4 p-4 p-md-5 text-center position-relative overflow-hidden" data-lazy="@class animation-slide-up">
646
+ <!-- Decorative icon - top right -->
647
+ <div class="position-absolute top-0 end-0 opacity-25" style="font-size:10rem;transform:rotate(15deg)translate(30%,-30%)">
648
+ {% uj_icon "rocket", "text-white" %}
649
+ </div>
650
+
651
+ <!-- Decorative icon - bottom left -->
652
+ <div class="position-absolute bottom-0 start-0 opacity-25" style="font-size:8rem;transform:rotate(-20deg)translate(-30%,30%)">
653
+ {% uj_icon "sparkles", "text-white" %}
654
+ </div>
655
+
656
+ <div class="position-relative">
657
+ {% iftruthy page.resolved.cta.superheadline.text %}
658
+ <span class="badge bg-white bg-opacity-25 text-light p-2 mb-3 fw-semibold small">
659
+ {% iftruthy page.resolved.cta.superheadline.icon %}
660
+ {% uj_icon page.resolved.cta.superheadline.icon, "me-1" %}
661
+ {% endiftruthy %}
662
+ {{ page.resolved.cta.superheadline.text }}
663
+ </span>
664
+ {% endiftruthy %}
665
+
666
+ <h2 class="h3 fw-bold mb-3">
667
+ {{ page.resolved.cta.headline }}
668
+ {% iftruthy page.resolved.cta.headline_accent %}
618
669
  <span class="text-accent">{{ page.resolved.cta.headline_accent }}</span>
619
- </h2>
620
- <p class="fs-5 mb-4 opacity-90">
621
- {{ page.resolved.cta.description }}
622
- </p>
623
- <div class="d-flex flex-column flex-sm-row gap-3 justify-content-center">
624
- <a href="{{ page.resolved.cta.primary_button.href }}" class="btn btn-light btn-lg px-5 py-3">
625
- {% uj_icon page.resolved.cta.primary_button.icon, "me-2" %}
626
- {{ page.resolved.cta.primary_button.text }}
627
- </a>
628
- <a href="{{ page.resolved.cta.secondary_button.href }}" class="btn btn-outline-light btn-lg px-5 py-3">
670
+ {% endiftruthy %}
671
+ </h2>
672
+
673
+ {% iftruthy page.resolved.cta.description %}
674
+ <p class="lead mb-4">{{ page.resolved.cta.description }}</p>
675
+ {% endiftruthy %}
676
+
677
+ <div class="d-flex flex-column flex-sm-row gap-3 justify-content-center">
678
+ <a href="{{ page.resolved.cta.primary_button.href }}" class="btn btn-light btn-lg px-4">
679
+ {% uj_icon page.resolved.cta.primary_button.icon, "me-2" %}
680
+ {{ page.resolved.cta.primary_button.text }}
681
+ </a>
682
+ {% iftruthy page.resolved.cta.secondary_button %}
683
+ <a href="{{ page.resolved.cta.secondary_button.href }}" class="btn btn-outline-light btn-lg px-4">
629
684
  {% uj_icon page.resolved.cta.secondary_button.icon, "me-2" %}
630
685
  {{ page.resolved.cta.secondary_button.text }}
631
686
  </a>
632
- </div>
687
+ {% endiftruthy %}
633
688
  </div>
634
689
  </div>
635
690
  </div>