{"id":2110,"date":"2026-09-28T17:12:20","date_gmt":"2026-09-28T17:12:20","guid":{"rendered":"https:\/\/lied.ipt.pt\/?page_id=2110"},"modified":"2026-10-02T16:14:18","modified_gmt":"2026-10-02T16:14:18","slug":"projetos-teste","status":"publish","type":"page","link":"https:\/\/lied.ipt.pt\/index.php\/en\/projetos-teste\/","title":{"rendered":"Projects"},"content":{"rendered":"\n<style data-wp-block-html=\"css\">\n\/* Caixa\/cart\u00e3o da imagem de cada projeto *\/\n.wp-block-query .wp-block-post .wp-block-post-featured-image {\n  width: 100% !important;\n  max-width: 560px !important;\n  height: 360px !important;\n\n  margin: 0 0 30px 0 !important;\n  padding: 24px !important;\n\n  box-sizing: border-box !important;\n\n  background: #ffffff !important;\n  border: 1px solid #e0e0e0 !important;\n  border-radius: 4px;\n\n  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.16);\n\n  display: flex !important;\n  align-items: center !important;\n  justify-content: center !important;\n}\n\n\/* Link ocupa toda a \u00e1rea dispon\u00edvel dentro da caixa *\/\n.wp-block-query .wp-block-post .wp-block-post-featured-image > a {\n  display: flex !important;\n  width: 100% !important;\n  height: 100% !important;\n\n  align-items: center !important;\n  justify-content: center !important;\n}\n\n\/* Imagem ocupa o m\u00e1ximo poss\u00edvel sem ser cortada *\/\n.wp-block-query .wp-block-post .wp-block-post-featured-image img {\n  display: block !important;\n\n  width: 100% !important;\n  height: 100% !important;\n\n  max-width: none !important;\n  max-height: none !important;\n\n  margin: 0 !important;\n\n  object-fit: contain !important;\n}\n<\/style>\n\n<div class=\"project-filters\" role=\"group\" aria-label=\"Filter projects\"> \n \n  <button type=\"button\" class=\"project-filter active\" data-filter=\"all\" aria-pressed=\"true\"> \n    ALL \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"compete 2020\" aria-pressed=\"false\"> \n    COMPETE 2020 \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"erasmus+ ka203\"\n    data-tooltip=\"Strategic Partnerships for higher education\"\n    aria-label=\"ERASMUS+ KA203 \u2014 Strategic Partnerships for higher education\"\n    aria-pressed=\"false\"> \n    ERASMUS+ KA203 \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"erasmus+ ka220-hed\"\n    data-tooltip=\"Cooperation partnerships in higher education\"\n    aria-label=\"ERASMUS+ KA220-HED \u2014 Cooperation partnerships in higher education\"\n    aria-pressed=\"false\"> \n    ERASMUS+ KA220-HED \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"erasmus+ ka220-vet\"\n    data-tooltip=\"Cooperation partnerships in vocational education and training\"\n    aria-label=\"ERASMUS+ KA220-VET \u2014 Cooperation partnerships in vocational education and training\"\n    aria-pressed=\"false\"> \n    ERASMUS+ KA220-VET \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"erasmus+ ka220-you\"\n    data-tooltip=\"Cooperation partnerships in youth\"\n    aria-label=\"ERASMUS+ KA220-YOU \u2014 Cooperation partnerships in youth\"\n    aria-pressed=\"false\"> \n    ERASMUS+ KA220-YOU \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"erasmus+ ka226-sch\"\n    data-tooltip=\"Partnerships for Digital Education Readiness\"\n    aria-label=\"ERASMUS+ KA226-SCH \u2014 Partnerships for Digital Education Readiness\"\n    aria-pressed=\"false\"> \n    ERASMUS+ KA226-SCH \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"erasmus+ ka227-you\"\n    data-tooltip=\"Partnerships for Creativity\"\n    aria-label=\"ERASMUS+ KA227-YOU \u2014 Partnerships for Creativity\"\n    aria-pressed=\"false\"> \n    ERASMUS+ KA227-YOU \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"poch\" aria-pressed=\"false\"> \n    POCH \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"portugal 2020\" aria-pressed=\"false\"> \n    PORTUGAL 2020 \n  <\/button> \n \n  <button type=\"button\" class=\"project-filter\" data-filter=\"prr filtro\" aria-pressed=\"false\"> \n    PRR \n  <\/button> \n \n<\/div>\n\n\n<style>\n\n\/* ==========================================================\n   PROJECT FILTERS\n   ========================================================== *\/\n\n.project-filters {\n    display: flex;\n    flex-wrap: wrap;\n    align-items: center;\n\n    gap: 10px;\n\n    margin: 28px 0 38px;\n\n    overflow: visible;\n}\n\n\n\/* ==========================================================\n   BUTTONS\n   ========================================================== *\/\n\n.project-filter {\n    appearance: none;\n    -webkit-appearance: none;\n\n    position: relative;\n\n    padding: 10px 20px;\n\n    border: 1px solid #4b8bc9;\n    border-radius: 22px;\n\n    background: #ffffff;\n    color: #4b8bc9;\n\n    font: inherit;\n    font-size: 14px;\n    font-weight: 500;\n    line-height: 1.3;\n\n    cursor: pointer;\n\n    overflow: visible;\n\n    transition:\n        background-color .2s ease,\n        color .2s ease,\n        box-shadow .2s ease,\n        transform .2s ease;\n}\n\n\n\/* Hover *\/\n\n.project-filter:hover {\n    background: #f3f8fc;\n    color: #3579b9;\n\n    box-shadow: 0 5px 14px rgba(0, 0, 0, .10);\n\n    transform: translateY(-1px);\n}\n\n\n\/* Selected filter *\/\n\n.project-filter.active {\n    background: #4b8bc9;\n    border-color: #4b8bc9;\n    color: #ffffff;\n\n    box-shadow: 0 7px 18px rgba(75, 139, 201, .25);\n}\n\n\n\/* Keyboard focus *\/\n\n.project-filter:focus-visible {\n    outline: 3px solid #173a54;\n    outline-offset: 3px;\n}\n\n\n\/* ==========================================================\n   TOOLTIPS\n   ========================================================== *\/\n\n.project-filter[data-tooltip]::after {\n    content: attr(data-tooltip);\n\n    position: absolute;\n    z-index: 9999;\n\n    left: 50%;\n    bottom: calc(100% + 12px);\n\n    width: max-content;\n    max-width: 290px;\n\n    padding: 10px 13px;\n\n    box-sizing: border-box;\n\n    background: #2a3d4f;\n    color: #ffffff;\n\n    border-radius: 6px;\n\n    box-shadow: 0 6px 18px rgba(0, 0, 0, .18);\n\n    font-family: \"Open Sans\", Arial, sans-serif;\n    font-size: 13px;\n    font-weight: 400;\n    line-height: 1.45;\n\n    text-align: left;\n    white-space: normal;\n\n    opacity: 0;\n    visibility: hidden;\n\n    pointer-events: none;\n\n    transform: translateX(-50%) translateY(5px);\n\n    transition:\n        opacity .18s ease,\n        visibility .18s ease,\n        transform .18s ease;\n}\n\n\n\/* Tooltip arrow *\/\n\n.project-filter[data-tooltip]::before {\n    content: \"\";\n\n    position: absolute;\n    z-index: 10000;\n\n    left: 50%;\n    bottom: calc(100% + 6px);\n\n    width: 0;\n    height: 0;\n\n    border-left: 6px solid transparent;\n    border-right: 6px solid transparent;\n    border-top: 6px solid #2a3d4f;\n\n    opacity: 0;\n    visibility: hidden;\n\n    pointer-events: none;\n\n    transform: translateX(-50%);\n\n    transition:\n        opacity .18s ease,\n        visibility .18s ease;\n}\n\n\n\/* Mouse *\/\n\n.project-filter[data-tooltip]:hover::after,\n.project-filter[data-tooltip]:hover::before {\n    opacity: 1;\n    visibility: visible;\n}\n\n.project-filter[data-tooltip]:hover::after {\n    transform: translateX(-50%) translateY(0);\n}\n\n\n\/* Keyboard *\/\n\n.project-filter[data-tooltip]:focus-visible::after,\n.project-filter[data-tooltip]:focus-visible::before {\n    opacity: 1;\n    visibility: visible;\n}\n\n.project-filter[data-tooltip]:focus-visible::after {\n    transform: translateX(-50%) translateY(0);\n}\n\n\n\/* ==========================================================\n   REDUCED MOTION\n   ========================================================== *\/\n\n@media (prefers-reduced-motion: reduce) {\n\n    .project-filter,\n    .project-filter[data-tooltip]::after,\n    .project-filter[data-tooltip]::before {\n        transition: none;\n    }\n\n    .project-filter:hover {\n        transform: none;\n    }\n}\n\n\n\/* ==========================================================\n   MOBILE\n   ========================================================== *\/\n\n@media (max-width: 600px) {\n\n    .project-filters {\n        gap: 8px;\n    }\n\n    .project-filter {\n        padding: 9px 15px;\n        font-size: 13px;\n    }\n\n    .project-filter[data-tooltip]::after {\n        width: 220px;\n        max-width: 220px;\n        font-size: 12px;\n    }\n}\n\n<\/style>\n\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function () {\n\n    const filters = document.querySelector('.project-filters');\n\n    if (!filters) {\n        return;\n    }\n\n    const buttons = filters.querySelectorAll('.project-filter');\n\n\n    \/* ========================================================\n       LOCATE QUERY LOOP\n       ======================================================== *\/\n\n    let element = filters.parentElement;\n    let queryLoop = null;\n\n    while (element && !queryLoop) {\n\n        queryLoop = element.querySelector('.wp-block-query');\n\n        element = element.parentElement;\n    }\n\n    if (!queryLoop) {\n        return;\n    }\n\n\n    \/* ========================================================\n       NORMALIZE TEXT\n       ======================================================== *\/\n\n    function normalizeText(text) {\n\n        return String(text)\n            .toLowerCase()\n            .replace(\/\\u00a0\/g, ' ')\n            .replace(\/\\s+\/g, ' ')\n            .trim();\n    }\n\n\n    \/* ========================================================\n       GET PROJECT TAGS\n       ======================================================== *\/\n\n    function getProjectTags(post) {\n\n        const terms = post.querySelectorAll('.wp-block-post-terms');\n\n        const tags = [];\n\n        terms.forEach(function (term) {\n\n            const links = term.querySelectorAll('a');\n\n            if (links.length) {\n\n                links.forEach(function (link) {\n\n                    const tag = normalizeText(link.textContent);\n\n                    if (tag) {\n                        tags.push(tag);\n                    }\n\n                });\n\n            } else {\n\n                const tag = normalizeText(term.textContent);\n\n                if (tag) {\n                    tags.push(tag);\n                }\n            }\n\n        });\n\n        return tags;\n    }\n\n\n    \/* ========================================================\n       APPLY FILTER\n       ======================================================== *\/\n\n    function applyFilter(filter) {\n\n        const normalizedFilter = normalizeText(filter);\n\n        const posts = queryLoop.querySelectorAll('.wp-block-post');\n\n        posts.forEach(function (post) {\n\n            const tags = getProjectTags(post);\n\n            let showPost = false;\n\n\n            if (normalizedFilter === 'all') {\n\n                showPost = true;\n\n            } else {\n\n                showPost = tags.some(function (tag) {\n                    return tag === normalizedFilter;\n                });\n\n\n                if (!showPost) {\n\n                    const combinedTags = tags.join(' ');\n\n                    showPost = combinedTags.includes(\n                        normalizedFilter\n                    );\n                }\n            }\n\n\n            if (showPost) {\n\n                post.style.removeProperty('display');\n\n            } else {\n\n                post.style.setProperty(\n                    'display',\n                    'none',\n                    'important'\n                );\n            }\n\n        });\n\n\n        document.dispatchEvent(\n            new CustomEvent('projectFilterChanged', {\n                detail: {\n                    filter: normalizedFilter\n                }\n            })\n        );\n    }\n\n\n    \/* ========================================================\n       FILTER BUTTONS\n       ======================================================== *\/\n\n    buttons.forEach(function (button) {\n\n        button.addEventListener('click', function () {\n\n            const filter =\n                button.getAttribute('data-filter') || 'all';\n\n\n            buttons.forEach(function (b) {\n\n                b.classList.remove('active');\n\n                b.setAttribute(\n                    'aria-pressed',\n                    'false'\n                );\n            });\n\n\n            button.classList.add('active');\n\n            button.setAttribute(\n                'aria-pressed',\n                'true'\n            );\n\n\n            applyFilter(filter);\n        });\n\n    });\n\n});\n<\/script>\n\n\n\n<div class=\"wp-block-query is-layout-flow wp-block-query-is-layout-flow\"><ul class=\"wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow\"><li class=\"wp-block-post post-1316 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska220-vet\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/03\/04\/t-talenttech-4\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"T-TalentTech\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2026\/03\/T-Talenttech-8-1-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/03\/04\/t-talenttech-4\/\" target=\"_self\" >T-TalentTech<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">T-TalentTech \u2013 Multidisciplinary Skills for ICT Professionals (KA220-VET \u2013 Cooperation partnerships in vocational education and training (KA220-VET-84985086) \u2013 Ongoing <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska220-vet\/\" rel=\"tag\">Erasmus+ KA220-VET<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-906 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska220-you-en\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/youthink-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"YouTHink\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/4-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/youthink-2\/\" target=\"_self\" >YouTHink<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">YouTHink &#8211; Responsible Youth through Media Literacy (2024-1-LT02-KA220-YOU-000251256) International Project \u2013 Ongoing <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska220-you-en\/\" rel=\"tag\">Erasmus+ KA220-YOU<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-907 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska220-hed\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/digistainability-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"DIGISTAINABILITY\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/3-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/digistainability-2\/\" target=\"_self\" >DIGISTAINABILITY<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">DIGISTAINABILITY \u2013 Digital and Sustainable Marketing Skills for European Students and Workforce\u00a0(2023-1-ES01-KA220-HED-000157703) International Project \u2013 Ongoing <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska220-hed\/\" rel=\"tag\">Erasmus+ KA220-HED<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-910 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska220-hed\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/heritage-game-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"HERITAGE GAME\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/2-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/heritage-game-2\/\" target=\"_self\" >HERITAGE GAME<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">A gamification model for community-based heritage work (2023-1-PT01-KA220-HED-000154261) International Project \u2013 Ongoing <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska220-hed\/\" rel=\"tag\">Erasmus+ KA220-HED<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-914 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-prr-filtro-en\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/projetos-nacionais-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"INOV3P\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/teste2-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/projetos-nacionais-2\/\" target=\"_self\" >INOV3P<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">Centro de Excel\u00eancia de Inova\u00e7\u00e3o Pedag\u00f3gica (08\/C06-i07\/2024) National Project \u2013 Ongoing <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/prr-filtro-en\/\" rel=\"tag\">PRR Filtro<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-915 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-prr-filtro-en\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/lider-digital-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"L\u00edder + Digital\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/5-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/lider-digital-2\/\" target=\"_self\" >L\u00edder + Digital<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">L\u00edder + Digital National Project \u2013 Ongoing <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/prr-filtro-en\/\" rel=\"tag\">PRR Filtro<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-918 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-poch tag-portugal-2020\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/strong-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"STRONG\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/9-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/strong-2\/\" target=\"_self\" >STRONG<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">Skills e DocenTes Resilientes fOcados Nas pr\u00f3ximas Gera\u00e7\u00f5es \u2013 Compet\u00eancias para o Futuro no Ensino Superior (POCH-02-53I2-FSE-000010) National Project \u2013 Concluded <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/poch\/\" rel=\"tag\">POCH<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/portugal-2020\/\" rel=\"tag\">Portugal 2020<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-920 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska220-you-en tag-erasmuska227-you-en\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/sparkdigigirls-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"SparkDigiGirls\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/sparkdigigirls-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/sparkdigigirls-2\/\" target=\"_self\" >SparkDigiGirls<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">Empower Girls\u2019 Creativity Through Use of Digital Technologies (2020-1-LT02-KA227-YOU-007294) International Project \u2013 Concluded <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska220-you-en\/\" rel=\"tag\">Erasmus+ KA220-YOU<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska227-you-en\/\" rel=\"tag\">Erasmus+ KA227-YOU<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-921 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska226-sch\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/home-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"HOME\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/On-Line-Teaching-2.0-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/home-2\/\" target=\"_self\" >HOME<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">On-Line Teaching 2.0 &#8211; We also learn at Home (2020-1-PT01-KA226-SCH-094785) International Project \u2013 Concluded <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska226-sch\/\" rel=\"tag\">Erasmus+ KA226-SCH<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-922 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-erasmuska203-en\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/fuseit-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"FuseIT\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/12-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/fuseit-2\/\" target=\"_self\" >FuseIT<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">FuseIT \u2013 Future competences pathways for marketing e ICT Education (2019-1-LT01-KA203-060730) Objectives: Multidisciplinary approach to ICT education, new curriculum design, and creation of opportunities. Activities: Partners: IPT Coordination: C\u00e9lio Gon\u00e7alo Marques Funding:&nbsp;Co-funded by the European Union under the Erasmus+ KA2 &#8211; Cooperation for innovation and the exchange of good practices, KA203 &#8211; Strategic Partnerships for&hellip; <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/erasmuska203-en\/\" rel=\"tag\">Erasmus+ KA203<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-924 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-compete-2020 tag-portugal-2020\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/link-me-up-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"1563\" height=\"1563\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"Link me Up\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13.png 1563w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13-1024x1024.png 1024w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13-150x150.png 150w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13-768x768.png 768w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/13-1536x1536.png 1536w\" sizes=\"auto, (max-width: 1563px) 100vw, 1563px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/link-me-up-2\/\" target=\"_self\" >Link me Up<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">1000 ideias &#8211; Sistema de Apoio \u00e0 co-cria\u00e7\u00e3o de inova\u00e7\u00e3o, criatividade e empreendedorismo National Project \u2013 Concluded <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/compete-2020\/\" rel=\"tag\">Compete 2020<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/portugal-2020\/\" rel=\"tag\">Portugal 2020<\/a><\/div><\/div>\n<\/div>\n\n<\/li><li class=\"wp-block-post post-925 post type-post status-publish format-standard has-post-thumbnail hentry category-projects tag-poch tag-portugal-2020\">\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9dd7145f wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><figure class=\"wp-block-post-featured-image\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/demola-2\/\" target=\"_self\" ><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"500\" src=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/demola.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"Forma\u00e7\u00e3o de docente e outros agentes de educa\u00e7\u00e3o e forma\u00e7\u00e3o\" style=\"object-fit:cover;\" srcset=\"https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/demola.png 500w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/demola-300x300.png 300w, https:\/\/lied.ipt.pt\/wp-content\/uploads\/2025\/07\/demola-150x150.png 150w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/figure><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><h4 class=\"wp-block-post-title\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/2026\/01\/07\/demola-2\/\" target=\"_self\" >Forma\u00e7\u00e3o de docente e outros agentes de educa\u00e7\u00e3o e forma\u00e7\u00e3o<\/a><\/h4>\n\n<div class=\"wp-block-post-excerpt has-medium-font-size\"><p class=\"wp-block-post-excerpt__excerpt\">Teacher Training and Other Education and Training Agents \u2013 Co-Promotion Projects (POCH-67-2019-12) National Project \u2013 Concluded <\/p><\/div>\n\n<div class=\"taxonomy-post_tag wp-block-post-terms\"><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/poch\/\" rel=\"tag\">POCH<\/a><span class=\"wp-block-post-terms__separator\">, <\/span><a href=\"https:\/\/lied.ipt.pt\/index.php\/en\/tag\/portugal-2020\/\" rel=\"tag\">Portugal 2020<\/a><\/div><\/div>\n<\/div>\n\n<\/li><\/ul>\n\n\n<nav class=\"projects-pagination\" aria-label=\"Projects pagination\">\n  <div class=\"projects-pagination-pages\"><\/div>\n\n  <button type=\"button\"\n          class=\"projects-pagination-next\">\n    NEXT \u00bb\n  <\/button>\n<\/nav>\n\n<style>\n.projects-pagination {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n\n  margin: 40px 0 30px;\n}\n\n.projects-pagination-pages {\n  display: flex;\n  align-items: center;\n  gap: 10px;\n}\n\n.projects-pagination button {\n  appearance: none;\n  -webkit-appearance: none;\n\n  min-width: 38px;\n  height: 38px;\n  padding: 0 12px;\n\n  border: 0;\n  border-radius: 50%;\n\n  background: transparent;\n  color: #777777;\n\n  font: inherit;\n  font-size: 14px;\n  font-weight: 400;\n\n  cursor: pointer;\n\n  transition:\n    background-color .2s ease,\n    color .2s ease,\n    box-shadow .2s ease;\n}\n\n\/* P\u00e1gina atual *\/\n.projects-pagination .page-number.active {\n  background: #4b8bc9;\n  color: #ffffff;\n\n  box-shadow: 0 7px 18px rgba(75,139,201,.25);\n}\n\n\/* NEXT *\/\n.projects-pagination .projects-pagination-next {\n  width: auto;\n  min-width: auto;\n\n  border-radius: 4px;\n\n  color: #777777;\n  background: transparent;\n}\n\n\/* Hover *\/\n.projects-pagination button:hover:not(:disabled) {\n  color: #4b8bc9;\n  background: #f3f8fc;\n}\n\n\/* Foco acess\u00edvel *\/\n.projects-pagination button:focus-visible {\n  outline: 3px solid #173a54;\n  outline-offset: 3px;\n}\n\n\/* Desativado *\/\n.projects-pagination button:disabled {\n  opacity: .35;\n  cursor: default;\n}\n\n\/* Mobile *\/\n@media (max-width: 600px) {\n  .projects-pagination {\n    justify-content: center;\n  }\n}\n\n@media (prefers-reduced-motion: reduce) {\n  .projects-pagination button {\n    transition: none;\n  }\n}\n<\/style>\n\n<script>\ndocument.addEventListener('DOMContentLoaded', function () {\n\n  const pagination = document.querySelector('.projects-pagination');\n  const filters = document.querySelector('.project-filters');\n\n  if (!pagination || !filters) return;\n\n  let element = filters.parentElement;\n  let queryLoop = null;\n\n  while (element && !queryLoop) {\n    queryLoop = element.querySelector('.wp-block-query');\n    element = element.parentElement;\n  }\n\n  if (!queryLoop) return;\n\n  const posts = Array.from(\n    queryLoop.querySelectorAll('.wp-block-post')\n  );\n\n  const pagesContainer =\n    pagination.querySelector('.projects-pagination-pages');\n\n  const nextButton =\n    pagination.querySelector('.projects-pagination-next');\n\n  \/* N\u00famero de projetos apresentados por p\u00e1gina *\/\n  const postsPerPage = 6;\n\n  let currentPage = 1;\n\n  function getFilteredPosts() {\n\n    const activeFilter =\n      document.querySelector('.project-filter.active');\n\n    if (!activeFilter) return posts;\n\n    const filter =\n      activeFilter.dataset.filter.toLowerCase();\n\n    return posts.filter(function (post) {\n\n      const text = post.textContent.toLowerCase();\n\n      return filter === 'all' || text.includes(filter);\n\n    });\n  }\n\n\n  function renderPagination() {\n\n    const filteredPosts = getFilteredPosts();\n\n    const totalPages =\n      Math.ceil(filteredPosts.length \/ postsPerPage);\n\n    if (currentPage > totalPages) {\n      currentPage = Math.max(totalPages, 1);\n    }\n\n    \/* esconder todos primeiro *\/\n    posts.forEach(function (post) {\n      post.style.display = 'none';\n    });\n\n    \/* mostrar apenas os da p\u00e1gina atual *\/\n    const start =\n      (currentPage - 1) * postsPerPage;\n\n    const end =\n      start + postsPerPage;\n\n    filteredPosts\n      .slice(start, end)\n      .forEach(function (post) {\n        post.style.display = '';\n      });\n\n\n    \/* criar n\u00fameros *\/\n    pagesContainer.innerHTML = '';\n\n    for (let i = 1; i <= totalPages; i++) {\n\n      const button =\n        document.createElement('button');\n\n      button.type = 'button';\n\n      button.className =\n        'page-number' +\n        (i === currentPage ? ' active' : '');\n\n      button.textContent = i;\n\n      button.setAttribute(\n        'aria-label',\n        'Go to page ' + i\n      );\n\n      if (i === currentPage) {\n        button.setAttribute(\n          'aria-current',\n          'page'\n        );\n      }\n\n      button.addEventListener('click', function () {\n\n        currentPage = i;\n\n        renderPagination();\n\n        queryLoop.scrollIntoView({\n          behavior: 'smooth',\n          block: 'start'\n        });\n\n      });\n\n      pagesContainer.appendChild(button);\n    }\n\n\n    \/* NEXT *\/\n    nextButton.disabled =\n      currentPage >= totalPages;\n\n    \/* esconder pagina\u00e7\u00e3o se s\u00f3 existir uma p\u00e1gina *\/\n    pagination.style.display =\n      totalPages <= 1 ? 'none' : 'flex';\n  }\n\n\n  nextButton.addEventListener('click', function () {\n\n    const filteredPosts = getFilteredPosts();\n\n    const totalPages =\n      Math.ceil(filteredPosts.length \/ postsPerPage);\n\n    if (currentPage < totalPages) {\n\n      currentPage++;\n\n      renderPagination();\n\n      queryLoop.scrollIntoView({\n        behavior: 'smooth',\n        block: 'start'\n      });\n\n    }\n\n  });\n\n\n  \/* Quando se muda de filtro, voltar \u00e0 p\u00e1gina 1 *\/\n  document.addEventListener(\n    'projectFilterChanged',\n    function () {\n\n      currentPage = 1;\n\n      setTimeout(renderPagination, 0);\n\n    }\n  );\n\n\n  renderPagination();\n\n});\n<\/script>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>ALL COMPETE 2020 ERASMUS+ KA203 ERASMUS+ KA220-HED ERASMUS+ KA220-VET ERASMUS+ KA220-YOU ERASMUS+ KA226-SCH ERASMUS+ KA227-YOU POCH PORTUGAL 2020 PRR<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2110","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/pages\/2110","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/comments?post=2110"}],"version-history":[{"count":35,"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/pages\/2110\/revisions"}],"predecessor-version":[{"id":2443,"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/pages\/2110\/revisions\/2443"}],"wp:attachment":[{"href":"https:\/\/lied.ipt.pt\/index.php\/wp-json\/wp\/v2\/media?parent=2110"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}