{"id":3177,"date":"2026-02-09T11:34:13","date_gmt":"2026-02-09T11:34:13","guid":{"rendered":"https:\/\/gorespyre.com\/geluidsscherm\/"},"modified":"2026-04-01T14:15:46","modified_gmt":"2026-04-01T14:15:46","slug":"geluidsscherm","status":"publish","type":"page","link":"https:\/\/gorespyre.com\/nl\/geluidsscherm\/","title":{"rendered":"Geluidsscherm"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3177\" class=\"elementor elementor-3177 elementor-2756\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7a7a7472 e-con-full e-flex e-con e-parent\" data-id=\"7a7a7472\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_on&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;],&quot;sticky_offset&quot;:0,&quot;sticky_effects_offset&quot;:0,&quot;sticky_anchor_link_offset&quot;:0}\">\n\t\t<div class=\"elementor-element elementor-element-6076e5cf e-con-full e-flex e-con e-child\" data-id=\"6076e5cf\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-72790392 e-con-full e-flex e-con e-child\" data-id=\"72790392\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-64cc20a1 elementor-widget elementor-widget-heading\" data-id=\"64cc20a1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">PRODUCT<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-610af546 e-transform elementor-widget elementor-widget-heading\" data-id=\"610af546\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_transform_translateY_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Geluids<br>schermen<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5fabc646 e-con-full e-flex e-con e-parent\" data-id=\"5fabc646\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-154941a2 e-con-full e-flex e-con e-child\" data-id=\"154941a2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-69ab3466 e-con-full e-flex e-con e-child\" data-id=\"69ab3466\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_offset&quot;:200,&quot;sticky_effects_offset&quot;:420,&quot;sticky_on&quot;:[&quot;desktop&quot;],&quot;sticky_anchor_link_offset&quot;:0}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-65aebaa2 first-screen elementor-widget elementor-widget-image\" data-id=\"65aebaa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_on&quot;:[&quot;desktop&quot;],&quot;sticky_offset&quot;:200,&quot;sticky_effects_offset&quot;:420,&quot;sticky_parent&quot;:&quot;yes&quot;,&quot;_animation&quot;:&quot;none&quot;,&quot;sticky_anchor_link_offset&quot;:0}\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/gorespyre.com\/wp-content\/uploads\/2026\/01\/EPZafVi0FzQzrpkYINGSh4E2x8.jpg.avif\" title=\"Noise Bariers\" alt=\"groene gevel, groene gevelbekleding, groene gevelsysteem\" loading=\"lazy\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7b3883d6 e-con-full e-flex e-con e-child\" data-id=\"7b3883d6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-79fa17bd elementor-widget elementor-widget-heading\" data-id=\"79fa17bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">VertiScape geprefabriceerde gevelpanelen:<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7d6a5086 elementor-widget elementor-widget-text-editor\" data-id=\"7d6a5086\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<ul class=\"framer-text\"><li class=\"framer-text framer-styles-preset-10t3z6a\" data-preset-tag=\"h6\"><p class=\"framer-text framer-styles-preset-10t3z6a\">Meerdere maten en oppervlaktestructuren mogelijk.<\/p><\/li><li class=\"framer-text framer-styles-preset-10t3z6a framer-styles-preset-10t3z6a\" data-preset-tag=\"h6\" data-styles-preset=\"WDtq9CVt8\"><p class=\"framer-text framer-styles-preset-10t3z6a\">LCA is in ontwikkeling.<\/p><\/li><li class=\"framer-text framer-styles-preset-10t3z6a framer-styles-preset-10t3z6a\" data-preset-tag=\"h6\" data-styles-preset=\"WDtq9CVt8\"><p class=\"framer-text framer-styles-preset-10t3z6a\">Wij werken samen met fabrikanten met een enorme capaciteit, daarom kunnen wij momenteel alleen projecten accepteren vanaf 200 vierkante meter.<\/p><p class=\"framer-text framer-styles-preset-10t3z6a\"> <\/p><\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-36ca87b elementor-widget elementor-widget-heading\" data-id=\"36ca87b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Geluidsschermen<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3dd5dfe8 elementor-widget elementor-widget-text-editor\" data-id=\"3dd5dfe8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p dir=\"auto\" data-pm-slice=\"1 1 []\">Betonnen panelen zijn een breed erkende oplossing geworden voor geluidsdemping en dienen als effectieve geluidsschermen in verschillende omgevingen. Deze schermen worden geconstrueerd uit hoogdicht beton, dat uitstekende geluidabsorberende eigenschappen heeft, waardoor het een ideaal materiaal is voor het verminderen van geluidsoverlast. De massa van beton blokkeert geluidsgolven effectief en voorkomt dat ze door het scherm dringen, waardoor het geluidsniveau aan de andere kant aanzienlijk wordt verlaagd. Deze eigenschap maakt betonnen panelen bijzonder geschikt voor gebruik in dichtbevolkte stedelijke gebieden, langs snelwegen, rond industri\u00eble locaties en bij spoorwegen, waar geluidsreductie cruciaal is voor het verbeteren van de levenskwaliteit van bewoners en werknemers.   <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4f420f88 elementor-widget elementor-widget-text-editor\" data-id=\"4f420f88\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p dir=\"auto\" data-pm-slice=\"1 1 []\">Het integreren van mosbeton in deze geluidsschermen transformeert ze tot levende geluidsschermen, die extra milieu- en esthetische voordelen bieden. Mosbeton, waarbij levend mos wordt ingebed in het oppervlak van betonnen panelen, behoudt niet alleen de geluidabsorberende en duurzame eigenschappen van traditioneel beton, maar introduceert ook groen in stedelijke en voorstedelijke omgevingen. Deze levende schermen dragen bij aan luchtzuivering, omdat het mos verontreinigende stoffen en koolstofdioxide absorbeert, en ze voegen een visueel rustgevend element toe aan het landschap. De toevoeging van mos stimuleert biodiversiteit door habitats te bieden voor insecten en kleine vogels. Levende geluidsschermen gemaakt van mosbeton zijn bijzonder voordelig in gebieden waar het verbeteren van ecologische waarde en esthetische aantrekkelijkheid even belangrijk is als geluidsreductie. Deze innovatieve benadering combineert functionaliteit met duurzaamheid en cre\u00ebert een harmonieuze balans tussen door de mens gemaakte structuren en de natuur.     <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6ce3ed05 elementor-widget elementor-widget-heading\" data-id=\"6ce3ed05\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Wat zijn de voordelen?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-91383e1 elementor-widget elementor-widget-text-editor\" data-id=\"91383e1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p dir=\"auto\" data-pm-slice=\"1 1 []\">Een van de belangrijkste voordelen van het gebruik van mosbetonpanelen als geluidsschermen is hun duurzaamheid en lage onderhoudsbehoefte. Het beton is bestand tegen weersinvloeden, vandalisme en brand, waardoor de schermen jarenlang effectief blijven en in goede staat verkeren met minimaal onderhoud. Bovendien kunnen deze panelen worden geprefabriceerd in verschillende texturen, wat esthetische flexibiliteit biedt om te mengen met of de omgeving te versterken.  <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-75b6df9 e-flex e-con-boxed e-con e-child\" data-id=\"75b6df9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-45e446f elementor-widget elementor-widget-html\" data-id=\"45e446f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<style>\r\nbody{\r\n\t--smooth-scroll: true;\r\n}\r\n.mdw-scroll-effect-143{\r\n    --circle-size: 50;\r\n}\r\n.mdw-scroll-effect-143 .e-con{\r\n\ttransition: 0s !important;\r\n}\r\nhtml:not(.elementor-html) .mdw-scroll-effect-143 .sticky{\r\n    position: fixed;\r\n    top: 0;\r\n}\r\nhtml:not(.elementor-html) .mdw-scroll-effect-143 .sticky-end{\r\n    position: absolute;\r\n    bottom: 0;\r\n    top: auto !important;\r\n}\r\n.mdw-scroll-effect-143-top:before{\r\n    background-size: auto 80%;\r\n}\r\n.mdw-scroll-effect-143-cards > .e-con{\r\n    max-width: 220px;\r\n    will-change: transform;\r\n    transform: translate(calc(var(--tx,0px) - 50%), calc(var(--ty,0px) - 50%));\r\n}\r\n.mdw-scroll-effect-143-card-bg{\r\n\theight: 100%;\r\n}\r\nhtml.elementor-html .mdw-scroll-effect-143-card-bg{\r\n    transform: none !important;\r\n    left: 0 !important;\r\n    top: 0 !important;\r\n    height: 100% !important;\r\n    width: 100% !important;\r\n}\r\nhtml.elementor-html .mdw-scroll-effect-143-bottom{\r\n    position: relative !important;\r\n}\r\nhtml:not(.elementor-html) .mdw-scroll-effect-143-bottom{\r\n    opacity: 0;\r\n}\r\nhtml:not(.elementor-html) .mdw-scroll-effect-143-bottom.mdw-show{\r\n    opacity: 1;\r\n}\r\nhtml:not(.elementor-html) .mdw-scroll-effect-143-bottom .elementor-widget:not(.elementor-widget-button){\r\n\twill-change: transform, opacity;\r\n\ttransform: translateY(-100px);\r\n\topacity: 0;\r\n}\r\n.mdw-scroll-effect-143-bottom .elementor-widget-text-editor p:last-child{\r\n    margin-bottom: 0;\r\n}\r\n.mdw-scroll-effect-143-button,\r\n.mdw-scroll-effect-143-button .elementor-button,\r\n.mdw-scroll-effect-143-button .elementor-button-text{\r\n    transition: 0s !important;\r\n}\r\n.mdw-scroll-effect-143-button{\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n}\r\n.mdw-scroll-effect-143-button > *:not(.mdw-scroll-effect-143-button-inner){\r\n    z-index: 1;\r\n}\r\n.mdw-scroll-effect-143-button-inner{\r\n    display: inline-block;\r\n    position: absolute;\r\n    height: 100%;\r\n    width: 100%;\r\n    border-radius: 50px;\r\n    opacity: 0;\r\n}\r\n.mdw-scroll-effect-143-button a{\r\n    outline: none;\r\n}\r\n@media(min-width: 768px){\r\nhtml:not(.elementor-html) .mdw-scroll-effect-143-cards{\r\n    pointer-events: none;\r\n}\r\n.mdw-tranparent{\r\n    background: transparent !important;\r\n    border-color: transparent !important;\r\n}\r\n}\r\n@media(max-width: 767px){\r\n.mdw-scroll-effect-143 > .e-con{\r\n    position: relative !important;\r\n    top: 0 !important;\r\n    left: 0 !important;\r\n}\r\n.mdw-scroll-effect-143-top:before{\r\n    background-size: auto 100% !important;\r\n}\r\n.mdw-scroll-effect-143-cards > .e-con{\r\n    position: relative !important;\r\n    top: unset !important;\r\n    left: unset !important;\r\n    opacity: 1 !important;\r\n    transform: unset !important;\r\n}\r\n.mdw-scroll-effect-143-cards > .e-con,\r\n.mdw-scroll-effect-143-cards > .e-con .elementor-widget-heading{\r\n    opacity: 1 !important;\r\n}\r\n.mdw-scroll-effect-143-bottom{\r\n    position: relative !important;\r\n}\r\n.mdw-scroll-effect-143-bottom .elementor-widget:not(.elementor-widget-button){\r\n\ttransform: translateY(0) !important;\r\n\topacity: 1 !important;\r\n}\r\n.mdw-scroll-effect-143-button{\r\n    transform: none !important;\r\n}\r\n.mdw-scroll-effect-143-button .elementor-button-text{\r\n    opacity: 1 !important;\r\n}\r\n.mdw-scroll-effect-143-button-inner{\r\n    display: none;\r\n}\r\n}\r\n<\/style>\r\n<script src=\"https:\/\/code.jquery.com\/jquery-2.2.4.min.js\"><\/script>\r\n<script>\r\nif (!MDWNonce143){\r\nvar MDWNonce143 = true\r\njQuery(document).ready(function($){\r\n\r\nvar selector = '.mdw-scroll-effect-143'\r\n\r\n$(selector).each(function(){\r\n\r\nvar $this = $(this),\r\ncontent = $this.find('.mdw-scroll-effect-143-top'),\r\ncards = $this.find('.mdw-scroll-effect-143-cards > .e-con'),\r\ncardBgs = $this.find('.mdw-scroll-effect-143-card-bg'),\r\nbottom = $this.find('.mdw-scroll-effect-143-bottom'),\r\nbutton = $this.find('.mdw-scroll-effect-143-button'),\r\nwindowHeight,\r\nwindowWidth,\r\ncardStartDimensions = [],\r\ncardTop = [],\r\ncardLeft = [],\r\nbuttonStyles = {},\r\nbuttonMiddleDistance,\r\nbgColors = [],\r\nborderColors = [],\r\nborderWidth = [],\r\nborderRadius = [],\r\ncircleSize = parseFloat(getProp($this[0], '--circle-size')),\r\nprogress\r\n\r\nfunction resetCards(){\r\n    if(windowWidth < 768){\r\n        cardBgs.each(function(){\r\n            $(this).removeAttr('style')\r\n        })\r\n    }\r\n}\r\n\r\nfunction getProp(el, prop){\r\n    return window.getComputedStyle(el).getPropertyValue(prop)\r\n}\r\n\r\nfunction getValues(){\r\n    cardBgs.each(function(i){\r\n        var cardBg = $(this)[0]\r\n        bgColors[i] = getProp(cardBg, 'background-color')\r\n        borderColors[i] = getProp(cardBg, 'border-color')\r\n        borderWidth[i] = parseFloat(getProp(cardBg, 'border-width'))\r\n        borderRadius[i] = parseFloat(getProp(cardBg, 'border-radius'))\r\n    })\r\n}\r\n\r\nfunction setButonStyles(){\r\n    var btn = button.find('.elementor-button')\r\n    buttonStyles.width = button.outerWidth()\r\n    buttonStyles.height = button.outerHeight()\r\n    buttonStyles.bg = btn.css('background-color')\r\n    buttonStyles.borderColor = btn.css('border-color')\r\n    buttonStyles.border = parseFloat(btn.css('border').split(' ')[0])\r\n    buttonStyles.borderRadius = parseFloat(btn.css('border-radius').split(' ')[0])\r\n    btn.addClass('mdw-tranparent')\r\n}\r\n\r\nfunction updateValues(){\r\n    windowHeight = $(window).height()\r\n    windowWidth = $(window).width()\r\n    cards.each(function(i){\r\n        var card = $(this)\r\n        cardStartDimensions.push({\r\n            width: card.outerWidth(),\r\n            height: card.outerHeight()\r\n        })\r\n    })\r\n    butonTop = button[0].offsetTop + (button.outerHeight() \/ 2)\r\n    buttonMiddleDistance = bottom.outerHeight() \/ 2 - butonTop\r\n}\r\n\r\nfunction setValues(){\r\n    cardTop = []\r\n    cardLeft = []\r\n    cards.each(function(i){\r\n        var top = parseFloat(getProp(this, 'top')),\r\n        left = parseFloat(getProp(this, 'left'))\r\n        cardTop[i] = top - (windowHeight \/ 2)\r\n        cardLeft[i] = left - (windowWidth \/ 2)\r\n    })\r\n}\r\n\r\nfunction setSticky(){\r\n    var rect = $this[0].getBoundingClientRect(),\r\n        inner = $this.children('.e-con:not(.mdw-scroll-effect-143-top)')\r\n\r\n    if (windowWidth < 768){\r\n        inner.removeClass('sticky sticky-end')\r\n        return\r\n    }\r\n    rect.top <= 0 ? inner.addClass('sticky') : inner.removeClass('sticky')\r\n    rect.bottom < windowHeight ? inner.addClass('sticky-end') : inner.removeClass('sticky-end')\r\n}\r\n\r\nfunction cahngeZIndex(){\r\n    var start = 0.85\r\n    if(progress <= start){\r\n        bottom.css('z-index', 'unset')\r\n        content.css('z-index', 10)\r\n    }else{\r\n        content.css('z-index', 'unset')\r\n        bottom.css('z-index', 10)\r\n    }\r\n}\r\n\r\nfunction animateCards(){\r\n    var start = 0, end = 0.6\r\n    if (progress >= start && progress <= end){\r\n        var p = progress \/ (end - start)\r\n        cards.each(function(i){\r\n            var ty = (cardTop[i] * p) * -1,\r\n                tx = (cardLeft[i] * p) * -1\r\n\r\n            this.style.setProperty('--tx', tx + 'px')\r\n            this.style.setProperty('--ty', ty + 'px')\r\n        })\r\n        cardBgs.each(function(i){\r\n            var d = cardStartDimensions[i],\r\n            w = d.width + (circleSize - d.width) * p,\r\n            h = d.height + (circleSize - d.height) * p,\r\n            br = borderRadius[i] + (buttonStyles.borderRadius - borderRadius[i]) * p,\r\n            bw = borderWidth[i] + (buttonStyles.border - borderWidth[i]) * p\r\n                \r\n            $(this).css({\r\n                width: w + 'px',\r\n                height: h + 'px',\r\n                borderRadius: br + 'px',\r\n                borderWidth: bw + 'px'\r\n            })\r\n        })\r\n\r\n        var featureElements = $this.find('.mdw-scroll-effect-143-cards > .e-con > .elementor-element:not(.mdw-scroll-effect-143-card-bg)'),\r\n        start2 = 0,\r\n        end2 = 0.1,\r\n        startScale = 1,\r\n        endScale = 0.9\r\n\r\n        if(progress <= end2){\r\n            var op = 1 - (progress \/ end2),\r\n            scale = startScale + (progress - start2) * (endScale - startScale) \/ (end2 - start2)\r\n            scale = Math.max(endScale, Math.min(1, scale))\r\n            featureElements.css({ opacity: op, transform: `scale(${scale})` })\r\n        }else{\r\n            featureElements.css({ opacity: 0, transform: `scale(${endScale})` })\r\n        }\r\n    }\r\n    cards.css('opacity', progress >= end ? 0 : 1)\r\n}\r\n\r\nfunction parseRGB(color){\r\n    var m = color.match(\/rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)\/)\r\n    return m ? { r:+m[1], g:+m[2], b:+m[3] } : { r:0, g:0, b:0 }\r\n}\r\n\r\nfunction mixColor(from, to, t){\r\n    return {\r\n        r: from.r + (to.r - from.r) * t,\r\n        g: from.g + (to.g - from.g) * t,\r\n        b: from.b + (to.b - from.b) * t\r\n    }\r\n}\r\n\r\nfunction animateCardColors(){\r\n    var start = 0, end = 0.6,\r\n    p = Math.min(Math.max(progress, start), end) \/ (end - start)\r\n    \r\n    cardBgs.each(function(i){\r\n        var fromBg = parseRGB(bgColors[i]),\r\n        toBg = parseRGB(buttonStyles.bg),\r\n        cBg = mixColor(fromBg, toBg, p),\r\n        fromB = parseRGB(borderColors[i]),\r\n        toB = parseRGB(buttonStyles.borderColor),\r\n        cBorder = mixColor(fromB, toB, p)\r\n        \r\n        $(this).css({\r\n            backgroundColor: `rgb(${cBg.r},${cBg.g},${cBg.b})`,\r\n            borderColor: `rgb(${cBorder.r},${cBorder.g},${cBorder.b})`\r\n        })\r\n    })\r\n}\r\n\r\nfunction animateBottom(){\r\n    var bottomContent = $this.find('.mdw-scroll-effect-143-bottom .elementor-widget:not(.elementor-widget-button)'),\r\n    buttonText = button.find('.elementor-button-text'),\r\n    start = 0.85, end = 1,\r\n    trY = -40,\r\n    startTextScale = 0.9,\r\n    endTextScale = 1,\r\n    textScale = startTextScale + ( (progress - start) \/ (end - start) ) * (endTextScale - startTextScale)\r\n        \r\n    if(progress >= start){\r\n        var p = (progress - start) \/ (end - start)\r\n        bottomContent.css({\r\n            transform: `translateY(${trY - (p * trY)}px)`,\r\n            opacity: p\r\n        })\r\n        buttonText.css({'opacity': p, 'transform': `scale(${textScale})`})\r\n    }else{\r\n        bottomContent.css({\r\n            transform: `translateY(${trY}px)`,\r\n            opacity: 0\r\n        })\r\n        buttonText.css('opacity', 0)\r\n    }\r\n}\r\n\r\nfunction animateButton(){\r\n    var buttonInner = button.find('.mdw-scroll-effect-143-button-inner'),\r\n    start = .6, end = 1\r\n    buttonInner.css('opacity', progress >= start ? 1 : 0)\r\n\r\n    if(progress >= start && progress <= end){\r\n        var p = (progress - start) \/ (end - start),\r\n        w = circleSize + (buttonStyles.width - circleSize) * p,\r\n        h = circleSize + (buttonStyles.height - circleSize) * p,\r\n        ty = buttonMiddleDistance * (1 - p)\r\n        buttonInner.css({\r\n            width: w + 'px',\r\n            height: h + 'px'\r\n        })\r\n        button.css({\r\n            transform: 'translate(0,' + ty + 'px)'\r\n        })\r\n    }else if(progress > end){\r\n        buttonInner.css({\r\n            width: buttonStyles.width + 'px',\r\n            height: buttonStyles.height + 'px',\r\n            transform: 'translate(0,0)'\r\n        })\r\n    }\r\n}\r\n\r\nfunction isMobileOrEditor(){\r\n    return windowWidth < 768 || $('html').hasClass('elementor-html')\r\n}\r\n\r\nfunction runAnimation(){\r\n    if (isMobileOrEditor()) return\r\n    var wrapTop = $this.offset().top,\r\n    scrollTop = $(window).scrollTop(),\r\n    wrapHeight = $this.height()\r\n    \r\n    progress = (scrollTop - wrapTop) \/ (wrapHeight - windowHeight)\r\n    progress = Math.max(0, Math.min(1, progress))\r\n    \r\n    cahngeZIndex()\r\n    animateCards()\r\n    animateCardColors()\r\n    animateBottom()\r\n    animateButton()\r\n}\r\n\r\nfunction init(){\r\n    bottom.addClass('mdw-show')\r\n    getValues()\r\n    setButonStyles()\r\n    button.append('<span class=\"mdw-scroll-effect-143-button-inner\"><\/span>')\r\n    setTimeout(function(){\r\n        button.find('.mdw-scroll-effect-143-button-inner').css({\r\n            backgroundColor: buttonStyles.bg,\r\n            border: buttonStyles.border + 'px solid ' + buttonStyles.borderColor\r\n        })\r\n    },50)\r\n}\r\nfunction calculateLayout(){\r\n    updateValues()\r\n    setValues()\r\n    setSticky()\r\n    runAnimation()\r\n}\r\nfunction render(){\r\n    setSticky()\r\n    runAnimation()\r\n}\r\n$(window).on('load', function(){\r\n    resetCards()\r\n    if (isMobileOrEditor()) return\r\n    init()\r\n    calculateLayout()\r\n})\r\n\r\n$(window).on('resize', function(){\r\n    resetCards()\r\n    calculateLayout()\r\n})\r\n\r\n$(window).on('scroll', function(){\r\n    render()\r\n})\r\n})\r\n}) \r\n}\r\n<\/script>\r\n\r\n<!-- Smooth Scroll -->\r\n<style>\r\nhtml.lenis,\r\nhtml.lenis body {\r\n\theight: auto;\r\n}\r\n.lenis.lenis-smooth {\r\n\tscroll-behavior: auto !important;\r\n}\r\n.lenis.lenis-smooth [data-lenis-prevent] {\r\n\toverscroll-behavior: contain;\r\n}\r\n.lenis.lenis-stopped {\r\n\toverflow: hidden;\r\n}\r\n.lenis.lenis-smooth iframe {\r\n\tpointer-events: none;\r\n}\r\n<\/style>\r\n<script src=\"https:\/\/unpkg.com\/lenis@1.1.11\/dist\/lenis.min.js\"><\/script>\r\n<script>\r\n$(document).ready(function () {\r\n\tvar smoothScroll = getComputedStyle(document.body).getPropertyValue('--smooth-scroll'),\r\n\t\tsmoothScroll = smoothScroll && smoothScroll == 'true'\r\n\r\n\tif (true) {\r\n\t\tvar lenis = new Lenis()\r\n\t\tfunction raf(time) {\r\n\t\t\tlenis.raf(time)\r\n\t\t\trequestAnimationFrame(raf)\r\n\t\t}\r\n\t\trequestAnimationFrame(raf)\r\n\t}\r\n})\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-224b4b7e e-flex e-con-boxed e-con e-parent\" data-id=\"224b4b7e\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-631109c6 elementor-widget elementor-widget-heading\" data-id=\"631109c6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Vraag vandaag nog een offerte aan<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3fc9830f elementor-widget__width-initial elementor-button-align-stretch elementor-widget elementor-widget-form\" data-id=\"3fc9830f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;step_next_label&quot;:&quot;Volgende&quot;,&quot;step_previous_label&quot;:&quot;Vorige&quot;,&quot;button_width&quot;:&quot;100&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}\" data-widget_type=\"form.default\">\n\t\t\t\t\t\t\t<form class=\"elementor-form\" method=\"post\" name=\"Nieuw formulier\" aria-label=\"Nieuw formulier\">\n\t\t\t<input type=\"hidden\" name=\"post_id\" value=\"3177\"\/>\n\t\t\t<input type=\"hidden\" name=\"form_id\" value=\"3fc9830f\"\/>\n\t\t\t<input type=\"hidden\" name=\"referer_title\" value=\"\" \/>\n\n\t\t\t\n\t\t\t<div class=\"elementor-form-fields-wrapper elementor-labels-above\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-100\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"text\" name=\"form_fields[name]\" id=\"form-field-name\" class=\"elementor-field elementor-size-sm  elementor-field-textual\" placeholder=\"Naam\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-100 elementor-field-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"email\" name=\"form_fields[email]\" id=\"form-field-email\" class=\"elementor-field elementor-size-sm  elementor-field-textual\" placeholder=\"E-mail\" required=\"required\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-textarea elementor-field-group elementor-column elementor-field-group-message elementor-col-100\">\n\t\t\t\t\t<textarea class=\"elementor-field-textual elementor-field  elementor-size-sm\" name=\"form_fields[message]\" id=\"form-field-message\" rows=\"4\" placeholder=\"Bericht\"><\/textarea>\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons\">\n\t\t\t\t\t<button class=\"elementor-button elementor-size-sm\" type=\"submit\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Verstuur<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/form>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>PRODUCT Geluidsschermen VertiScape geprefabriceerde gevelpanelen: Meerdere maten en oppervlaktestructuren mogelijk. LCA is in ontwikkeling. Wij werken samen met fabrikanten met een enorme capaciteit, daarom kunnen wij momenteel alleen projecten accepteren vanaf 200 vierkante meter. Geluidsschermen Betonnen panelen zijn een breed erkende oplossing geworden voor geluidsdemping en dienen als effectieve geluidsschermen in verschillende omgevingen. Deze schermen [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-3177","page","type-page","status-publish","hentry"],"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"_links":{"self":[{"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/pages\/3177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/comments?post=3177"}],"version-history":[{"count":4,"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/pages\/3177\/revisions"}],"predecessor-version":[{"id":3550,"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/pages\/3177\/revisions\/3550"}],"wp:attachment":[{"href":"https:\/\/gorespyre.com\/nl\/wp-json\/wp\/v2\/media?parent=3177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}