{"id":28294,"date":"2023-05-15T12:16:03","date_gmt":"2023-05-15T10:16:03","guid":{"rendered":"https:\/\/www.stockpadel.com\/blog\/de-beste-padel-knuppels-voor-waar-voor-je-geld\/"},"modified":"2025-05-15T12:29:50","modified_gmt":"2025-05-15T10:29:50","slug":"de-beste-rackets-in-prijs-kwaliteit","status":"publish","type":"post","link":"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/","title":{"rendered":"De beste rackets in prijs-kwaliteit"},"content":{"rendered":"\n<!--more-->\n\n\n\n<p>De beste rackets in prijs-kwaliteit :<strong>Dompel jezelf onder in de wereld van padelrackets, dat onmisbare instrument waarmee je de baan verovert en nieuwe doelen bereikt. Hier vind je alles wat je moet weten over de beste padelrackets in termen van prijs-kwaliteitverhouding, zodat je ten volle van deze opwindende sport kunt genieten zonder je portemonnee leeg te maken, en toch topkwaliteit krijgt.<\/strong><\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_68_1 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<p class=\"ez-toc-title\">Indice<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-689966f8b8f71\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-689966f8b8f71\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Adidas_Metalbone_Carbon_34\" title=\"Adidas Metalbone Carbon 3.4\">Adidas Metalbone Carbon 3.4<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Adidas_Metalbone_Carbon_34-2\" title=\"Adidas Metalbone Carbon 3.4\">Adidas Metalbone Carbon 3.4<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Babolat_Air_Vertuo\" title=\"Babolat Air Vertuo\">Babolat Air Vertuo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Babolat_Air_Vertuo_25\" title=\"Babolat Air Vertuo 25\">Babolat Air Vertuo 25<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#NOX_Nextgen_Pro_Hybrid_3K_NFA_25\" title=\"NOX Nextgen Pro Hybrid 3K NFA 25\">NOX Nextgen Pro Hybrid 3K NFA 25<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Nox_Nextgen_Pro_Hybrid_3K_NFA_Series\" title=\"Nox Nextgen Pro Hybrid 3K NFA Series\">Nox Nextgen Pro Hybrid 3K NFA Series<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Head_Coello_Team_25\" title=\"Head Coello Team 25\">Head Coello Team 25<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Head_Coello_Team_25-2\" title=\"Head Coello Team 25\">Head Coello Team 25<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#NOX_ML10_Pro_Cup\" title=\"NOX ML10 Pro Cup\">NOX ML10 Pro Cup<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Nox_ML10_Pro_cup_Coorp_25\" title=\"Nox ML10 Pro cup Coorp 25\">Nox ML10 Pro cup Coorp 25<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Star_Vie_Raptor_Pro\" title=\"Star Vie Raptor Pro\">Star Vie Raptor Pro<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Star_Vie_Raptor_V40_12K\" title=\"Star Vie Raptor V40 12K\">Star Vie Raptor V40 12K<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Wilson_Defy_LS_V1\" title=\"Wilson Defy LS V1\">Wilson Defy LS V1<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Wilson_Defy_LS_V1-2\" title=\"Wilson Defy LS V1\">Wilson Defy LS V1<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Siux_Fenix_Elite_5\" title=\"Siux Fenix Elite 5\">Siux Fenix Elite 5<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.stockpadel.com\/blog\/nl\/de-beste-rackets-in-prijs-kwaliteit\/#Siux_Fenix_Elite_5-2\" title=\"Siux Fenix Elite 5\">Siux Fenix Elite 5<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Adidas_Metalbone_Carbon_34\"><\/span>Adidas Metalbone Carbon 3.4<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De Adidas Metalbone Carbon 3.4 is een racket met een uitstekende prijs-kwaliteitverhouding. De carbonconstructie garandeert duurzaamheid en weerstand. Dankzij de druppelvorm en het medium-hoge balanspunt biedt het een perfecte balans tussen controle en kracht. De 12K carbonvezeltechnologie verbetert de stabiliteit, terwijl het anti-vibratiesysteem voor comfort zorgt. Binnen het assortiment van Adidas beschouwen wij dit als het racket met de beste prijs-kwaliteitverhouding.<\/p>\n\n\n\n<p>Met geavanceerde technologie\u00ebn zoals <strong>Octagonal Structure<\/strong>, <strong>Spin Blade Decal<\/strong> en hoogwaardige materialen zoals <strong>6K Carbon<\/strong>, garandeert dit racket precisie, duurzaamheid en topprestaties bij elke slag.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=2761&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/9546.jpg\" alt=\"Adidas Metalbone Carbon 3.4\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Adidas_Metalbone_Carbon_34-2\"><\/span>Adidas Metalbone Carbon 3.4<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>266.4 \u20ac<\/del>\n                                                        203.47 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Babolat_Air_Vertuo\"><\/span>Babolat Air Vertuo<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De Babolat Air Vertuo is een licht en uitgebalanceerd padelracket, ontworpen voor spelers die snelle en dynamische prestaties zoeken. De carbonvezelconstructie en druppelvorm bieden een goede balans tussen controle en kracht. De carbontechnologie in het frame en het Air Core-systeem zorgen voor meer balsnelheid en comfort bij het slaan.<\/p>\n\n\n\n<p>De Babolat Air Vertuo biedt een uitstekende prijs-kwaliteitverhouding voor spelers die snelheid en wendbaarheid op de baan prioriteren. Door het lichte gewicht en de medium balans is het ideaal voor wie op zoek is naar een goede mix van kracht en controle.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=2910&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/10805.jpg\" alt=\"Babolat Air Vertuo 25\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Babolat_Air_Vertuo_25\"><\/span>Babolat Air Vertuo 25<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>184.41 \u20ac<\/del>\n                                                        156.75 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"NOX_Nextgen_Pro_Hybrid_3K_NFA_25\"><\/span>NOX Nextgen Pro Hybrid 3K NFA 25<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De NOX Nextgen Pro Hybrid 3K NFA Series 2025 is een revolutionair racket, ontworpen met de nieuwste technologie. Het heeft een meerlagige kern met HR3 Black EVA-schuim met hoge dichtheid en 12K carbon op het blad, wat zorgt voor een uitstekende balsnelheid en duurzaamheid. De hybride vorm (tussen druppel en rond) en het medium-hoge balanspunt maken dit racket veelzijdig en perfect voor aanvallende spelers die de controle willen behouden.<\/p>\n\n\n\n<p>De NOX Nextgen Hybrid NFA 2025 valt op door zijn solide en responsieve gevoel. Het biedt een uitstekende balans tussen kracht en wendbaarheid, waardoor je zowel vanachter op de baan als aan het net kunt domineren. Dit racket is bedoeld voor veeleisende spelers die op zoek zijn naar innovatie en prestaties bij elk punt.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=3029&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/10886.jpg\" alt=\"Nox Nextgen Pro Hybrid 3K NFA Series\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Nox_Nextgen_Pro_Hybrid_3K_NFA_Series\"><\/span>Nox Nextgen Pro Hybrid 3K NFA Series<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>204.91 \u20ac<\/del>\n                                                        188.51 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Head_Coello_Team_25\"><\/span>Head Coello Team 25<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De <strong>HEAD Coello Team 2025<\/strong> is een racket dat kracht en comfort combineert, ideaal voor <strong>intermediate en gevorderde spelers<\/strong> die op zoek zijn naar een model met een zachte stijfheid en een hoge balsnelheid bij tragere spelsituaties.<\/p>\n\n\n\n<p>De diamantvorm en het medium balanspunt helpen bij aanvallende slagen, terwijl het glasvezeloppervlak een zachter gevoel en toegankelijke kracht biedt zonder aan controle in te boeten.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=3006&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/10737.jpg\" alt=\"Head Coello Team 25\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Head_Coello_Team_25-2\"><\/span>Head Coello Team 25<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>225.45 \u20ac<\/del>\n                                                        202.91 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"NOX_ML10_Pro_Cup\"><\/span>NOX ML10 Pro Cup<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De NOX ML10 Pro Cup is een klassiek racket dat controle en kracht combineert. De ronde vorm en het medium balanspunt bieden evenwicht, terwijl de carbonconstructie en EVA-schuim zorgen voor duurzaamheid en een uitstekende slagrespons.<\/p>\n\n\n\n<p>De NOX ML10 Pro Cup is een betrouwbaar racket dat een goede balans biedt tussen controle en kracht, ideaal voor spelers die op zoek zijn naar consistentie in hun spel.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=3031&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/10906.jpg\" alt=\"Nox ML10 Pro cup Coorp 25\">\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Nox_ML10_Pro_cup_Coorp_25\"><\/span>Nox ML10 Pro cup Coorp 25<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                        153.71 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Star_Vie_Raptor_Pro\"><\/span>Star Vie Raptor Pro<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De Star Vie Raptor Pro is een high-end racket, ontworpen voor spelers die op zoek zijn naar kracht en controle. De diamantvorm en hoge balans zorgen voor krachtige slagen, terwijl de carbonconstructie en EVA-schuim duurzaamheid en uitstekende balsnelheid leveren.<\/p>\n\n\n\n<p>De Star Vie Raptor Pro levert uitzonderlijke prestaties op het gebied van kracht en controle, en is geschikt voor spelers die hun aanvallende spel willen maximaliseren.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=2623&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/9017.jpg\" alt=\"Star Vie Raptor V40 12K\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Star_Vie_Raptor_V40_12K\"><\/span>Star Vie Raptor V40 12K<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>271.56 \u20ac<\/del>\n                                                        185.51 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Wilson_Defy_LS_V1\"><\/span>Wilson Defy LS V1<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De Wilson Defy LS is een licht en uitgebalanceerd racket, ontworpen voor spelers die gebruiksgemak zoeken zonder concessies te doen aan kwaliteit. Met een ronde vorm, laag balanspunt en een Soft EVA-kern biedt het uitstekende controle en veel comfort bij elke slag. De glasvezelstructuur met carbonversterking verbetert de duurzaamheid en zorgt voor een zachter, beter handelbaar gevoel.<\/p>\n\n\n\n<p>De Wilson Defy LS voelt zeer wendbaar en comfortabel aan, ideaal voor <strong>intermediate spelers<\/strong> of degenen die controle boven kracht verkiezen. Perfect om te verdedigen, nauwkeurig te plaatsen en van een vloeiende speelstijl te genieten zonder de arm te belasten.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=2962&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/10441.jpg\" alt=\"Wilson Defy LS V1\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Wilson_Defy_LS_V1-2\"><\/span>Wilson Defy LS V1<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>235.7 \u20ac<\/del>\n                                                        207.42 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Siux_Fenix_Elite_5\"><\/span><a href=\"https:\/\/www.stockpadel.com\/es\/?gad_source=1&amp;gad_campaignid=20927321993&amp;gbraid=0AAAAAC2-rjX0XopCmWUJbnm-uXfve8LCL&amp;gclid=CjwKCAjwz_bABhAGEiwAm-P8YaAoEdRYv11aFuxZduKhi6qg3mhG_KB2knDSTz_tYdpBw7XCst-n4xoCjPwQAvD_BwE\">Siux Fenix Elite 5<\/a><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>De Siux Fenix Elite 5 is een high-performance racket, ontworpen voor gevorderde spelers die op zoek zijn naar kracht en precisie. Met een hybride vorm, medium-hoge balans en 18K carbon op het blad, biedt het uitstekende balsnelheid en een stevig gevoel bij het slaan. De Soft High Recovery EVA-kern zorgt voor een comfortabel en responsief gevoel, ideaal voor een agressieve speelstijl zonder het contactgevoel te verliezen.<\/p>\n\n\n\n<p>De Siux Fenix Elite 5 valt op door zijn krachtige slagen en uitgebalanceerde controle, met geweldige prestaties in zowel verdediging als aanval. Het voelt solide aan bij elke slag \u2013 perfect voor spelers die het punt met zekerheid en kracht willen domineren.<\/p>\n\n\n<style>\n    .prevBtn,\n    .nextBtn {\n        display: none;\n        position: absolute;\n        top: 50%;\n        transform: translateY(-50%);\n        background-color: #000;\n        border: none;\n        padding: 10px 15px;\n        cursor: pointer;\n        z-index: 2;\n        color: #fff;\n        opacity: 0.7;\n    }\n\n    .prevBtn:hover,\n    .nextBtn:hover {\n        opacity: 1;\n    }\n\n    .prevBtn {\n        left: 10px;\n    }\n\n    .nextBtn {\n        right: 10px;\n    }\n\n\n\n    .products-container {\n        width: 100%;\n        max-width: 100%;\n        margin: auto;\n        overflow: hidden;\n        position: relative;\n    }\n\n    .products-grid {\n        display: flex;\n        animation: scroll 20s linear infinite;\n        justify-content: center;\n    }\n\n    .product-container {\n        border: 1px solid #eee;\n        border-radius: 10px;\n        margin: 10px;\n        flex: 0 0 auto;\n        width: 180px;\n        text-align: center;\n        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n        transition: all 0.3s ease;\n        overflow: hidden;\n        background-color: #fff;\n        position: relative;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n    }\n\n    .product-container:hover {\n        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);\n        transform: translateY(-3px);\n    }\n\n    .product-image {\n        width: 100%;\n        height: 250px;\n        object-fit: contain;\n        border-bottom: 1px solid #eee;\n        transition: transform 0.3s ease;\n    }\n\n    .product-image:hover {\n        transform: scale(1.05);\n    }\n\n    .product-info {\n        padding: 10px 16px;\n        background-color: #fff;\n        display: flex;\n        flex-direction: column;\n        justify-content: space-between;\n        margin-top: auto;\n    }\n\n    .product-info h2 {\n        font-family: 'Roboto', sans-serif;\n        font-size: 16px;\n        color: #333;\n        margin: 12px 0;\n        height: 100%;\n    }\n\n    .product-price {\n        color: #E44D26;\n        font-weight: bold;\n        font-size: 16px;\n        margin-bottom: 12px;\n        margin-top: auto;\n    }\n\n    .product-price del {\n        font-size: 14px;\n        color: #999;\n        margin-right: 10px;\n    }\n\n    .product-description {\n        font-size: 14px;\n        overflow: hidden;\n        text-overflow: ellipsis;\n        display: -webkit-box;\n        -webkit-line-clamp: 3;\n        -webkit-box-orient: vertical;\n    }\n\n\n    .discount {\n        display: block;\n        color: #fff;\n        background-color: rgba(245, 101, 101, 0.85);\n        font-weight: bold;\n        font-size: 12px;\n        border-radius: 5px;\n        padding: 5px 10px;\n        position: absolute;\n        top: 10px;\n        left: 10px;\n        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);\n        transition: background-color 0.3s ease;\n    }\n\n    .discount:hover {\n        background-color: rgba(245, 101, 101, 0.95);\n    }\n\n    a {\n        text-decoration: none;\n        color: inherit;\n    }\n\n    a:hover {\n        color: #E44D26;\n    }\n<\/style>\n<div class=\"products-container\">\n    <button class=\"prevBtn\">&#10094;<\/button>\n    <div class=\"products-grid carousel\" id=\"carousel\">\n                    <div class=\"product-container\">\n                <a href=\"https:\/\/www.stockpadel.com\/\/index.php?controller=product&amp;id_product=3053&amp;id_lang=9\">\n                    <img decoding=\"async\" class=\"product-image\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/plugins\/amarilloprestashopproducts\/cache\/img\/11135.jpg\" alt=\"Siux Fenix Elite 5\">\n                                            <span class=\"discount\">\u00a1Oferta Especial!<\/span>\n                                        <div class=\"product-info\">\n                        <h2><span class=\"ez-toc-section\" id=\"Siux_Fenix_Elite_5-2\"><\/span>Siux Fenix Elite 5<span class=\"ez-toc-section-end\"><\/span><\/h2>\n                        <p class=\"product-description\">Descripci\u00f3n no disponible<\/p>\n                        <p class=\"product-price\">\n                                                            <del>234.63 \u20ac<\/del>\n                                                        199.43 \u20ac\n                        <\/p>\n                    <\/div>\n                <\/a>\n            <\/div>\n            <\/div>\n    <button class=\"nextBtn\">&#10095;<\/button>\n<\/div>\n\n<script>\n    document.addEventListener(\"DOMContentLoaded\", function() {\n        const carousels = document.querySelectorAll('.carousel');\n\n        carousels.forEach((carousel) => {\n            const prevBtn = carousel.parentElement.querySelector('.prevBtn');\n            const nextBtn = carousel.parentElement.querySelector('.nextBtn');\n            const productContainers = carousel.querySelectorAll('.product-container');\n            const products = productContainers.length;\n\n            if (products >= 4) {\n                prevBtn.style.display = 'block';\n                nextBtn.style.display = 'block';\n                productContainers.forEach((container) => {\n                    const description = container.querySelector('.product-description');\n                    description.style.display = 'none';\n                })\n            }\n\n            if (products <= 3) {\n                productContainers.forEach((container) => {\n                    container.style.width = 'calc(100% \/ ' + products + ' - 20px)';\n                    const description = container.querySelector('.product-description');\n                    if (products <= 2) {\n                        description.style.display = 'block';\n                        description.style.fontSize = '12px';\n                        description.innerHTML = truncateText(description, 150);\n                    } else {\n                        description.style.display = 'none';\n                    }\n                });\n            }\n\n            if (products == 2) {\n                alignItems(productContainers);\n            }\n\n            function alignItems(containers) {\n                let maxTitleHeight = 0;\n                let maxDescriptionHeight = 0;\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = '';\n                    description.style.height = '';\n\n                    maxTitleHeight = Math.max(maxTitleHeight, title.offsetHeight);\n                    maxDescriptionHeight = Math.max(maxDescriptionHeight, description.offsetHeight);\n                });\n\n                containers.forEach((container) => {\n                    const title = container.querySelector('h2');\n                    const description = container.querySelector('.product-description');\n                    title.style.height = maxTitleHeight + 'px';\n                    description.style.height = maxDescriptionHeight + 'px';\n                });\n            }\n\n            function truncateText(element, maxLength) {\n                var truncated = element.innerText;\n                if (truncated.length > maxLength) {\n                    return truncated.substr(0, truncated.lastIndexOf(' ', maxLength)) + '...';\n                }\n                return truncated;\n            }\n\n            const moveNext = () => {\n                const firstElement = carousel.firstElementChild;\n                carousel.appendChild(firstElement.cloneNode(true));\n                firstElement.remove();\n                carousel.scrollLeft -= productWidth;\n            };\n\n            const movePrev = () => {\n                const lastElement = carousel.lastElementChild;\n                carousel.insertBefore(lastElement.cloneNode(true), carousel.firstElementChild);\n                lastElement.remove();\n                carousel.scrollLeft += productWidth;\n            };\n\n            prevBtn.addEventListener('click', movePrev);\n            nextBtn.addEventListener('click', moveNext);\n\n            let maxHeight = 0;\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                if (title.offsetHeight > maxHeight) {\n                    maxHeight = title.offsetHeight;\n                }\n            });\n\n            productContainers.forEach((container) => {\n                const title = container.querySelector('h2');\n                const price = container.querySelector('.product-price');\n                const titleHeight = title.offsetHeight;\n                const priceMarginTop = maxHeight - titleHeight;\n                price.style.marginTop = priceMarginTop + 'px';\n            });\n        });\n    });\n<\/script>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.google.es\/maps\/place\/Stock+Padel+C%C3%B3rdoba\/@37.8974948,-4.7997527,17z\/data=!3m1!4b1!4m6!3m5!1s0x12a4931c49108b45:0x42a56c3e101930d7!8m2!3d37.8974906!4d-4.7971778!16s%2Fg%2F11fy7gyj_q?entry=ttu&amp;g_ep=EgoyMDI1MDUwNi4wIKXMDSoASAFQAw%3D%3D\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"298\" height=\"50\" src=\"https:\/\/www.stockpadel.com\/blog\/wp-content\/uploads\/2024\/03\/StockPadel-logo-footer.png\" alt=\"De beste rackets in prijs-kwaliteit\" class=\"wp-image-29881\"\/><\/a><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":6,"featured_media":31518,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_glsr_average":0,"_glsr_ranking":0,"_glsr_reviews":0,"footnotes":""},"categories":[1286,1291],"tags":[],"class_list":["post-28294","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-analyse-nl","category-vergelijkingen"],"_links":{"self":[{"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/posts\/28294"}],"collection":[{"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/comments?post=28294"}],"version-history":[{"count":3,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/posts\/28294\/revisions"}],"predecessor-version":[{"id":33760,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/posts\/28294\/revisions\/33760"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/media\/31518"}],"wp:attachment":[{"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/media?parent=28294"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/categories?post=28294"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stockpadel.com\/blog\/nl\/wp-json\/wp\/v2\/tags?post=28294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}