<section class="faq-section bg-white text-blue lg:p-4" fade fade-trigger="scroll" section-shade="light">
<div class="big-container bg-light pt-12 px-[120px] pb-16">
<div class="w-full max-w-[1168px] mx-auto">
<nav batch-wrapp>
<ul class="projects-type-wrapp flex flex-wrap gap-x-2 md:gap-x-4 gap-y-4 md:gap-y-5">
<li fade fade-trigger="batch">
<button class="project-type-btn blue {{loop.first ? 'active'}}"
data-tab="{{ item.id|getFaqCategories|lower|replace({' ': "_"}) }}">
<svg>
<use xlink:href="#icon-check" />
</svg>
{{ content.filterDefaultText }}
</button>
</li>
{% for item in content.categories %}
<li fade fade-trigger="batch">
<button class="project-type-btn blue"
data-tab="{{ item.id|getFaqCategories|lower|replace({' ': "_"}) }}">
<svg>
<use xlink:href="#icon-check" />
</svg>
{{ item.id|getFaqCategories }}
</button>
</li>
{% endfor %}
</ul>
</nav>
{% set items = {} %}
{% set i = 0 %}
{% set sortedFaqs = content.faqs|sort((a, b) => a.descriptionSectionTitle <=> b.descriptionSectionTitle) %}
{% for item in sortedFaqs %}
{% set items = items|merge({
(i): {
'descriptionSectionCategory': item.descriptionSectionCategory.id|getFaqCategories,
'descriptionSectionTitle': item.descriptionSectionTitle,
'descriptionSectionText': item.descriptionSectionText
}
}) %}
{% set i = i + 1 %}
{% endfor %}
<div class="tabs-wrapp flex flex-col gap-2 mt-10" fade fade-trigger="scroll">
{% for tab in content.categories %}
<div id='item_content' class="faq-tab flex flex-col gap-2" data-tab="{{tab.id|getFaqCategories|lower|replace({' ': "_"})}}">
{% for item in items %}
{% if tab.id|getFaqCategories == item.descriptionSectionCategory %}
<dl class="faq-item flex flex-col border border-transparent">
<dt class="bg-white flex justify-between p-6 gap-3 cursor-default">
<p id='item_title' class="text-lg md:text-2xl">
{{item.descriptionSectionTitle}}
</p>
<button class="faq-item__button outline-none h-max rounded-md focus-visible:shadow-[0_0_0_5px_rgba(0,0,0,0.1)] duration-300 group">
<svg class="faq-item__plus w-8 h-8 shrink-0 duration-300">
<use xlink:href="#icon-plus" />
</svg>
</button>
</dt>
<dd class="faq-item__answer bg-gray h-0 overflow-hidden">
<p class="text-sm m-6">{{item.descriptionSectionText|raw}}</p>
</dd>
</dl>
{% endif %}
{% endfor %}
</div>
{% endfor %}
</div>
</div>
</div>
</section>
<script>
// JavaScript code to sort item_content divs by item_title
document.addEventListener('DOMContentLoaded', function () {
const faqTabs = document.querySelectorAll('.faq-tab');
const faqTabsWithTitles = [];
faqTabs.forEach((faqTab, index) => {
const itemTitle = faqTab.querySelector('#item_title').textContent;
faqTabsWithTitles.push({ element: faqTab, title: itemTitle, index });
});
faqTabsWithTitles.sort((a, b) => a.title.localeCompare(b.title));
const tabsWrapp = document.querySelector('.tabs-wrapp');
faqTabsWithTitles.forEach((faqTabWithTitle) => {
tabsWrapp.appendChild(faqTabWithTitle.element);
});
});
</script>