{% if page.tabs %}
{% assign tabs = site.data.[page.tabs] %}

<div class="tabs {% if tabs.size %}{{ tabs.size }}{% endif %} {% if tabs.alignment %}{{ tabs.alignment }}{% endif %} {% if tabs.style %}{{ tabs.style }}{% endif %}">
    <ul>
    {% for tab in tabs.items %}
        <li {% if tab.link == page.url %} class="is-active" {% endif %}>
            <a href="{{ tab.link | prepend: site.baseurl }}">
                {% if tab.icon %}
                <span class="icon is-small"><i class="fas {{ tab.icon }}" aria-hidden="true"></i></span>
                {% endif %}
                <span>{{ tab.name }}</span>
            </a>
        </li>
    {% endfor %}
    </ul>
  </div>
  {% endif %}