Nafufill GTS-HS rapid the new concrete replacement from MC-Bauchemie.
Press release

New concrete replacement Nafufill GTS-HS rapid

The time window available for repairing hydraulic and sewerage structures is frequently restrictive. Now, with Nafufill GTS-HS rapid, MC-Bauchemie has launched a special fast-setting concrete replacement that can be permanently exposed to water after just one hour.

New concrete replacement Nafufill GTS HS rapid

5 Jul 2018

The time window available for repairing hydraulic and sewerage structures is frequently restrictive. And the case of structures in tidal waters, time becomes even more critical – a challenge for planning skill, material selection and work execution alike. Now, with Nafufill GTS HS rapid, MC-Bauchemie has launched a special fast-setting concrete replacement that can be permanently exposed to water after just one hour, making it ideally suited for the repair of hydraulic and sewerage structures made from concrete.

With its exceptionally early permanent water resistance, its high resilience and its wide range of applications, Nafufill GTS-HS rapid – the new concrete replacement from MC-Bauchemie – offers a reliable solution for the repair of concrete structures exposed to fresh, salt and waste water.  <br>© MC-Bauchemie/iStock.com/CreativeNature_nl 2026

With its exceptionally early permanent water resistance, its high resilience and its wide range of applications, Nafufill GTS-HS rapid – the new concrete replacement from MC-Bauchemie – offers a reliable solution for the repair of concrete structures exposed to fresh, salt and waste water. MC-Bauchemie/iStock.com/CreativeNature_nl 2026

The polymer-modified, low-shrinkage concrete replacement from MC-Bauchemie is chloride-proof, highly sulphate-resistant, resistant to temperature, frost and de-icing salts and can be applied by dry spraying at air, material and substrate temperatures of 5 to 35 °C.

Exceptionally early permanent water resistance and impressive stress resilience

Nafufill GTS HS rapid fulfils the requirements for mortar class R4 laid down in EN 1504 Part 3 and is thus also approved for strengthening structurally relevant areas in concrete structures. The new concrete replacement material cures extremely quickly and can be permanently exposed to water after one hour. It achieves flexural and compressive strength values of 2.9 & 10 N/mm² respectively after 24 hours, 5.9 & 31 N/mm² after 7 days and 10.9 & 62 N/mm²* after 28 days.

 

With new Nafufill GTS HS rapid, fractured areas between the low and high water marks can be repaired with layer thicknesses of up to 120 mm. The concrete replacement can also be applied as a wide-area coating. The minimum layer thickness is 10 to 30 mm per pass, up to a maximum total layer thickness of 60 mm. 

Wide range of applications for all kinds of hydraulic structures

With these properties, Nafufill GTS HS rapid is not only a reliable and sustainable solution for the repair of tidal, reinforced and unreinforced hydraulic structures such as port infrastructure, embankment walls, quay facilities, locks and sluice structures, but also for the repair of sewerage structures, open sewers, emergency basins etc.

 

* Values indicated relate to an air temperature of 23 °C and a relative humidity of 50 %.

 

Related Products

