CV page now reads layout config from cv-page.json when available, supporting single-column, two-column, and full-width hero layouts with configurable sections, sidebar widgets, and footer columns. Falls back to the previous hardcoded layout when no config exists.
27 lines
1.0 KiB
Plaintext
27 lines
1.0 KiB
Plaintext
{# CV Page Builder Footer — renders footer items in a responsive 3-column grid #}
|
|
{% if cvPageConfig.footer and cvPageConfig.footer.length %}
|
|
<footer class="cv-footer mt-8 sm:mt-12 pt-6 sm:pt-8 border-t border-surface-200 dark:border-surface-700">
|
|
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6">
|
|
{% for section in cvPageConfig.footer %}
|
|
{% if section.type == "custom-html" %}
|
|
{% set sectionConfig = section.config or {} %}
|
|
<div>
|
|
{% if sectionConfig.title %}
|
|
<h3 class="text-lg font-semibold text-surface-900 dark:text-surface-100 mb-3">{{ sectionConfig.title }}</h3>
|
|
{% endif %}
|
|
{% if sectionConfig.content %}
|
|
<div class="prose dark:prose-invert prose-sm max-w-none">
|
|
{{ sectionConfig.content | safe }}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% else %}
|
|
<div>
|
|
{% include "components/homepage-section.njk" %}
|
|
</div>
|
|
{% endif %}
|
|
{% endfor %}
|
|
</div>
|
|
</footer>
|
|
{% endif %}
|