pageImpression = pageImpression + 1; }); barba.init({ preventRunning: true, timeout: 5000, /* for debuggin usi this parameters debug: false, logLevel: 'debug', */ /*sync: true,*/ // define a custom function that will prevent Barba // from working on links that contains a `prevent` CSS class prevent: ({ el, event, href }) => { if (!el) { return false; } if (el.href && el.href.includes('landingpages')) { return true; } if (el.classList && el.classList.contains('prevent')) { return true; } return false; }, preventScroll: true, scroll: false, views: [], transitions: [ { name: 'header-transition', sync: false, from: { custom: ({ trigger }) => { if (trigger.classList && trigger.classList.contains('headerFlip')) { transistionImage = trigger.getElementsByClassName("transitionImage")[0]; if (typeof transistionImage == "undefined") { return false; } transisitionEffect = getRandomInt(1); return true; } return false; } }, async leave(data) { if (transistionImage === null) return; // can be null, return if null to not throw an error if ( transisitionEffect == 0) { const done = this.async(); let element = transistionImage; let state = Flip.getState(element); let headerImage = document.getElementById('headerImage'); headerImage.removeChild(headerImage.getElementsByTagName('img')[0]); let headerContent = document.querySelector('.headerContent'); gsap.to(headerContent, { opacity: 0, }); let content = document.querySelector('.content'); gsap.to(content, { opacity: 0, }); headerImage.appendChild(element); scroll(0,0); Flip.from(state, {duration:0.9, ease: "power1.inOut", scale: true, absolute:true,}); await delay(900); // Der await Operator wird genutzt, um auf einen Promise zu warten. Er kann nur in einer async Funktion benutzt werden. done(); } }, enter(data) { window.scrollTop = '0'; let content = data.next.container.querySelector('.content'); gsap.from(content, { opacity: 0, }); let headerContent = data.next.container.querySelector('.headerContent'); gsap.from(headerContent, { opacity: 0, delay: 0.5, }); }, after(data) { } }, { name: 'microsites_sliding_scroll', sync: true, from: { custom: (data) => { const { trigger, current, next } = data; function getParent(pathname) { const parts = pathname.split('/').filter(part => part !== '') return parts.length > 1 ? parts[parts.length - 2] : parts[0] || null } if (trigger === 'popstate' || trigger === 'back' || trigger === 'forward') { return false; } if(trigger.classList.contains('microsites_sliding_scroll') || trigger.classList.contains('sliding_scroll')){ return true; } if(current.namespace == 'template_138' && next.namespace == 'template_138') { return getParent(current.url.path) === getParent(next.url.path) } return false; } }, to: { namespace: [ 'template_120', 'template_138', ] },async leave({ current, next, trigger }) { const debug = window.debug; if (debug) console.log('Debug mode enabled'); const done = this.async(); const menuindexCurrent = +current.container.querySelector('[data-menuindex]').dataset.menuindex; const menuindexNext = +next.container.querySelector('[data-menuindex]').dataset.menuindex; const nextContent = next.container.querySelector('.content'); const currentContent = current.container.querySelector('.content'); let xPerc = menuindexCurrent < menuindexNext ? 100 : -100; const navbarHeight = document.querySelector('.navbar').offsetHeight; const pageHeight = document.querySelector('.header').offsetHeight; const nextContentHeight = nextContent.offsetHeight; const totalHeight = nextContentHeight + navbarHeight + pageHeight; document.body.style.minHeight = `${totalHeight}px`; const targetScrollY = trigger.classList.contains('microsites_sliding_scroll') ? pageHeight - navbarHeight : pageHeight + navbarHeight; const top = trigger.classList.contains('microsites_sliding_scroll') ? '0px' : '116px'; gsap.set(next.container, { xPercent: xPerc, position: 'absolute', top: top, left: 0, display: 'block' }); const tl = gsap.timeline({ onComplete: () => { gsap.set(current.container, { display: "none" }); gsap.set(next.container, { clearProps: 'position,top,left,xPercent' }); gsap.set(nextContent, { clearProps: 'xPercent' }); document.body.style.minHeight = ''; done(); } }); tl.to(currentContent, { xPercent: -xPerc, duration: debug ? 5 : 0.5, ease: "power1.inOut", }, 0); tl.to(nextContent, { xPercent: -xPerc, duration: debug ? 5 : 0.5, ease: "power1.inOut" }, 0); tl.to(window, { scrollTo: { y: targetScrollY }, duration: debug ? 5 : 0.5, ease: "power1.inOut" }, 0); }, enter({ next }) { gsap.from(next.container, { opacity: 0, }); } }, { name: 'microsites_sliding', sync: true, from: { custom: ({ trigger }) => { if (trigger === 'popstate' || trigger === 'back' || trigger === 'forward') { return false; } if(trigger.classList.contains('microsites_sliding')){ return true; } return false; } }, to: { namespace: [ 'template_120', ] }, async leave({current, next}) { const done = this.async(); const tl = gsap.timeline({onComplete: ()=>{ gsap.set(next.container, {clearProps: 'all'}) gsap.set(next.container.querySelector('.content'), {clearProps: 'all'}) }}) const currentContent = current.container.querySelector('.content') const nextContent = next.container.querySelector('.content') const currentH1 = document.querySelector('.currentPagetitle') const currentIntrotext = document.querySelector('.currentIntrotext') const nextH1 = next.container.querySelector('.pageTitle') const nextIntrotext = next.container.querySelector('.introtext') gsap.set(next.container, { xPercent: 100, position: 'absolute', top: 0, left: 0 }) tl.to(currentContent, {xPercent: -100, opacity: 0, duration: 1, ease: "power1.inOut", onComplete: () => { gsap.set(current.container, { display: "none" }); }}, 0) .to([currentH1, currentIntrotext], { opacity: 0, duration: 0.5, ease: "power1.inOut", onComplete: () => { currentH1.innerText = nextH1.innerText; currentIntrotext.innerText = nextIntrotext.innerText; }}, 0) .to([currentH1, currentIntrotext], { opacity: 1, duration: 0.5, ease: "power1.inOut" }, 0.5) .to(nextContent, {xPercent: -100, duration: 1, ease: "power1.inOut"}, 0) await delay(1000); done(); }, enter({next}){ gsap.from(next.container, { opacity: 0, }); } }, { name: 'default', sync: false, async leave(data) { const done = this.async(); gsap.to(data.current.container, { opacity: 0, duration: 0.5, }); await delay(500); // Der await Operator wird genutzt, um auf einen Promise zu warten. Er kann nur in einer async Funktion benutzt werden. scroll(0,0); done(); }, enter(data) { window.scrollTop = '0'; gsap.from(data.next.container, { opacity: 0, duration: 0.5, }); }, after(data) { // START: Ankur - 15062023 - For Scroll Position History if(scrollHistory[data.next.url.href]) { let scroll = scrollHistory[data.next.url.href]; window.scrollTo({top: scroll.y, behavior: 'instant'}); } // END: Ankur } }, { name: 'self', enter() { }, } ] }); });