{"id":1306,"date":"2025-07-14T10:31:00","date_gmt":"2025-07-14T10:31:00","guid":{"rendered":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/"},"modified":"2026-07-08T14:37:00","modified_gmt":"2026-07-08T14:37:00","slug":"campsite-sewage-system","status":"publish","type":"page","link":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/","title":{"rendered":"Campsite sewage system"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1306\" class=\"elementor elementor-1306\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-850698a e-con-full e-flex e-con e-parent\" data-id=\"850698a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t<div class=\"elementor-element elementor-element-5cf4221 e-con-full e-flex e-con e-child\" data-id=\"5cf4221\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;slideshow&quot;,&quot;background_slideshow_gallery&quot;:[{&quot;id&quot;:6531,&quot;url&quot;:&quot;https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rural-school-off-mains-wastewater-system.png&quot;}],&quot;background_slideshow_loop&quot;:&quot;yes&quot;,&quot;background_slideshow_slide_duration&quot;:5000,&quot;background_slideshow_slide_transition&quot;:&quot;fade&quot;,&quot;background_slideshow_transition_duration&quot;:500,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t<div class=\"elementor-element elementor-element-6fb86be e-flex e-con-boxed e-con e-child\" data-id=\"6fb86be\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;slideshow&quot;,&quot;background_slideshow_gallery&quot;:[{&quot;id&quot;:6735,&quot;url&quot;:&quot;https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/campsite-caravan-glamping-wastewater-treatment.png&quot;}],&quot;background_slideshow_loop&quot;:&quot;yes&quot;,&quot;background_slideshow_slide_duration&quot;:5000,&quot;background_slideshow_slide_transition&quot;:&quot;fade&quot;,&quot;background_slideshow_transition_duration&quot;:500,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-24413eb elementor-widget elementor-widget-breadcrumbs\" data-id=\"24413eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"breadcrumbs.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p id=\"breadcrumbs\"><span><span><a href=\"https:\/\/tricel.ie\/wastewater-treatment\/\">Home<\/a><\/span><\/span><\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-08532e9 e-con-full e-flex e-con e-child\" data-id=\"08532e9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-82089eb elementor-position-inline-start elementor-view-default elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"82089eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-far-clock\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm61.8-104.4l-84.9-61.7c-3.1-2.3-4.9-5.9-4.9-9.7V116c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v141.7l66.8 48.6c5.4 3.9 6.5 11.4 2.6 16.8L334.6 349c-3.9 5.3-11.4 6.5-16.8 2.6z\"><\/path><\/svg>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tUpdated July 2026\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3c06188 elementor-position-inline-start elementor-view-default elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"3c06188\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<i aria-hidden=\"true\" class=\"huge huge-maps-location-01\"><\/i>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tRoI &amp; NI coverage\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1317283 elementor-position-inline-start elementor-view-default elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"1317283\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<i aria-hidden=\"true\" class=\"hm hm-add-peoples\"><\/i>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tSeasonal Loading\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0372393 elementor-position-inline-start elementor-view-default elementor-mobile-position-block-start elementor-widget elementor-widget-icon-box\" data-id=\"0372393\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-box-wrapper\">\n\n\t\t\t\t\t\t<div class=\"elementor-icon-box-icon\">\n\t\t\t\t<span  class=\"elementor-icon\">\n\t\t\t\t<i aria-hidden=\"true\" class=\"huge huge-document-validation\"><\/i>\t\t\t\t<\/span>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\t\t\t<div class=\"elementor-icon-box-content\">\n\n\t\t\t\t\t\t\t\t\t<p class=\"elementor-icon-box-title\">\n\t\t\t\t\t\t<span  >\n\t\t\t\t\t\t\tPE-based sizing\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fea58bd elementor-widget elementor-widget-text-editor\" data-id=\"fea58bd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Commercial Wastewater systems \u00b7 Ireland &amp; Northern Ireland<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ce0e645 e-con-full e-flex e-con e-child\" data-id=\"ce0e645\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;slideshow&quot;,&quot;background_slideshow_gallery&quot;:[],&quot;background_slideshow_loop&quot;:&quot;yes&quot;,&quot;background_slideshow_slide_duration&quot;:5000,&quot;background_slideshow_slide_transition&quot;:&quot;fade&quot;,&quot;background_slideshow_transition_duration&quot;:500,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t<div class=\"elementor-element elementor-element-f40da43 e-con-full e-flex e-con e-child\" data-id=\"f40da43\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2535d40 elementor-widget elementor-widget-heading\" data-id=\"2535d40\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Campsite sewage system and wastewater treatment<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e9856b9 elementor-widget elementor-widget-text-editor\" data-id=\"e9856b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Off-mains sewage systems for campsites, caravan parks, holiday parks and glamping sites. Sized around the full site load, seasonal use, discharge route and site conditions \u2014 not pitch numbers alone.<\/p><div class=\"twc-hero-cta\">\u00a0<\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3d381cf elementor-widget elementor-widget-html\" data-id=\"3d381cf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-proof-strip {\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    gap: 28px;\r\n    flex-wrap: wrap;\r\n    background: transparent;\r\n    padding: 10px 18px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n  }\r\n\r\n  .tricel-proof-strip__item {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 7px;\r\n    color: #ffffff;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    line-height: 1.2;\r\n    text-transform: uppercase;\r\n    letter-spacing: 0.2px;\r\n    white-space: nowrap;\r\n  }\r\n\r\n  .tricel-proof-strip__item::before {\r\n    content: \"\";\r\n    width: 9px;\r\n    height: 9px;\r\n    background: #7ee35a;\r\n    display: inline-block;\r\n    flex: 0 0 9px;\r\n  }\r\n\r\n  @media (max-width: 600px) {\r\n    .tricel-proof-strip {\r\n      gap: 12px;\r\n      justify-content: flex-start;\r\n      padding: 10px 14px;\r\n    }\r\n\r\n    .tricel-proof-strip__item {\r\n      font-size: 12px;\r\n      white-space: normal;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-proof-strip\" aria-label=\"Product credentials\">\r\n  <span class=\"tricel-proof-strip__item\">Manufactured in Killarney<\/span>\r\n  <span class=\"tricel-proof-strip__item\">EN 12566 Certified<\/span>\r\n  <span class=\"tricel-proof-strip__item\">EPA Code of Practice \u226410 PE<\/span>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7ce22ab e-con-full e-flex e-con e-child\" data-id=\"7ce22ab\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8a5c315 green-button elementor-align-center elementor-widget elementor-widget-button\" data-id=\"8a5c315\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/book-free-site-visit\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Start your free site assessment<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b6e9ff6 green-button elementor-align-center elementor-widget elementor-widget-button\" data-id=\"b6e9ff6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/systems\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Compare system types<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7daa835 green-button elementor-align-center elementor-widget elementor-widget-button\" data-id=\"7daa835\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/downloads\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\"> View brochures &amp; downloads <\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\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-941f5a5 e-con-full e-flex e-con e-child\" data-id=\"941f5a5\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2d74e45 elementor-widget elementor-widget-global elementor-global-6463 elementor-widget-html\" data-id=\"2d74e45\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- =====================================================================\r\n  Tricel.ie \u2014 Wastewater Product Selection Tool\r\n  Self-contained HTML\/CSS\/JS block.\r\n\r\n  EMBEDDING (Elementor HTML widget)\r\n  - Paste this entire file's contents into an Elementor \"HTML\" widget on\r\n    the target page. Nothing else is required: styles are scoped to\r\n    #tricel-ww-selector and everything runs client-side.\r\n  - Use it ONCE per page only (the script targets a single element ID).\r\n  - GA4: events are pushed to window.dataLayer if GTM is on the page.\r\n    Event names all start with \"wastewater_selector_\".\r\n  - Live chat: the final step shows an \"Ask about [product]\" button\r\n    (id \"tww-launch-livechat\", class \"launch-livechat-button\"). On click\r\n    it finds the site's own Launch Live Chat button (the one present on\r\n    every page, id \"contact-us-launch-livechat-button\" \/ class\r\n    \"launch-livechat-button\") and clicks it programmatically, reusing\r\n    the site's existing chat mechanism. If no such button is found in\r\n    the page DOM, it falls back to common chat provider APIs (HubSpot,\r\n    Tawk, LiveChat, Zendesk, Intercom, Crisp), and finally to the\r\n    contact-us page so the button is never dead.\r\n  - Styling: every CSS rule is scoped under #tricel-ww-selector, with an\r\n    !important hardening block for buttons\/headings\/links, so theme and\r\n    Elementor global styles cannot override the widget.\r\n  - Quote CTA: the \"Request a [product] quote\" button scrolls the page\r\n    to the section with id \"form\" (the quote form on the host page). If\r\n    no #form section exists on the page, it falls back to the widget's\r\n    own contact screen. A secondary \"Ask about [product] on live chat\"\r\n    link on the result screen launches the chat directly.\r\n  - HubSpot form: the widget's fallback contact screen can also embed a\r\n    HubSpot form beneath\r\n    the chat button, loaded via HubSpot's own embed script (the same\r\n    pattern as the chat widget). Set HUBSPOT_REGION \/ HUBSPOT_PORTAL_ID \/\r\n    HUBSPOT_FORM_ID near the top of the script; while placeholders\r\n    remain, the form section is hidden and the chat button stands alone.\r\n  - Brochures: the \"Download brochure\" links use the PDFs from\r\n    tricel.ie\/wastewater-treatment\/downloads\/ \u2014 see BROCHURE_LINKS in\r\n    the script to update them.\r\n  - Items flagged \"to be confirmed\" are marked in the PRODUCTS data with\r\n    a `flag` string \u2014 remove once Tricel confirms availability.\r\n\r\n  CHANGE LOG (this revision)\r\n  - Secondary CTA hover background changed from pale green to white\r\n    (base rule and Elementor-hardened rule).\r\n  - Northern Ireland routing reworked around site conditions:\r\n      poor percolation \/ poor drainage \/ high water table  -> Vitae T3\r\n        (integrated pumped outlet; discharge does not rely on the\r\n        ground absorbing effluent \u2014 discharge to watercourse subject\r\n        to NIEA consent)\r\n      normal percolation (\"ample\")                          -> Novo\r\n      site conditions \"not sure\"                            -> combined\r\n        Vitae T3 \/ Novo result, stating the deciding factor plainly\r\n        (poor percolation = Vitae T3, normal percolation = Novo), with\r\n        both brochures linked.\r\n    Guardrail: Vitae T3 covers 1-14 PE, so NI projects at 15-50 PE stay\r\n    on Novo even with poor percolation, with an explanatory note. The\r\n    septic-tank override in NI now also routes to Vitae T3 (not Novo)\r\n    where poor percolation was reported. ROI routing is unchanged.\r\n\r\n  PREVIOUS REVISION\r\n  - PE estimator moved out of the \"Size\" question into its own dedicated\r\n    screen. Clicking \"Not sure? Estimate your PE\" (or the \"Not sure\" PE\r\n    band) now advances to that screen instead of expanding the current\r\n    step. Back returns to the PE band question.\r\n  - Campsite PE formula fixed to 4 PE per pitch (single input), matching\r\n    the standalone PE calculator.\r\n  - Per-field validation added to the estimator (a missing figure is\r\n    named rather than producing a silent zero).\r\n===================================================================== -->\r\n<div id=\"wastewater-product-selector\" aria-hidden=\"true\"><\/div>\r\n<div id=\"tricel-ww-selector\" class=\"tww-root\">\r\n\r\n  <style>\r\n    #tricel-ww-selector, #tricel-ww-selector * { box-sizing: border-box; }\r\n    #wastewater-product-selector {\r\n      display: block; height: 0; margin: 0; padding: 0;\r\n      position: relative; top: -90px; \/* clearance for sticky headers *\/\r\n      visibility: hidden;\r\n    }\r\n    #tricel-ww-selector {\r\n      --tww-green-900: #1f3a1a;\r\n      --tww-green-700: #2f6b28;\r\n      --tww-green-600: #3d7a28;\r\n      --tww-green-100: #eaf3e6;\r\n      --tww-green-50:  #f5f9f3;\r\n      --tww-orange:    #dd611e;\r\n      --tww-orange-dark: #b94f16;\r\n      --tww-ink:       #1c231d;\r\n      --tww-ink-soft:  #4c554d;\r\n      --tww-line:      #dde3d9;\r\n      --tww-white:     #ffffff;\r\n      --tww-radius:    14px;\r\n      --tww-font-head: \"Manrope\", \"Segoe UI\", Arial, sans-serif;\r\n      --tww-font-body: \"Inter\", \"Segoe UI\", Arial, sans-serif;\r\n      scroll-margin-top: 90px; \/* clears typical sticky site headers when re-anchoring *\/\r\n      font-family: var(--tww-font-body);\r\n      color: var(--tww-ink);\r\n      background: var(--tww-white);\r\n      max-width: 720px;\r\n      margin: 0 auto;\r\n      padding: 0;\r\n      border-radius: 20px;\r\n      overflow: hidden;\r\n      border: 1px solid var(--tww-line);\r\n    }\r\n    #tricel-ww-selector .tww-inner { padding: 28px 24px 32px; }\r\n    @media (min-width: 640px) { #tricel-ww-selector .tww-inner { padding: 36px 40px 40px; } }\r\n\r\n    #tricel-ww-selector h2, #tricel-ww-selector h3 {\r\n      font-family: var(--tww-font-head);\r\n      color: var(--tww-green-900);\r\n      margin: 0 0 10px;\r\n      line-height: 1.2;\r\n    }\r\n    #tricel-ww-selector h2 { font-size: 20px; font-weight: 800; }\r\n    #tricel-ww-selector h3 { font-size: 15px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--tww-green-700); }\r\n    #tricel-ww-selector p { margin: 0 0 14px; line-height: 1.55; color: var(--tww-ink-soft); font-size: 15.5px; }\r\n    #tricel-ww-selector strong { color: var(--tww-ink); }\r\n\r\n    #tricel-ww-selector \/* ---------- Flow progress: a literal \"treatment pipeline\" ---------- *\/\r\n    .tww-pipeline { padding: 18px 24px 0; }\r\n    @media (min-width: 640px) { #tricel-ww-selector .tww-pipeline { padding: 24px 40px 0; } }\r\n    #tricel-ww-selector .tww-pipeline-track {\r\n      position: relative;\r\n      height: 6px;\r\n      background: var(--tww-line);\r\n      border-radius: 999px;\r\n      overflow: hidden;\r\n    }\r\n    #tricel-ww-selector .tww-pipeline-fill {\r\n      position: absolute; inset: 0 auto 0 0; height: 100%; width: 0%;\r\n      background: linear-gradient(90deg, var(--tww-green-600), var(--tww-green-700));\r\n      border-radius: 999px;\r\n      transition: width 420ms ease;\r\n    }\r\n    #tricel-ww-selector .tww-pipeline-labels {\r\n      display: flex; justify-content: space-between; margin-top: 8px;\r\n      font-size: 10.5px; color: var(--tww-ink-soft); font-weight: 600;\r\n      text-transform: uppercase; letter-spacing: 0.02em;\r\n    }\r\n    #tricel-ww-selector .tww-pipeline-labels span { opacity: 0.45; transition: opacity 200ms ease; flex: 1; text-align: center; }\r\n    #tricel-ww-selector .tww-pipeline-labels span:first-child { text-align: left; }\r\n    #tricel-ww-selector .tww-pipeline-labels span:last-child { text-align: right; }\r\n    #tricel-ww-selector .tww-pipeline-labels span.is-active, #tricel-ww-selector .tww-pipeline-labels span.is-done { opacity: 1; color: var(--tww-green-700); }\r\n\r\n    #tricel-ww-selector \/* ---------- Landing ---------- *\/\r\n    .tww-landing-eyebrow {\r\n      display: inline-block; font-size: 12px; font-weight: 700; text-transform: uppercase;\r\n      letter-spacing: 0.06em; color: var(--tww-green-700); background: var(--tww-green-100);\r\n      padding: 5px 10px; border-radius: 999px; margin-bottom: 14px;\r\n    }\r\n    #tricel-ww-selector .tww-landing-visual {\r\n      display: flex; align-items: center; gap: 0; margin: 22px 0 24px;\r\n      padding: 16px; background: var(--tww-green-100); border-radius: 12px;\r\n    }\r\n    #tricel-ww-selector .tww-landing-visual .tww-drop { flex: 1; text-align: center; font-size: 12px; font-weight: 700; color: var(--tww-green-700); }\r\n    #tricel-ww-selector .tww-landing-visual svg { display: block; margin: 0 auto 4px; }\r\n    #tricel-ww-selector .tww-landing-visual .tww-arrow { color: var(--tww-green-600); font-size: 18px; padding: 0 2px; }\r\n\r\n    #tricel-ww-selector \/* ---------- Buttons ---------- *\/\r\n    .tww-btn {\r\n      appearance: none; border: none; cursor: pointer; font-family: var(--tww-font-body);\r\n      font-weight: 700; font-size: 15px; border-radius: 10px; padding: 13px 22px;\r\n      display: inline-flex; align-items: center; justify-content: center; gap: 8px;\r\n      transition: transform 120ms ease, box-shadow 120ms ease, background 120ms ease;\r\n      text-decoration: none;\r\n    }\r\n    #tricel-ww-selector .tww-btn:active { transform: scale(0.98); }\r\n    #tricel-ww-selector .tww-btn-primary { background: var(--tww-orange); color: #fff; }\r\n    #tricel-ww-selector .tww-btn-primary:hover { background: var(--tww-orange-dark); }\r\n    #tricel-ww-selector .tww-btn-secondary { background: var(--tww-white); color: var(--tww-green-700); border: 1.5px solid var(--tww-green-600); }\r\n    #tricel-ww-selector .tww-btn-secondary:hover { background: var(--tww-white); }\r\n    #tricel-ww-selector .tww-btn-ghost { background: transparent; color: var(--tww-ink-soft); font-weight: 600; padding: 10px 8px; }\r\n    #tricel-ww-selector .tww-btn-ghost:hover { color: var(--tww-green-700); }\r\n    #tricel-ww-selector .tww-btn-block { width: 100%; }\r\n    #tricel-ww-selector .tww-btn:focus-visible { outline: 3px solid var(--tww-green-600); outline-offset: 2px; }\r\n\r\n    #tricel-ww-selector \/* ---------- Option cards (question choices) ---------- *\/\r\n    .tww-options { display: grid; gap: 10px; margin-bottom: 18px; }\r\n    #tricel-ww-selector .tww-option {\r\n      text-align: left; width: 100%; background: var(--tww-white);\r\n      border: 1.5px solid var(--tww-line); border-radius: 12px; padding: 14px 16px;\r\n      cursor: pointer; font-family: var(--tww-font-body); font-size: 15px; font-weight: 600;\r\n      color: var(--tww-ink); transition: border-color 120ms ease, background 120ms ease;\r\n      display: flex; align-items: center; justify-content: space-between; gap: 10px;\r\n    }\r\n    #tricel-ww-selector .tww-option:hover { border-color: var(--tww-green-600); background: var(--tww-green-50); }\r\n    #tricel-ww-selector .tww-option:focus-visible { outline: 3px solid var(--tww-green-600); outline-offset: 2px; }\r\n    #tricel-ww-selector .tww-option.is-selected { border-color: var(--tww-green-600); background: var(--tww-green-100); }\r\n    #tricel-ww-selector .tww-option .tww-option-sub { display: block; font-weight: 400; font-size: 13px; color: var(--tww-ink-soft); margin-top: 2px; }\r\n    #tricel-ww-selector .tww-option-chevron { color: var(--tww-green-600); font-size: 18px; flex-shrink: 0; }\r\n\r\n    #tricel-ww-selector .tww-step-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-top: 20px;}\r\n    #tricel-ww-selector .tww-back { flex-shrink: 0; }\r\n\r\n    #tricel-ww-selector .tww-notsure-row { text-align: center; margin-top: 4px; }\r\n\r\n    #tricel-ww-selector \/* ---------- Result screen ---------- *\/\r\n    .tww-result-badge {\r\n      display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700;\r\n      text-transform: uppercase; letter-spacing: 0.04em; color: var(--tww-green-700);\r\n      background: var(--tww-green-100); padding: 5px 10px; border-radius: 999px; margin-bottom: 12px;\r\n    }\r\n    #tricel-ww-selector .tww-result-card {\r\n      background: var(--tww-white); border: 1.5px solid var(--tww-line); border-radius: 14px;\r\n      padding: 20px; margin-bottom: 16px;\r\n    }\r\n    #tricel-ww-selector .tww-result-card h2 { font-size: 22px; }\r\n    #tricel-ww-selector .tww-flag {\r\n      background: #fff6ea; border: 1px solid #f0d6a8; color: #7a5313;\r\n      border-radius: 10px; padding: 12px 14px; font-size: 13.5px; margin-bottom: 16px; line-height: 1.5;\r\n    }\r\n    #tricel-ww-selector .tww-flag strong { color: #7a5313; }\r\n    #tricel-ww-selector .tww-info-note {\r\n      background: var(--tww-green-50); border: 1px solid var(--tww-green-100); color: var(--tww-ink-soft);\r\n      border-radius: 10px; padding: 12px 14px; font-size: 13.5px; margin-bottom: 16px; line-height: 1.5;\r\n    }\r\n    #tricel-ww-selector .tww-info-note strong { color: var(--tww-green-700); }\r\n    #tricel-ww-selector .tww-disclaimer {\r\n      border-left: 3px solid var(--tww-green-600); background: var(--tww-green-50);\r\n      padding: 12px 14px; border-radius: 0 10px 10px 0; font-size: 13.5px; color: var(--tww-ink-soft);\r\n      margin: 18px 0;\r\n    }\r\n    #tricel-ww-selector .tww-cta-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }\r\n    #tricel-ww-selector .tww-secondary-links { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 14px; font-size: 14px; }\r\n    #tricel-ww-selector .tww-secondary-links a { color: var(--tww-green-700); font-weight: 600; text-decoration: none; }\r\n    #tricel-ww-selector .tww-secondary-links a:hover { text-decoration: underline; }\r\n\r\n    #tricel-ww-selector \/* ---------- Lead form ---------- *\/\r\n    .tww-form-grid { display: grid; gap: 14px; grid-template-columns: 1fr; }\r\n    @media (min-width: 560px) { #tricel-ww-selector .tww-form-grid.tww-cols-2 { grid-template-columns: 1fr 1fr; } }\r\n    #tricel-ww-selector .tww-field label { display: block; font-size: 13px; font-weight: 700; color: var(--tww-ink); margin-bottom: 6px; }\r\n    #tricel-ww-selector .tww-field input[type=\"text\"], #tricel-ww-selector .tww-field input[type=\"email\"], #tricel-ww-selector .tww-field input[type=\"tel\"], #tricel-ww-selector .tww-field textarea, #tricel-ww-selector .tww-field select {\r\n      width: 100%; font-family: var(--tww-font-body); font-size: 15px; padding: 11px 12px;\r\n      border: 1.5px solid var(--tww-line); border-radius: 9px; background: var(--tww-white); color: var(--tww-ink);\r\n    }\r\n    #tricel-ww-selector .tww-field input:focus, #tricel-ww-selector .tww-field textarea:focus, #tricel-ww-selector .tww-field select:focus {\r\n      outline: none; border-color: var(--tww-green-600); box-shadow: 0 0 0 3px var(--tww-green-100);\r\n    }\r\n    #tricel-ww-selector .tww-field textarea { min-height: 80px; resize: vertical; }\r\n    #tricel-ww-selector .tww-field-file {\r\n      border: 1.5px dashed var(--tww-line); border-radius: 9px; padding: 14px; text-align: center;\r\n      font-size: 13.5px; color: var(--tww-ink-soft); background: var(--tww-green-50);\r\n    }\r\n    #tricel-ww-selector .tww-summary-pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 20px; }\r\n    #tricel-ww-selector .tww-summary-pill {\r\n      font-size: 12.5px; font-weight: 600; color: var(--tww-green-700); background: var(--tww-green-100);\r\n      padding: 5px 10px; border-radius: 999px;\r\n    }\r\n\r\n    #tricel-ww-selector .tww-confirm { text-align: center; padding: 20px 0; }\r\n    #tricel-ww-selector .tww-confirm-icon {\r\n      width: 56px; height: 56px; border-radius: 50%; background: var(--tww-green-100);\r\n      display: flex; align-items: center; justify-content: center; margin: 0 auto 16px;\r\n      color: var(--tww-green-700);\r\n    }\r\n\r\n    #tricel-ww-selector .tww-hidden { display: none !important; }\r\n    #tricel-ww-selector .tww-fade-in { animation: tww-fade-in 260ms ease; }\r\n    @keyframes tww-fade-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }\r\n    @media (prefers-reduced-motion: reduce) {\r\n      #tricel-ww-selector .tww-fade-in { animation: none; }\r\n      #tricel-ww-selector .tww-pipeline-fill { transition: none; }\r\n    }\r\n\r\n    \/* ---------- Theme-override hardening (Elementor\/theme resets) ---------- *\/\r\n    #tricel-ww-selector .tww-btn,\r\n    #tricel-ww-selector button.tww-btn,\r\n    #tricel-ww-selector a.tww-btn {\r\n      font-family: var(--tww-font-head) !important;\r\n      font-size: 14px !important;\r\n      font-weight: 700 !important;\r\n      text-transform: none !important;\r\n      letter-spacing: normal !important;\r\n      text-decoration: none !important;\r\n      border-radius: 999px !important;\r\n      box-shadow: none !important;\r\n      line-height: 1.2 !important;\r\n    }\r\n    #tricel-ww-selector .tww-btn-primary,\r\n    #tricel-ww-selector button.tww-btn-primary {\r\n      background: var(--tww-orange) !important;\r\n      color: #fff !important;\r\n      border: none !important;\r\n    }\r\n    #tricel-ww-selector .tww-btn-primary:hover { background: var(--tww-orange-dark) !important; }\r\n    #tricel-ww-selector .tww-btn-secondary {\r\n      background: var(--tww-white) !important;\r\n      color: var(--tww-green-700) !important;\r\n      border: 1.5px solid var(--tww-green-600) !important;\r\n    }\r\n    #tricel-ww-selector .tww-btn-secondary:hover { background: var(--tww-white) !important; }\r\n    #tricel-ww-selector .tww-btn-ghost { background: transparent !important; color: var(--tww-ink-soft) !important; border: none !important; }\r\n    #tricel-ww-selector h2, #tricel-ww-selector h3 {\r\n      font-family: var(--tww-font-head) !important;\r\n      color: var(--tww-green-900) !important;\r\n      text-transform: none !important;\r\n      letter-spacing: normal !important;\r\n    }\r\n    #tricel-ww-selector h3 { color: var(--tww-green-700) !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; }\r\n    #tricel-ww-selector p { font-family: var(--tww-font-body) !important; color: var(--tww-ink-soft) !important; }\r\n    #tricel-ww-selector .tww-secondary-links a {\r\n      color: var(--tww-green-700) !important;\r\n      text-decoration: none !important;\r\n      font-family: var(--tww-font-body) !important;\r\n      box-shadow: none !important;\r\n      border-bottom: none !important;\r\n    }\r\n    #tricel-ww-selector .tww-secondary-links a:hover { text-decoration: underline !important; }\r\n    #tricel-ww-selector .tww-option {\r\n      font-family: var(--tww-font-body) !important;\r\n      text-transform: none !important;\r\n      text-align: left !important;\r\n      box-shadow: none !important;\r\n    }\r\n    #tricel-ww-selector textarea, #tricel-ww-selector input, #tricel-ww-selector select {\r\n      font-family: var(--tww-font-body) !important;\r\n    }\r\n    #tricel-ww-selector .tww-form-divider {\r\n      display: flex; align-items: center; gap: 12px;\r\n      margin: 22px 0 14px; color: var(--tww-ink-soft);\r\n      font-size: 12.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;\r\n    }\r\n    #tricel-ww-selector .tww-form-divider::before,\r\n    #tricel-ww-selector .tww-form-divider::after {\r\n      content: \"\"; flex: 1; height: 1px; background: var(--tww-line);\r\n    }\r\n    #tricel-ww-selector .tww-hs-form {\r\n      background: var(--tww-white);\r\n      border: 1px solid var(--tww-line);\r\n      border-radius: var(--tww-radius);\r\n      padding: 16px;\r\n    }\r\n\r\n    \/* ---------- Type scale: 12px body, 14px headers and CTAs ---------- *\/\r\n    #tricel-ww-selector h2,\r\n    #tricel-ww-selector h3,\r\n    #tricel-ww-selector .tww-result-card h2 { font-size: 14px !important; }\r\n    #tricel-ww-selector .tww-btn { font-size: 14px !important; }\r\n    #tricel-ww-selector p,\r\n    #tricel-ww-selector .tww-option,\r\n    #tricel-ww-selector .tww-secondary-links,\r\n    #tricel-ww-selector .tww-flag,\r\n    #tricel-ww-selector .tww-info-note,\r\n    #tricel-ww-selector .tww-disclaimer,\r\n    #tricel-ww-selector .tww-form-divider,\r\n    #tricel-ww-selector .tww-field label,\r\n    #tricel-ww-selector input,\r\n    #tricel-ww-selector select,\r\n    #tricel-ww-selector textarea,\r\n    #tricel-ww-selector .tww-summary-pill { font-size: 12px !important; }\r\n    #tricel-ww-selector .tww-option .tww-option-sub { font-size: 11px !important; }\r\n    #tricel-ww-selector .tww-landing-visual .tww-arrow,\r\n    #tricel-ww-selector .tww-option-chevron { font-size: 14px !important; }\r\n\r\n    \/* ---------- Landing (start) screen: dark translucent panel ---------- *\/\r\n    #tricel-ww-selector.tww-landing {\r\n      background: rgba(15, 36, 26, 0.28) !important;\r\n      border-color: rgba(255, 255, 255, 0.25) !important;\r\n    }\r\n    #tricel-ww-selector.tww-landing h2,\r\n    #tricel-ww-selector.tww-landing h3 { color: #ffffff !important; }\r\n    #tricel-ww-selector.tww-landing p { color: rgba(255, 255, 255, 0.92) !important; }\r\n    #tricel-ww-selector.tww-landing strong { color: #ffffff !important; }\r\n    #tricel-ww-selector.tww-landing .tww-landing-eyebrow {\r\n      background: rgba(255, 255, 255, 0.16) !important;\r\n      color: #ffffff !important;\r\n    }\r\n    #tricel-ww-selector.tww-landing .tww-landing-visual .tww-drop { color: #ffffff !important; }\r\n    #tricel-ww-selector.tww-landing .tww-landing-visual .tww-arrow { color: rgba(255, 255, 255, 0.85) !important; }\r\n    #tricel-ww-selector.tww-landing .tww-pipeline-track { background: rgba(255, 255, 255, 0.25) !important; }\r\n    #tricel-ww-selector.tww-landing .tww-pipeline-labels span { color: rgba(255, 255, 255, 0.75) !important; }\r\n    #tricel-ww-selector.tww-landing .tww-pipeline-labels span.is-active,\r\n    #tricel-ww-selector.tww-landing .tww-pipeline-labels span.is-done { color: #ffffff !important; }\r\n\r\n    \/* ---------- Persistent reset footer ---------- *\/\r\n    #tricel-ww-selector .tww-footer {\r\n      display: flex; justify-content: center;\r\n      border-top: 1px solid var(--tww-line);\r\n      margin-top: 20px; padding-top: 10px;\r\n    }\r\n    #tricel-ww-selector .tww-footer .tww-btn-ghost { font-size: 12px !important; padding: 8px 12px; }\r\n    \/* Nothing to reset on the landing screen. *\/\r\n    #tricel-ww-selector.tww-landing .tww-footer { display: none; }\r\n\r\n    \/* ---------- PE estimator panel ---------- *\/\r\n    #tricel-ww-selector .tww-pe-calc {\r\n      background: var(--tww-green-50);\r\n      border: 1px solid var(--tww-line);\r\n      border-radius: var(--tww-radius);\r\n      padding: 16px;\r\n      margin-top: 12px;\r\n    }\r\n    #tricel-ww-selector .tww-pe-calc h3 { margin-bottom: 12px; }\r\n    #tricel-ww-selector .tww-pe-calc .tww-field { margin-bottom: 10px; }\r\n    #tricel-ww-selector .tww-pe-calc input,\r\n    #tricel-ww-selector .tww-pe-calc select {\r\n      width: 100%; padding: 9px 11px; border: 1px solid var(--tww-line);\r\n      border-radius: 8px; background: var(--tww-white); color: var(--tww-ink);\r\n    }\r\n    #tricel-ww-selector .tww-pe-calc #tww-pe-formula-note { margin: 4px 0 12px; }\r\n\r\n    \/* ---------- Landing visual card: legible over the dark panel ---------- *\/\r\n    #tricel-ww-selector.tww-landing .tww-landing-visual {\r\n      background: rgba(15, 36, 26, 0.45) !important;\r\n      border: 1px solid rgba(255, 255, 255, 0.22);\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"tww-pipeline tww-hidden\" id=\"tww-pipeline\">\r\n    <div class=\"tww-pipeline-track\"><div class=\"tww-pipeline-fill\" id=\"tww-pipeline-fill\"><\/div><\/div>\r\n    <div class=\"tww-pipeline-labels\" id=\"tww-pipeline-labels\">\r\n      <span data-step=\"1\">Location<\/span>\r\n      <span data-step=\"2\">Project<\/span>\r\n      <span data-step=\"3\">Usage<\/span>\r\n      <span data-step=\"4\">Size<\/span>\r\n      <span data-step=\"5\">Site<\/span>\r\n      <span data-step=\"6\">Treatment<\/span>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"tww-inner\">\r\n    <div id=\"tww-screen\"><!-- rendered by JS --><\/div>\r\n    <div class=\"tww-footer\">\r\n      <button type=\"button\" id=\"tww-reset\" class=\"tww-btn tww-btn-ghost\">&#8635; Start over<\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function () {\r\n  \"use strict\";\r\n\r\n  \/\/ NOTE: the lead-capture form (HubSpot Forms API) has been replaced by\r\n  \/\/ a live-chat handover \u2014 see renderLeadForm() and openLiveChat().\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ HubSpot embedded form \u2014 REQUIRED BEFORE LAUNCH\r\n  \/\/ The final screen embeds a HubSpot form (managed in HubSpot, like the\r\n  \/\/ chat widget) below the live-chat button. Fill in the three values\r\n  \/\/ from the form's embed code (HubSpot > Marketing > Forms > your form\r\n  \/\/ > Share > Embed code):\r\n  \/\/   hbspt.forms.create({ region: \"...\", portalId: \"...\", formId: \"...\" })\r\n  \/\/ If HUBSPOT_FORM_ID is left as the placeholder, the form section is\r\n  \/\/ simply not shown and the chat button stands alone.\r\n  \/\/\r\n  \/\/ Optional context capture: if the HubSpot form contains HIDDEN fields\r\n  \/\/ with any of these internal property names, the widget fills them in\r\n  \/\/ automatically before the visitor submits:\r\n  \/\/   project_location, project_type, new_build_or_replacement, pe_band,\r\n  \/\/   site_conditions, treatment_requirement, selector_product_result\r\n  \/\/ ---------------------------------------------------------------------\r\n  var HUBSPOT_REGION    = \"eu1\";              \/\/ \"eu1\" or \"na1\" \u2014 from the embed code\r\n  var HUBSPOT_PORTAL_ID = \"YOUR_PORTAL_ID\";   \/\/ e.g. \"12345678\"\r\n  var HUBSPOT_FORM_ID   = \"YOUR_FORM_ID\";     \/\/ e.g. \"abcd1234-ef56-7890-ab12-cd34ef567890\"\r\n\r\n  function hubspotFormConfigured() {\r\n    return HUBSPOT_PORTAL_ID.indexOf(\"YOUR_\") !== 0 && HUBSPOT_FORM_ID.indexOf(\"YOUR_\") !== 0;\r\n  }\r\n\r\n  \/\/ Loads HubSpot's forms embed script once, then runs the callback.\r\n  var hsFormsScriptState = \"idle\"; \/\/ idle | loading | ready | failed\r\n  var hsFormsQueue = [];\r\n  function withHubspotForms(cb) {\r\n    if (window.hbspt && window.hbspt.forms) { cb(); return; }\r\n    hsFormsQueue.push(cb);\r\n    if (hsFormsScriptState === \"loading\") return;\r\n    hsFormsScriptState = \"loading\";\r\n    var s = document.createElement(\"script\");\r\n    s.src = \"https:\/\/js\" + (HUBSPOT_REGION === \"na1\" ? \"\" : \"-\" + HUBSPOT_REGION) + \".hsforms.net\/forms\/embed\/v2.js\";\r\n    s.async = true;\r\n    s.onload = function () {\r\n      hsFormsScriptState = \"ready\";\r\n      hsFormsQueue.splice(0).forEach(function (fn) { try { fn(); } catch (e) {} });\r\n    };\r\n    s.onerror = function () { hsFormsScriptState = \"failed\"; hsFormsQueue.length = 0; };\r\n    document.head.appendChild(s);\r\n  }\r\n\r\n  \/\/ Mounts the HubSpot form into the given container and prefills any\r\n  \/\/ hidden context fields it finds.\r\n  function mountHubspotForm(targetSelector) {\r\n    withHubspotForms(function () {\r\n      if (!document.querySelector(targetSelector)) return; \/\/ screen changed meanwhile\r\n      window.hbspt.forms.create({\r\n        region: HUBSPOT_REGION,\r\n        portalId: HUBSPOT_PORTAL_ID,\r\n        formId: HUBSPOT_FORM_ID,\r\n        target: targetSelector,\r\n        onFormReady: function ($form) {\r\n          try {\r\n            var formEl = ($form && $form.length !== undefined) ? $form[0] : $form;\r\n            if (!formEl || !formEl.querySelector) return;\r\n            var context = {\r\n              project_location: state.location === \"roi\" ? \"Republic of Ireland\" : state.location === \"ni\" ? \"Northern Ireland\" : \"Not sure\",\r\n              project_type: state.propertyTypeLabel || \"\",\r\n              new_build_or_replacement: state.usageLabel || \"\",\r\n              pe_band: state.peBandLabel || \"\",\r\n              site_conditions: state.siteSpaceLabel || \"\",\r\n              treatment_requirement: state.treatmentLabel || \"\",\r\n              selector_product_result: state.result ? state.result.product : \"\"\r\n            };\r\n            Object.keys(context).forEach(function (name) {\r\n              var input = formEl.querySelector('input[name=\"' + name + '\"]');\r\n              if (input && context[name]) {\r\n                input.value = context[name];\r\n                \/\/ Let HubSpot's own change tracking see the value.\r\n                input.dispatchEvent(new Event(\"input\", { bubbles: true }));\r\n                input.dispatchEvent(new Event(\"change\", { bubbles: true }));\r\n              }\r\n            });\r\n          } catch (e) { \/* prefill is best-effort *\/ }\r\n        },\r\n        onFormSubmitted: function () {\r\n          trackEvent(\"wastewater_selector_form_submit\", resultTrackingParams());\r\n        }\r\n      });\r\n    });\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Brochure downloads \u2014 URLs supplied by Tricel from\r\n  \/\/ https:\/\/tricel.ie\/wastewater-treatment\/downloads\/ and verified live\r\n  \/\/ (July 2026). Keys must match the `product` strings in the PRODUCTS\r\n  \/\/ data exactly. Anything unmapped falls back to the downloads page.\r\n  \/\/ ---------------------------------------------------------------------\r\n  var DOWNLOADS_PAGE = \"https:\/\/tricel.ie\/wastewater-treatment\/downloads\/\";\r\n  var BROCHURE_PURAFLO = \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure-Tricel-Puraflo-Packaged-Filter-System.pdf\";\r\n  var BROCHURE_SANDCEL = \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure-Tricel-Sandcel-Sand-Polishing-Filter.pdf\";\r\n  var BROCHURE_LINKS = {\r\n    \"Tricel Vento\":       \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure_Tricel-Septic-Tank.pdf\",\r\n    \"Tricel Novo\":        \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure-Tricel-Novo-Wastewater-Treatment-Plant.pdf\",\r\n    \"Tricel Vitae T3\":    \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure-Tricel-Vitae.pdf\",\r\n    \"Tricel TERO\":        \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/TERO-Tricel-Tertiary-Treatment-Brochure.pdf\",\r\n    \"Tricel Maxus\":       \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Tricel-Killarney-Maxus-Combi-Brochure.pdf\",\r\n    \/\/ Combined results get one brochure as the main link; the second is\r\n    \/\/ added on the result screen (see renderResult's download handling).\r\n    \"Puraflo \/ Sandcel\":  BROCHURE_PURAFLO,\r\n    \"Tricel Vitae T3 \/ Novo\": \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure-Tricel-Vitae.pdf\",\r\n    \"tertiary treatment\": DOWNLOADS_PAGE + \"#Tero\"\r\n  };\r\n  var BROCHURE_NOVO = \"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/01\/Brochure-Tricel-Novo-Wastewater-Treatment-Plant.pdf\";\r\n  function brochureUrlFor(product) {\r\n    return BROCHURE_LINKS[product] || DOWNLOADS_PAGE;\r\n  }\r\n\r\n  var screen = document.getElementById(\"tww-screen\");\r\n  var pipeline = document.getElementById(\"tww-pipeline\");\r\n  var pipelineFill = document.getElementById(\"tww-pipeline-fill\");\r\n  var pipelineLabels = document.getElementById(\"tww-pipeline-labels\");\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ GA4 helper \u2014 pushes to window.dataLayer if GTM\/GA4 is present on the\r\n  \/\/ host page. Safe no-op otherwise.\r\n  \/\/ ---------------------------------------------------------------------\r\n  function trackEvent(name, params) {\r\n    try {\r\n      window.dataLayer = window.dataLayer || [];\r\n      window.dataLayer.push(Object.assign({ event: name }, params || {}));\r\n    } catch (e) { \/* no-op *\/ }\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ State\r\n  \/\/ ---------------------------------------------------------------------\r\n  function freshState() {\r\n    return {\r\n      location: null,\r\n      propertyType: null, propertyTypeLabel: null,\r\n      usage: null, usageLabel: null,\r\n      peBand: null, peBandLabel: null,\r\n      siteSpace: null, siteSpaceLabel: null,\r\n      treatment: null, treatmentLabel: null,\r\n      result: null\r\n    };\r\n  }\r\n  var state = freshState();\r\n\r\n  var COMMERCIAL_TYPES = [\"commercial-semi\", \"large-commercial\"];\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Contact details (per jurisdiction \u2014 see specification Section 3)\r\n  \/\/ ---------------------------------------------------------------------\r\n  var CONTACT = {\r\n    roi: { name: \"Tricel Ireland\", phone: \"+353 (0)64 663 2421\", phoneHref: \"tel:+353646632421\", email: \"sales@tricel.ie\" },\r\n    ni:  { name: \"Depawater, Tricel's NI partner\", phone: \"02837 507 023\", phoneHref: \"tel:+442837507023\", email: \"sales@depawater.co.uk\" },\r\n    niTero: { name: \"Tricel Weston (UK)\", phone: \"+44 (0)1934 422 311\", phoneHref: \"tel:+441934422311\", email: \"customerservice@tricelwater.co.uk\" }\r\n  };\r\n\r\n  function ctaButtons(contact, quoteLabel, chatLabel) {\r\n    return (\r\n      '<div class=\"tww-cta-row\">' +\r\n        '<a href=\"#form\" class=\"tww-btn tww-btn-primary\" data-action=\"request-quote\">' + quoteLabel + '<\/a>' +\r\n        '<a class=\"tww-btn tww-btn-secondary\" href=\"' + contact.phoneHref + '\" data-action=\"track-quote-click\">Speak to a specialist<\/a>' +\r\n      '<\/div>' +\r\n      '<div class=\"tww-secondary-links\">' +\r\n        '<a href=\"#\" class=\"launch-livechat-button\" data-action=\"launch-chat\">' + chatLabel + ' on live chat<\/a>' +\r\n        '<a href=\"mailto:' + contact.email + '\">Email ' + contact.name + '<\/a>' +\r\n        '<a href=\"#\" data-action=\"download-brochure\">Download brochure<\/a>' +\r\n      '<\/div>'\r\n    );\r\n  }\r\n\r\n  \/\/ =======================================================================\r\n  \/\/ SITE-CONDITION LOGIC\r\n  \/\/ -----------------------------------------------------------------------\r\n  \/\/ The brochures make clear that \"treatment requirement\" alone doesn't\r\n  \/\/ decide the right product \u2014 the site has to be able to take it:\r\n  \/\/\r\n  \/\/  - Tricel Vento (septic tank) only provides primary settlement; the\r\n  \/\/    brochure is explicit that the liquid effluent then \"passes to a\r\n  \/\/    suitable percolation area\" and final treatment happens as it\r\n  \/\/    \"penetrates through the specially designed percolation area\".\r\n  \/\/    That means Vento needs a percolation\/soakaway area sized to the\r\n  \/\/    site's own percolation (T-value) test \u2014 it doesn't work on its own\r\n  \/\/    where that space or ground performance isn't there.\r\n  \/\/  - Tricel Novo is a compact, shallow-invert SMC tank (\"no concrete\r\n  \/\/    backfill for installation on most sites\") that treats to a higher\r\n  \/\/    secondary standard on-site (typically 11 mg\/l BOD5), so the\r\n  \/\/    discharge area it needs afterwards is smaller and less demanding\r\n  \/\/    than a raw septic tank's percolation area.\r\n  \/\/  - Tricel Sandcel is explicit about this trade-off: \"Only 16m\u00b2 area\r\n  \/\/    for a 6 person application eliminating the need of large\r\n  \/\/    percolation area.\"\r\n  \/\/  - Tricel TERO reduces the required soil depth for final discharge to\r\n  \/\/    600mm through improved E. coli treatment, again shrinking the\r\n  \/\/    footprint needed on tight sites.\r\n  \/\/  - Tricel Maxus offers \"flexible installation options to suit any\r\n  \/\/    site... fit plants into difficult sites or simply save space.\"\r\n  \/\/\r\n  \/\/ NORTHERN IRELAND \u2014 Vitae T3 vs Novo (site conditions decide):\r\n  \/\/  - Tricel Vitae T3 (NI only, 1-14 PE) has an integrated pumped\r\n  \/\/    outlet on every size, so the treated-effluent discharge does not\r\n  \/\/    rely on the ground absorbing it \u2014 it can be pumped to a suitable\r\n  \/\/    discharge point agreed at site assessment (discharge to a\r\n  \/\/    watercourse is subject to NIEA consent). That makes Vitae T3 the\r\n  \/\/    NI route where the percolation test shows poor drainage, a high\r\n  \/\/    water table, or shallow bedrock.\r\n  \/\/  - Tricel Novo remains the NI route where percolation is normal\r\n  \/\/    (discharge to ground), where space is the constraint rather than\r\n  \/\/    drainage, and for all projects above 14 PE (Vitae's ceiling).\r\n  \/\/  - Where NI site conditions are not yet known, both are presented\r\n  \/\/    together with the deciding factor stated plainly: poor\r\n  \/\/    percolation points to Vitae T3, normal percolation to Novo.\r\n  \/\/\r\n  \/\/ So: if a user says they want \"a septic tank only\" but also says their\r\n  \/\/ site has limited space or known poor percolation, we don't recommend\r\n  \/\/ Vento \u2014 we explain why and route to a treatment plant instead (Vitae\r\n  \/\/ T3 in NI where percolation is the problem, otherwise Novo), optionally\r\n  \/\/ pointing to Sandcel\/TERO for further footprint reduction. Every other\r\n  \/\/ result gets a lighter supporting note where site conditions are\r\n  \/\/ relevant.\r\n  \/\/ =======================================================================\r\n\r\n  function resultConsultation() {\r\n    return {\r\n      product: \"consultation\",\r\n      title: \"Let's confirm the right system together\",\r\n      bestFor: \"Projects where there isn't quite enough detail yet to point to one product with confidence.\",\r\n      why: \"Every site is different, and the right Tricel product depends on details that are best confirmed with a site assessment. Rather than guess, we'll take the details you've given us and have the Tricel team follow up with guidance suited to your project.\",\r\n      flag: null, siteNote: null,\r\n      contact: CONTACT.roi,\r\n      quoteLabel: \"Request a consultation\"\r\n    };\r\n  }\r\n\r\n  function resultVento(loc, siteSpace) {\r\n    var contact = loc === \"ni\" ? CONTACT.ni : CONTACT.roi;\r\n    var siteNote = null;\r\n    if (siteSpace === \"unsure\") {\r\n      siteNote = \"Tricel Vento relies on a suitably sized percolation area to finish treating the liquid effluent, so it's worth confirming your percolation test and available space before ordering. If either turns out to be limited, Tricel Novo is usually the next step.\";\r\n    } else if (siteSpace === \"ample\") {\r\n      siteNote = \"You mentioned there's good space and the ground drains well \u2014 that's exactly what a septic tank needs downstream, since the percolation area does the final treatment work.\";\r\n    }\r\n    return {\r\n      product: \"Tricel Vento\",\r\n      title: \"Tricel Vento \u2014 septic tank\",\r\n      bestFor: \"Single dwellings and small communities with enough space for a properly sized percolation area.\",\r\n      why: \"Tricel Vento is a septic tank for single dwellings and small communities. Wastewater flows into the tank, solids settle, and the liquid effluent passes to a percolation area suited to the site \u2014 final treatment happens as it filters through that percolation area, so its size and the ground's absorption rate matter as much as the tank itself. It's certified to EN 12566-1, available from six to twenty-person dwellings as standard, and carries a ten-year warranty.\",\r\n      flag: null, siteNote: siteNote,\r\n      contact: contact,\r\n      quoteLabel: \"Request a Vento quote\"\r\n    };\r\n  }\r\n\r\n  function resultNovo(loc, peBand, siteSpace, overrideFromSeptic) {\r\n    var contact = loc === \"ni\" ? CONTACT.ni : CONTACT.roi;\r\n    var models = loc === \"ni\"\r\n      ? { \"1-6\": \"UK6\", \"7-14\": \"UK8\u2013UK12\", \"15-50\": \"UK18\u2013UK50\" }\r\n      : { \"1-6\": \"IE6 \/ IE6+\", \"7-14\": \"IE8\u2013IE12\", \"15-50\": \"IE18\u2013IE50\" };\r\n    var model = models[peBand] || \"\";\r\n    var flag = null, siteNote = null;\r\n\r\n    if (overrideFromSeptic) {\r\n      flag = (siteSpace === \"poor-percolation\"\r\n        ? \"You mentioned the percolation test, water table, or bedrock is a concern. A septic tank (Tricel Vento) relies on the ground doing the final treatment work, so it isn't the right fit here.\"\r\n        : \"You mentioned space for a percolation area is limited. A septic tank (Tricel Vento) needs a properly sized percolation area to finish treating the effluent, so it isn't the right fit here.\"\r\n      ) + \" Tricel Novo treats wastewater to a higher standard on-site, so the discharge area needed afterwards is smaller and less demanding on the ground.\";\r\n    } else if (siteSpace === \"limited\" || siteSpace === \"poor-percolation\") {\r\n      siteNote = \"Given the site constraints you mentioned, it may be worth pairing Novo with a compact tertiary filter such as Sandcel or TERO to reduce the final discharge area even further \u2014 ask us about this when we follow up.\";\r\n    }\r\n\r\n    return {\r\n      product: \"Tricel Novo\",\r\n      title: \"Tricel Novo \u2014 wastewater treatment plant\" + (model ? \" (\" + model + \")\" : \"\"),\r\n      bestFor: \"Domestic and light commercial applications from 1 to 50 PE, including sites where space for a large percolation area is limited.\",\r\n      why: \"Tricel Novo treats wastewater through three stages \u2014 primary settlement, aeration on fixed filter media, and final settlement \u2014 before discharge. It's certified to EN 12566-3\" + (loc === \"roi\" ? \" and complies with S.R. 66:2015\" : \"\") + \", with typical treated-effluent quality of 11 mg\/l BOD5. Because the tank is compact with a shallow invert and needs no concrete backfill on most sites, it also suits tighter or more awkward plots than a septic tank and percolation area would need.\",\r\n      flag: flag, siteNote: siteNote,\r\n      contact: contact,\r\n      quoteLabel: \"Request a Novo quote\"\r\n    };\r\n  }\r\n\r\n  \/\/ Tricel Vitae T3 is available in NORTHERN IRELAND ONLY, covering\r\n  \/\/ 1 to 14 PE (UK05, UK06, UK10, UK14). Its integrated pumped outlet\r\n  \/\/ makes it the NI route where the percolation test shows poor\r\n  \/\/ drainage, a high water table, or shallow bedrock \u2014 the discharge\r\n  \/\/ doesn't rely on the ground absorbing effluent. The routing below\r\n  \/\/ never calls this function for ROI\/unsure locations, but the guard\r\n  \/\/ makes the constraint impossible to break by accident.\r\n  function resultVitae(loc, peBand, siteSpace) {\r\n    if (loc !== \"ni\") return resultNovo(loc, peBand === \"50+\" ? \"15-50\" : (peBand || \"\"), siteSpace, false);\r\n    var models = { \"1-6\": \"UK05 \/ UK06\", \"7-14\": \"UK10 \/ UK14\" };\r\n    var model = models[peBand] || \"\";\r\n    var flag = null, siteNote = null;\r\n    if (siteSpace === \"poor-percolation\") {\r\n      siteNote = \"You mentioned poor drainage, a high water table, or shallow bedrock. This is exactly where Vitae T3 fits in Northern Ireland: its integrated pumped outlet means the treated-effluent discharge doesn't rely on the ground absorbing it, and can instead be pumped to a suitable discharge point agreed at your site assessment. Where that discharge is to a watercourse, NIEA consent applies \u2014 we'll walk you through this.\";\r\n    } else if (siteSpace === \"limited\") {\r\n      siteNote = \"Vitae T3 is a packaged treatment plant, so \u2014 unlike a septic tank \u2014 it needs a smaller, less demanding discharge arrangement afterwards, and the pumped outlet gives flexibility on where that discharge goes.\";\r\n    }\r\n    if (!peBand) {\r\n      flag = \"Vitae T3 covers 1 to 14 PE. If your confirmed PE comes out above 14, the Tricel Novo range (1 to 50 PE) is the route instead \u2014 we'll confirm this with you.\";\r\n    }\r\n    return {\r\n      product: \"Tricel Vitae T3\",\r\n      title: \"Tricel Vitae T3 \u2014 wastewater treatment plant\" + (model ? \" (\" + model + \")\" : \"\"),\r\n      bestFor: \"Single dwellings and light commercial applications from 1 to 14 PE in Northern Ireland, particularly where the percolation test shows poor drainage or the discharge cannot go to ground.\",\r\n      why: \"Tricel Vitae T3 treats wastewater through three zones \u2014 settlement, aeration, and clarification \u2014 and is certified to EN 12566-3, with over 97.5% BOD5 removal recorded in testing. It's available in four sizes (UK05, UK06, UK10, UK14) covering 1 to 14 people, with a riser option for deeper installations and an integrated pumped outlet on every size \u2014 so treated effluent can be pumped to a suitable discharge point rather than depending on ground percolation, and awkward invert levels are handled too.\",\r\n      flag: flag, siteNote: siteNote,\r\n      contact: CONTACT.ni,\r\n      quoteLabel: \"Request a Vitae T3 quote\"\r\n    };\r\n  }\r\n\r\n  \/\/ Northern Ireland, site conditions not yet known: both packaged-plant\r\n  \/\/ routes are presented together, with the deciding factor stated\r\n  \/\/ plainly \u2014 poor percolation points to Vitae T3 (pumped discharge),\r\n  \/\/ normal percolation points to Novo (discharge to ground).\r\n  function resultVitaeOrNovo(peBand) {\r\n    var flag = null;\r\n    if (!peBand) {\r\n      flag = \"Vitae T3 covers 1 to 14 PE and Novo covers 1 to 50 PE \u2014 once your PE figure is confirmed, we'll narrow the choice down with you.\";\r\n    }\r\n    return {\r\n      product: \"Tricel Vitae T3 \/ Novo\",\r\n      title: \"Tricel Vitae T3 or Tricel Novo \u2014 your percolation test decides\",\r\n      bestFor: \"Dwellings and light commercial projects in Northern Ireland, where the site assessment hasn't been carried out yet.\",\r\n      why: \"Both are packaged wastewater treatment plants certified to EN 12566-3; which one suits your site comes down to the percolation test. Where the test shows normal drainage, Tricel Novo is the standard route \u2014 it treats wastewater to a high standard on-site (typically 11 mg\/l BOD5) and discharges to a compact area of ground. Where the test shows poor drainage, a high water table, or shallow bedrock, Tricel Vitae T3 is the stronger fit: its integrated pumped outlet on every size means the discharge doesn't rely on the ground absorbing it, and can be pumped to a suitable discharge point instead (discharge to a watercourse is subject to NIEA consent).\",\r\n      flag: flag,\r\n      siteNote: \"In short: poor percolation points to Vitae T3; normal percolation points to Novo. Your site assessment confirms which applies \u2014 we can advise on arranging one.\",\r\n      contact: CONTACT.ni,\r\n      quoteLabel: \"Ask about Vitae T3 or Novo\"\r\n    };\r\n  }\r\n\r\n  function resultTertiaryGeneral(loc, siteSpace) {\r\n    var emphasis = \"\";\r\n    if (siteSpace === \"limited\") {\r\n      emphasis = \" Given the limited space you mentioned, Tricel Sandcel is usually the stronger fit: it needs only around 16 m\u00b2 for a 6-person application, specifically to avoid the large percolation area a septic tank would need.\";\r\n    } else if (siteSpace === \"poor-percolation\") {\r\n      emphasis = \" Given the ground conditions you mentioned, an engineered filter bed matters more than usual here \u2014 both Sandcel (compact sand filter) and TERO (reduced discharge depth) are designed for exactly this, but we'd recommend a site assessment before choosing between them.\";\r\n    }\r\n    if (loc === \"ni\") {\r\n      return {\r\n        product: \"tertiary treatment\",\r\n        title: \"Tertiary treatment \u2014 let's confirm the right filter\",\r\n        bestFor: \"Polishing treated effluent from a secondary treatment plant, ahead of discharge.\",\r\n        why: \"In the Republic of Ireland we'd typically point to Tricel Puraflo (a coconut-fibre packaged filter) or Tricel Sandcel (a sand polishing filter designed to the EPA Code of Practice, needing only around 16 m\u00b2 for a 6-person application) here. We currently only hold Ireland-branded brochures for both, so we'll confirm the right Northern Ireland option \u2014 and the applicable NIEA standard \u2014 directly with you.\" + emphasis,\r\n        flag: \"Puraflo and Sandcel availability for Northern Ireland has not been confirmed from our current brochure set. Get in touch and we'll advise on the right tertiary treatment option for your site.\",\r\n        siteNote: null,\r\n        contact: CONTACT.ni,\r\n        quoteLabel: \"Ask about tertiary treatment\"\r\n      };\r\n    }\r\n    return {\r\n      product: \"Puraflo \/ Sandcel\",\r\n      title: \"Tricel Puraflo or Tricel Sandcel \u2014 tertiary treatment\",\r\n      bestFor: \"Polishing treated effluent from a secondary treatment plant, especially where a large percolation area isn't available.\",\r\n      why: \"Two Tricel options commonly suit this need. Tricel Puraflo is a packaged filter using coconut-fibre media, certified to EN 12566-7, needing no de-sludging or backwashing \u2014 and it can be added to an existing septic tank as an upgrade. Tricel Sandcel is a sand polishing filter designed to the EPA Code of Practice, using a compact footprint (around 16 m\u00b2 for a 6-person application) specifically to remove the need for a large percolation area.\" + emphasis,\r\n      flag: null, siteNote: null,\r\n      contact: CONTACT.roi,\r\n      quoteLabel: \"Ask about Puraflo or Sandcel\"\r\n    };\r\n  }\r\n\r\n  function resultTero(loc, siteSpace) {\r\n    var contact = loc === \"ni\" ? CONTACT.niTero : CONTACT.roi;\r\n    var siteNote = (siteSpace === \"limited\" || siteSpace === \"poor-percolation\")\r\n      ? \"This fits well with the site constraints you mentioned \u2014 TERO's improved treatment can reduce the soil depth needed for final discharge to 600 mm, which helps on tighter or more difficult ground.\"\r\n      : null;\r\n    return {\r\n      product: \"Tricel TERO\",\r\n      title: \"Tricel TERO \u2014 tertiary treatment with E. coli reduction\",\r\n      bestFor: \"Tertiary treatment where pathogen (E. coli) reduction is specifically required, especially on sites with limited depth or space for discharge.\",\r\n      why: \"Tricel TERO is designed to work with a Tricel Novo plant, or with third-party secondary treatment where a pumped, dose-limited discharge is used. It's certified to EN 12566-7, with testing showing E. coli treatment below 1,000 cfu per 100 ml \u2014 which can reduce the soil depth needed for final discharge to 600 mm. One module meets requirements for 6 PE, with no de-sludging or electrical power needed.\",\r\n      flag: loc === \"ni\" ? \"For Northern Ireland, TERO enquiries are currently handled by Tricel's UK team (Tricel Weston) rather than our usual NI partner \u2014 we'll make sure your enquiry reaches the right team.\" : null,\r\n      siteNote: siteNote,\r\n      contact: contact,\r\n      quoteLabel: \"Ask about TERO\"\r\n    };\r\n  }\r\n\r\n  function resultMaxus(loc, siteSpace) {\r\n    var siteNote = (siteSpace === \"limited\" || siteSpace === \"poor-percolation\")\r\n      ? \"Maxus is engineered per project, with flexible installation configurations available for constrained or difficult sites \u2014 worth raising your space constraints when we follow up.\"\r\n      : null;\r\n    if (loc === \"ni\" || loc === \"unsure\") {\r\n      return {\r\n        product: \"Tricel Maxus\",\r\n        title: \"Tricel Maxus \u2014 likely route, availability to confirm\",\r\n        bestFor: \"Commercial and semi-collective applications above 50 PE \u2014 housing estates, hotels, restaurants, campsites, schools, and factories.\",\r\n        why: \"Tricel Maxus uses Submerged Aerated Filter (SAF) technology across settlement, buffer, biological treatment, and clarification stages, individually sized for each project from 66 PE upward. Tricel Maxus Combi offers the same technology as an all-in-one, in-ground unit. We currently hold Ireland-branded brochures only, so we'll confirm Northern Ireland availability and the right contact route directly with you.\",\r\n        flag: \"Maxus and Maxus Combi availability for Northern Ireland has not been confirmed from our current brochure set. Get in touch and we'll confirm the right route for a project of this size.\",\r\n        siteNote: siteNote,\r\n        contact: CONTACT.roi,\r\n        quoteLabel: \"Request a Maxus consultation\"\r\n      };\r\n    }\r\n    return {\r\n      product: \"Tricel Maxus\",\r\n      title: \"Tricel Maxus \u2014 treatment systems for 50+ PE\",\r\n      bestFor: \"Commercial and semi-collective applications above 50 PE \u2014 housing estates, hotels, restaurants, campsites, schools, and factories.\",\r\n      why: \"Tricel Maxus uses Submerged Aerated Filter (SAF) technology across settlement, buffer, biological treatment, and clarification stages, individually sized for every project above 50 PE. Tricel Maxus Combi offers the same technology as an all-in-one, in-ground unit supplied as a single tank with an integrated control panel. Both are engineered on a project-by-project basis, with flexible installation options for difficult or space-constrained sites.\",\r\n      flag: null, siteNote: siteNote,\r\n      contact: CONTACT.roi,\r\n      quoteLabel: \"Request a Maxus consultation\"\r\n    };\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Decision logic \u2014 specification Section 4's product matrix, adjusted\r\n  \/\/ by site conditions per the \"SITE-CONDITION LOGIC\" block above.\r\n  \/\/\r\n  \/\/ \"I don't know\" answers are resolved by the same logic, not sent\r\n  \/\/ straight to a consultation:\r\n  \/\/  - Limited space or poor percolation always leads to a treatment\r\n  \/\/    plant (a septic tank depends on ground percolation that isn't\r\n  \/\/    available). In NI, poor percolation specifically leads to Vitae\r\n  \/\/    T3 (pumped discharge); limited space leads to Novo.\r\n  \/\/  - The septic-tank route keeps its override: septic choice +\r\n  \/\/    constrained site = treatment plant (Vitae T3 in NI where poor\r\n  \/\/    percolation was reported, otherwise Novo).\r\n  \/\/  - A known PE with an unknown treatment type defaults to the\r\n  \/\/    treatment-plant route, resolved by the NI site-condition rule\r\n  \/\/    where applicable.\r\n  \/\/  - Only when nothing given points anywhere (treatment, PE, and site\r\n  \/\/    all unknown) does the tool ask for a consultation.\r\n  \/\/ ---------------------------------------------------------------------\r\n  function prependNote(res, text) {\r\n    res.siteNote = text + (res.siteNote ? \" \" + res.siteNote : \"\");\r\n    return res;\r\n  }\r\n\r\n  function computeResult() {\r\n    var loc = state.location;\r\n    var pe = state.peBand;\r\n    var treatment = state.treatment;\r\n    var siteSpace = state.siteSpace;\r\n    var siteConstrained = (siteSpace === \"limited\" || siteSpace === \"poor-percolation\");\r\n    var peKnown = (pe === \"1-6\" || pe === \"7-14\" || pe === \"15-50\");\r\n\r\n    \/\/ NI treatment-plant router \u2014 Vitae T3 vs Novo on site conditions:\r\n    \/\/   poor percolation \/ poor drainage \/ high water table -> Vitae T3\r\n    \/\/   normal percolation (\"ample\"), or space-only limits  -> Novo\r\n    \/\/   site conditions not yet known                       -> both\r\n    \/\/ Vitae T3 covers 1-14 PE, so 15-50 PE always resolves to Novo.\r\n    \/\/ peBand may be \"\" (unknown); the result functions handle that.\r\n    function niPlant(peBand) {\r\n      if (peBand === \"15-50\") {\r\n        var res = resultNovo(\"ni\", peBand, siteSpace, false);\r\n        if (siteSpace === \"poor-percolation\") {\r\n          res = prependNote(res, \"In Northern Ireland, Vitae T3 with its pumped outlet would normally be the route where percolation is poor \u2014 but it covers up to 14 PE. At this size, Novo is the right plant, with the discharge arrangement designed around your percolation results at site assessment.\");\r\n        }\r\n        return res;\r\n      }\r\n      if (siteSpace === \"poor-percolation\") return resultVitae(\"ni\", peBand, siteSpace);\r\n      if (siteSpace === \"unsure\") return resultVitaeOrNovo(peBand);\r\n      \/\/ \"ample\" (normal percolation) or \"limited\" (space constraint)\r\n      var novo = resultNovo(\"ni\", peBand, siteSpace, false);\r\n      if (!peBand) {\r\n        novo = prependNote(novo, \"You weren't sure of the PE figure \u2014 the Novo range covers 1 to 50 PE, so the product route holds; the exact model is sized once the PE is confirmed.\");\r\n      }\r\n      return novo;\r\n    }\r\n\r\n    if (state.propertyType === \"large-commercial\" || pe === \"50+\") {\r\n      return resultMaxus(loc, siteSpace);\r\n    }\r\n\r\n    if (treatment === \"unsure\") {\r\n      if (siteConstrained) {\r\n        var constrainedNote = \"You weren't sure which treatment type you need, but the site conditions you described point clearly one way: with \" + (siteSpace === \"poor-percolation\" ? \"poor percolation, a high water table, or shallow bedrock\" : \"limited space for a percolation area\") + \", a septic tank isn't suitable, so a packaged treatment plant is the logical route.\";\r\n        if (loc === \"ni\") {\r\n          return prependNote(niPlant(peKnown ? pe : \"\"), constrainedNote);\r\n        }\r\n        return prependNote(resultNovo(loc, peKnown ? pe : \"\", siteSpace, false), constrainedNote);\r\n      }\r\n      if (peKnown) {\r\n        var unsureRes = (loc === \"ni\")\r\n          ? niPlant(pe)\r\n          : resultNovo(loc, pe, siteSpace, false);\r\n        return prependNote(unsureRes,\r\n          \"You weren't sure which treatment type you need. For the number of people you indicated, a packaged treatment plant is the standard route \u2014 your site assessor will confirm the exact requirement for your site and local authority.\"\r\n        );\r\n      }\r\n      \/\/ Nothing given points anywhere: treatment, PE, and site all unknown.\r\n      return resultConsultation();\r\n    }\r\n\r\n    switch (treatment) {\r\n      case \"septic\":\r\n        \/\/ Site-condition override: a septic tank alone isn't recommended\r\n        \/\/ where there's no room for, or no confidence in, a percolation\r\n        \/\/ area. In NI, poor percolation routes to Vitae T3 (pumped\r\n        \/\/ discharge); limited space, and all ROI cases, route to Novo.\r\n        if (siteConstrained) {\r\n          if (loc === \"ni\" && siteSpace === \"poor-percolation\" && pe !== \"15-50\") {\r\n            var v = resultVitae(\"ni\", peKnown ? pe : \"\", siteSpace);\r\n            var overrideText = \"You mentioned the percolation test, water table, or bedrock is a concern. A septic tank (Tricel Vento) relies on the ground doing the final treatment work, so it isn't the right fit here. Tricel Vitae T3 treats wastewater to a certified standard on-site, and its integrated pumped outlet means the discharge doesn't depend on the ground absorbing it.\";\r\n            v.flag = overrideText + (v.flag ? \" \" + v.flag : \"\");\r\n            return v;\r\n          }\r\n          return resultNovo(loc, pe === \"50+\" ? \"15-50\" : (peKnown ? pe : \"\"), siteSpace, true);\r\n        }\r\n        return resultVento(loc, siteSpace);\r\n      case \"secondary\":\r\n        \/\/ NI: Vitae T3 vs Novo is decided by site conditions (see\r\n        \/\/ niPlant). ROI and unsure locations: Novo covers 1-50 PE.\r\n        if (loc === \"ni\") return niPlant(peKnown ? pe : \"\");\r\n        if (peKnown) return resultNovo(loc, pe, siteSpace, false);\r\n        \/\/ PE unknown, but the treatment type is: the Novo range covers\r\n        \/\/ 1-50 PE, so recommend the route and size it at assessment.\r\n        return prependNote(resultNovo(loc, \"\", siteSpace, false),\r\n          \"You weren't sure of the PE figure \u2014 the Novo range covers 1 to 50 PE, so the product route holds; the exact model is sized once the PE is confirmed.\"\r\n        );\r\n      case \"tertiary\":\r\n        return resultTertiaryGeneral(loc, siteSpace);\r\n      case \"tertiary-ecoli\":\r\n        return resultTero(loc, siteSpace);\r\n      case \"replacement\":\r\n        \/\/ Replacing a failing septic tank is often driven by exactly the\r\n        \/\/ ground conditions that decide the NI Vitae\/Novo split, so the\r\n        \/\/ same router applies. ROI replaces with Novo.\r\n        if (loc === \"ni\") return niPlant(peKnown ? pe : \"\");\r\n        if (peKnown) return resultNovo(loc, pe, siteSpace, false);\r\n        return prependNote(resultNovo(loc, \"\", siteSpace, false),\r\n          \"You weren't sure of the PE figure \u2014 the Novo range covers 1 to 50 PE, so the product route holds; the exact model is sized once the PE is confirmed.\"\r\n        );\r\n      default:\r\n        return resultConsultation();\r\n    }\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Question configuration\r\n  \/\/ ---------------------------------------------------------------------\r\n  var LOCATION_OPTIONS = [\r\n    { value: \"roi\", label: \"Republic of Ireland\" },\r\n    { value: \"ni\", label: \"Northern Ireland\" },\r\n    { value: \"unsure\", label: \"Not sure\" }\r\n  ];\r\n\r\n  var PROPERTY_OPTIONS = [\r\n    { value: \"main-residence\", label: \"Main residence\" },\r\n    { value: \"holiday-home\", label: \"Secondary residence or holiday home\" },\r\n    { value: \"single-dwelling\", label: \"One-off house \/ single dwelling (new build)\" },\r\n    { value: \"small-community\", label: \"Group of houses \/ small community\" },\r\n    { value: \"commercial-semi\", label: \"Commercial or semi-collective project\", sub: \"Hotel, restaurant, campsite, school, factory, retail\" },\r\n    { value: \"large-commercial\", label: \"Large commercial \/ collective project\", sub: \"Over 50 PE\" },\r\n    { value: \"replacement\", label: \"Replacing an existing septic tank or system\" },\r\n    { value: \"not-sure-type\", label: \"Not sure\" }\r\n  ];\r\n\r\n  var USAGE_DOMESTIC = [\r\n    { value: \"permanent\", label: \"Permanent, year-round use\" },\r\n    { value: \"seasonal\", label: \"Occasional or seasonal use\" },\r\n    { value: \"new-build\", label: \"New build\" },\r\n    { value: \"replacement\", label: \"Replacement of an existing system\" },\r\n    { value: \"upgrade\", label: \"Upgrade following a site assessment or compliance issue\" },\r\n    { value: \"unsure\", label: \"Not sure\" }\r\n  ];\r\n\r\n  var USAGE_COMMERCIAL = [\r\n    { value: \"housing-estate\", label: \"Housing estate\" },\r\n    { value: \"hotel\", label: \"Hotel or guesthouse\" },\r\n    { value: \"restaurant\", label: \"Restaurant or caf\u00e9\" },\r\n    { value: \"campsite\", label: \"Campsite or caravan park\" },\r\n    { value: \"school\", label: \"School or childcare facility\" },\r\n    { value: \"factory\", label: \"Factory or workplace\" },\r\n    { value: \"retail\", label: \"Retail or commercial unit\" },\r\n    { value: \"other\", label: \"Other\" }\r\n  ];\r\n\r\n  var PE_OPTIONS = [\r\n    { value: \"1-6\", label: \"1\u20136 PE\", sub: \"Roughly a 1 to 4-bedroom home\" },\r\n    { value: \"7-14\", label: \"7\u201314 PE\", sub: \"Roughly a 4 to 6-bedroom home, or light commercial\" },\r\n    { value: \"15-50\", label: \"15\u201350 PE\", sub: \"Small community, campsite, or hotel\" },\r\n    { value: \"50+\", label: \"Over 50 PE\", sub: \"Housing estate or larger commercial site\" },\r\n    { value: \"unsure\", label: \"Not sure\", sub: \"We'll help you work this out\" }\r\n  ];\r\n\r\n  var SITE_OPTIONS = [\r\n    { value: \"ample\", label: \"Plenty of space for a percolation area, and the ground drains well\" },\r\n    { value: \"limited\", label: \"Limited space for a percolation or soakaway area\" },\r\n    { value: \"poor-percolation\", label: \"Percolation test shows poor drainage, a high water table, or shallow bedrock\" },\r\n    { value: \"unsure\", label: \"Not sure \/ site assessment not yet carried out\" }\r\n  ];\r\n\r\n  var TREATMENT_OPTIONS = [\r\n    { value: \"septic\", label: \"Septic tank only\" },\r\n    { value: \"secondary\", label: \"Secondary treatment plant\" },\r\n    { value: \"tertiary\", label: \"Tertiary treatment or polishing filter\" },\r\n    { value: \"tertiary-ecoli\", label: \"Tertiary treatment with E. coli reduction\" },\r\n    { value: \"replacement\", label: \"Replacement for an old septic tank\" },\r\n    { value: \"unsure\", label: \"I don't know\" }\r\n  ];\r\n\r\n  var TOTAL_STEPS = 6;\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Rendering\r\n  \/\/ ---------------------------------------------------------------------\r\n  function esc(s) { var d = document.createElement(\"div\"); d.textContent = s; return d.innerHTML; }\r\n\r\n  \/\/ -----------------------------------------------------------------\r\n  \/\/ Keeping the viewport anchored to the widget. Screens have different\r\n  \/\/ heights, so when one is swapped for a shorter one (e.g. pressing\r\n  \/\/ \"Start over\" from the result, or moving on from the PE step with\r\n  \/\/ the estimator open), the page content below shifts up and the\r\n  \/\/ browser's scroll position ends up past the widget \u2014 it looks like\r\n  \/\/ the page \"drops down\". After every screen change we scroll the\r\n  \/\/ widget's top back into view. Guarded by a user-interaction flag so\r\n  \/\/ the page never auto-scrolls on initial load.\r\n  \/\/ -----------------------------------------------------------------\r\n  var userHasInteracted = false;\r\n\r\n  \/\/ Hard jump to the selector's anchor (#wastewater-product-selector).\r\n  \/\/ Instant (non-smooth) so it cannot be cancelled by subsequent layout\r\n  \/\/ work, and repeated once after layout settles.\r\n  function hardJumpToSelector() {\r\n    function jump() {\r\n      try {\r\n        var anchor = document.getElementById(\"wastewater-product-selector\") || document.getElementById(\"tricel-ww-selector\");\r\n        if (!anchor) return;\r\n        var y = anchor.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || 0);\r\n        window.scrollTo(0, Math.max(0, y));\r\n      } catch (e) { \/* no-op *\/ }\r\n    }\r\n    jump();\r\n    setTimeout(jump, 120);\r\n    setTimeout(jump, 350);\r\n    try {\r\n      if (window.history && window.history.replaceState) {\r\n        window.history.replaceState(null, \"\", \"#wastewater-product-selector\");\r\n      }\r\n    } catch (e) { \/* no-op *\/ }\r\n  }\r\n\r\n  function keepWidgetInView(force) {\r\n    if (!userHasInteracted) return;\r\n    try {\r\n      var root = document.getElementById(\"tricel-ww-selector\");\r\n      if (!root || !root.getBoundingClientRect) return;\r\n      var top = root.getBoundingClientRect().top;\r\n      \/\/ Re-anchor if forced, or if the widget's top has scrolled out of\r\n      \/\/ view above, or sits well below the fold after a layout shift.\r\n      if (force || top < 0 || top > (window.innerHeight || 800) * 0.6) {\r\n        if (root.scrollIntoView) root.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n      }\r\n    } catch (e) { \/* no-op *\/ }\r\n  }\r\n\r\n  function updatePipeline(stepIndex) {\r\n    \/\/ Landing (step 0) uses the dark translucent panel; all other\r\n    \/\/ screens are white.\r\n    var root = document.getElementById(\"tricel-ww-selector\");\r\n    if (root) root.classList.toggle(\"tww-landing\", stepIndex <= 0);\r\n    \/\/ Screens call updatePipeline before swapping their content in, so\r\n    \/\/ re-anchor on the next frame, after the new layout has been applied.\r\n    setTimeout(keepWidgetInView, 30);\r\n    if (stepIndex <= 0) { pipeline.classList.add(\"tww-hidden\"); return; }\r\n    pipeline.classList.remove(\"tww-hidden\");\r\n    var pct = Math.min(100, (stepIndex - 1) \/ TOTAL_STEPS * 100 + 10);\r\n    pipelineFill.style.width = pct + \"%\";\r\n    var labels = pipelineLabels.querySelectorAll(\"span\");\r\n    labels.forEach(function (el) {\r\n      var s = parseInt(el.getAttribute(\"data-step\"), 10);\r\n      el.classList.toggle(\"is-done\", s < stepIndex);\r\n      el.classList.toggle(\"is-active\", s === stepIndex);\r\n    });\r\n  }\r\n\r\n  function renderLanding() {\r\n    updatePipeline(0);\r\n    screen.innerHTML =\r\n      '<div class=\"tww-fade-in\">' +\r\n        '<span class=\"tww-landing-eyebrow\">Wastewater product selector<\/span>' +\r\n        '<h2>Find the right wastewater treatment system for your project<\/h2>' +\r\n        '<p>Answer a few questions about your project location, property, treatment requirements, and site conditions. We\\'ll suggest the Tricel wastewater product route that may suit your needs \u2014 final selection is always confirmed through site assessment and project-specific design.<\/p>' +\r\n        '<div class=\"tww-landing-visual\" aria-hidden=\"true\">' +\r\n          '<div class=\"tww-drop\">' + iconDrop() + 'Property<\/div>' +\r\n          '<div class=\"tww-arrow\">&#8594;<\/div>' +\r\n          '<div class=\"tww-drop\">' + iconTank() + 'Treatment<\/div>' +\r\n          '<div class=\"tww-arrow\">&#8594;<\/div>' +\r\n          '<div class=\"tww-drop\">' + iconLeaf() + 'Discharge<\/div>' +\r\n        '<\/div>' +\r\n        '<button type=\"button\" class=\"tww-btn tww-btn-primary tww-btn-block\" data-action=\"start\">Start product selector<\/button>' +\r\n      '<\/div>';\r\n    bindLanding();\r\n  }\r\n\r\n  function iconDrop() { return '<svg width=\"26\" height=\"26\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\"><path d=\"M12 2s7 8 7 12.5A7 7 0 0 1 5 14.5C5 10 12 2 12 2Z\"\/><\/svg>'; }\r\n  function iconTank() { return '<svg width=\"26\" height=\"26\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\"><rect x=\"3\" y=\"8\" width=\"18\" height=\"10\" rx=\"3\"\/><path d=\"M8 8V6a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\"\/><\/svg>'; }\r\n  function iconLeaf() { return '<svg width=\"26\" height=\"26\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\"><path d=\"M20 4c-8 0-16 4-16 14 10 0 14-6 14-14Z\"\/><path d=\"M5 19 12 12\"\/><\/svg>'; }\r\n\r\n  function renderOptionsStep(opts) {\r\n    updatePipeline(opts.stepIndex);\r\n    var html = '<div class=\"tww-fade-in\">';\r\n    html += '<div class=\"tww-step-head\">';\r\n    html += '<div><h2>' + esc(opts.title) + '<\/h2>' + (opts.subtitle ? '<p>' + esc(opts.subtitle) + '<\/p>' : '') + '<\/div>';\r\n    if (opts.showBack) html += '<button type=\"button\" class=\"tww-btn tww-btn-ghost tww-back\" data-action=\"back\">&#8592; Back<\/button>';\r\n    html += '<\/div>';\r\n    html += '<div class=\"tww-options\" role=\"group\" aria-label=\"' + esc(opts.title) + '\">';\r\n    opts.options.forEach(function (o) {\r\n      html += '<button type=\"button\" class=\"tww-option\" data-value=\"' + esc(o.value) + '\">' +\r\n        '<span><span>' + esc(o.label) + '<\/span>' + (o.sub ? '<span class=\"tww-option-sub\">' + esc(o.sub) + '<\/span>' : '') + '<\/span>' +\r\n        '<span class=\"tww-option-chevron\" aria-hidden=\"true\">&#8594;<\/span>' +\r\n      '<\/button>';\r\n    });\r\n    html += '<\/div>';\r\n    if (opts.notSureLabel) {\r\n      html += '<div class=\"tww-notsure-row\"><button type=\"button\" class=\"tww-btn tww-btn-ghost\" data-action=\"jump-consult\">' + esc(opts.notSureLabel) + '<\/button><\/div>';\r\n    }\r\n    if (opts.extraHtml) html += opts.extraHtml;\r\n    html += '<\/div>';\r\n    screen.innerHTML = html;\r\n\r\n    var buttons = screen.querySelectorAll(\".tww-option\");\r\n    buttons.forEach(function (btn) {\r\n      btn.addEventListener(\"click\", function () { opts.onSelect(btn.getAttribute(\"data-value\"), btn.textContent.trim()); });\r\n    });\r\n    var back = screen.querySelector('[data-action=\"back\"]');\r\n    if (back) back.addEventListener(\"click\", opts.onBack);\r\n    var jump = screen.querySelector('[data-action=\"jump-consult\"]');\r\n    if (jump) jump.addEventListener(\"click\", function () { goToConsultation(); });\r\n    if (opts.afterRender) opts.afterRender();\r\n  }\r\n\r\n  function goToConsultation() {\r\n    state.treatment = \"unsure\";\r\n    state.result = resultConsultation();\r\n    trackEvent(\"wastewater_selector_result_view\", resultTrackingParams());\r\n    renderResult();\r\n  }\r\n\r\n  function renderStepLocation() {\r\n    renderOptionsStep({\r\n      stepIndex: 1,\r\n      title: \"Where is the project located?\",\r\n      subtitle: \"This tells us which product range, standards, and contact details apply.\",\r\n      options: LOCATION_OPTIONS,\r\n      showBack: false,\r\n      onSelect: function (value) {\r\n        state.location = value;\r\n        trackEvent(\"wastewater_selector_step_complete\", { step: 1, project_location: value });\r\n        renderStepProperty();\r\n      },\r\n      onBack: function () {}\r\n    });\r\n  }\r\n\r\n  function renderStepProperty() {\r\n    renderOptionsStep({\r\n      stepIndex: 2,\r\n      title: \"What type of property or project is this?\",\r\n      options: PROPERTY_OPTIONS,\r\n      showBack: true,\r\n      notSureLabel: \"Not sure yet \u2014 talk to an expert instead\",\r\n      onSelect: function (value) {\r\n        state.propertyType = value;\r\n        state.propertyTypeLabel = PROPERTY_OPTIONS.filter(function (o) { return o.value === value; })[0].label;\r\n        trackEvent(\"wastewater_selector_step_complete\", { step: 2, project_type: value });\r\n        renderStepUsage();\r\n      },\r\n      onBack: renderStepLocation\r\n    });\r\n  }\r\n\r\n  function renderStepUsage() {\r\n    var isCommercial = COMMERCIAL_TYPES.indexOf(state.propertyType) !== -1;\r\n    var options = isCommercial ? USAGE_COMMERCIAL : USAGE_DOMESTIC;\r\n    renderOptionsStep({\r\n      stepIndex: 3,\r\n      title: \"What is the expected usage?\",\r\n      options: options,\r\n      showBack: true,\r\n      notSureLabel: \"Not sure \u2014 talk to an expert instead\",\r\n      onSelect: function (value) {\r\n        state.usage = value;\r\n        state.usageLabel = options.filter(function (o) { return o.value === value; })[0].label;\r\n        trackEvent(\"wastewater_selector_step_complete\", { step: 3, usage: value });\r\n        renderStepPE();\r\n      },\r\n      onBack: renderStepProperty\r\n    });\r\n  }\r\n\r\n  \/\/ -----------------------------------------------------------------\r\n  \/\/ PE estimator \u2014 indicative figures only, always to be confirmed by\r\n  \/\/ a site assessor. Formulae:\r\n  \/\/   House: bedrooms + 1 (minimum standard of 3 PE in Ireland\/UK)\r\n  \/\/   Commercial (offices, retail): 3 PE per 100 m2 gross floor area\r\n  \/\/   Schools: 0.2 PE per day student, 1 PE per residential student\r\n  \/\/   Hotels with laundry & dining: 4 PE per room\r\n  \/\/   Campsite \/ caravan park: 4 PE per pitch\r\n  \/\/   Petrol kiosks \/ public toilets: 15 PE per toilet\r\n  \/\/   Place of worship: 0.2 PE per person (maximum capacity)\r\n  \/\/ -----------------------------------------------------------------\r\n  var PE_CALC_TYPES = {\r\n    \"house\":      { label: \"House \/ dwelling\", inputs: [{ id: \"a\", label: \"Number of bedrooms\" }],\r\n                    calc: function (a) { return Math.max(Math.ceil(a) + 1, 3); },\r\n                    note: \"Bedrooms + 1, with a minimum standard of 3 PE in Ireland and the UK.\" },\r\n    \"commercial\": { label: \"Commercial (offices, retail)\", inputs: [{ id: \"a\", label: \"Gross floor area (m\\u00B2)\" }],\r\n                    calc: function (a) { return Math.ceil(a \/ 100 * 3); },\r\n                    note: \"3 PE per 100 m\\u00B2 of gross floor area.\" },\r\n    \"school\":     { label: \"School \/ education\", inputs: [\r\n                      { id: \"a\", label: \"Day students\", optional: true },\r\n                      { id: \"b\", label: \"Residential students (leave blank if none)\", optional: true }\r\n                    ],\r\n                    calc: function (a, b) { return Math.ceil(a * 0.2 + b); },\r\n                    note: \"0.2 PE per day student, 1 PE per residential student.\" },\r\n    \"hotel\":      { label: \"Hotel with laundry & dining\", inputs: [{ id: \"a\", label: \"Number of rooms\" }],\r\n                    calc: function (a) { return Math.ceil(a) * 4; },\r\n                    note: \"4 PE per room.\" },\r\n    \"campsite\":   { label: \"Campsite \/ caravan park\", inputs: [{ id: \"a\", label: \"Number of pitches\" }],\r\n                    calc: function (a) { return Math.ceil(a) * 4; },\r\n                    note: \"4 PE per pitch.\" },\r\n    \"toilets\":    { label: \"Petrol kiosk \/ public toilets\", inputs: [{ id: \"a\", label: \"Number of toilets\" }],\r\n                    calc: function (a) { return Math.ceil(a) * 15; },\r\n                    note: \"15 PE per toilet.\" },\r\n    \"worship\":    { label: \"Place of worship\", inputs: [{ id: \"a\", label: \"Maximum capacity (people)\" }],\r\n                    calc: function (a) { return Math.ceil(a * 0.2); },\r\n                    note: \"0.2 PE per person at maximum capacity.\" }\r\n  };\r\n\r\n  function peBandFromNumber(n) {\r\n    if (n <= 6) return \"1-6\";\r\n    if (n <= 14) return \"7-14\";\r\n    if (n <= 50) return \"15-50\";\r\n    return \"50+\";\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Step 4 \u2014 PE band selection.\r\n  \/\/ The estimator no longer expands inline here. \"Not sure? Estimate your\r\n  \/\/ PE\" (and the \"Not sure\" band option) advance to renderStepPEEstimator,\r\n  \/\/ a dedicated screen, so this question stays short.\r\n  \/\/ ---------------------------------------------------------------------\r\n  function renderStepPE() {\r\n    renderOptionsStep({\r\n      stepIndex: 4,\r\n      title: \"How many people will the system serve?\",\r\n      subtitle: \"Choose the closest Population Equivalent (PE) band \\u2014 this is the standard measure used to size wastewater systems.\",\r\n      options: PE_OPTIONS,\r\n      showBack: true,\r\n      extraHtml: '<div class=\"tww-notsure-row\"><button type=\"button\" class=\"tww-btn tww-btn-ghost\" data-action=\"open-pe-calc\">Not sure? Estimate your PE<\/button><\/div>',\r\n      onSelect: function (value) {\r\n        if (value === \"unsure\") {\r\n          \/\/ Route to the dedicated estimator screen rather than bailing\r\n          \/\/ out to a consultation.\r\n          renderStepPEEstimator();\r\n          return;\r\n        }\r\n        state.peBand = value;\r\n        state.peBandLabel = PE_OPTIONS.filter(function (o) { return o.value === value; })[0].label;\r\n        trackEvent(\"wastewater_selector_step_complete\", { step: 4, population_equivalent: value });\r\n        renderStepSite();\r\n      },\r\n      onBack: renderStepUsage,\r\n      afterRender: function () {\r\n        var open = screen.querySelector('[data-action=\"open-pe-calc\"]');\r\n        if (open) open.addEventListener(\"click\", function () { renderStepPEEstimator(); });\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Step 4 (estimator screen) \u2014 its own screen, reached from the PE band\r\n  \/\/ question. Still part of the \"Size\" step in the pipeline. Back returns\r\n  \/\/ to the PE band question; \"Use this estimate\" or \"Skip\" both continue\r\n  \/\/ to the site step.\r\n  \/\/ ---------------------------------------------------------------------\r\n  function renderStepPEEstimator() {\r\n    updatePipeline(4);\r\n    var typeOptions = Object.keys(PE_CALC_TYPES).map(function (k) {\r\n      return '<option value=\"' + k + '\">' + esc(PE_CALC_TYPES[k].label) + '<\/option>';\r\n    }).join(\"\");\r\n\r\n    var html = '<div class=\"tww-fade-in\">';\r\n    html += '<div class=\"tww-step-head\"><div>' +\r\n      '<h2>Estimate your PE<\/h2>' +\r\n      '<p>Tell us what the system will serve and we\\'ll estimate the Population Equivalent. This figure is indicative only and needs to be confirmed by a site assessor.<\/p>' +\r\n      '<\/div><button type=\"button\" class=\"tww-btn tww-btn-ghost tww-back\" data-action=\"back-to-pe\">&#8592; Back<\/button><\/div>';\r\n    html += '<div class=\"tww-pe-calc\">' +\r\n        '<h3>PE estimator<\/h3>' +\r\n        '<div class=\"tww-field\"><label for=\"tww-pe-type\">What is being served?<\/label>' +\r\n          '<select id=\"tww-pe-type\">' + typeOptions + '<\/select><\/div>' +\r\n        '<div id=\"tww-pe-inputs\"><\/div>' +\r\n        '<p id=\"tww-pe-formula-note\"><\/p>' +\r\n        '<button type=\"button\" class=\"tww-btn tww-btn-secondary\" data-action=\"pe-estimate\">Estimate PE<\/button>' +\r\n        '<div id=\"tww-pe-error\" class=\"tww-flag tww-hidden\" style=\"margin-top:12px;\"><\/div>' +\r\n        '<div id=\"tww-pe-result\" class=\"tww-hidden\">' +\r\n          '<p style=\"margin-top:12px;\"><strong id=\"tww-pe-figure\"><\/strong><\/p>' +\r\n          '<p>This figure is indicative only and needs to be confirmed by a site assessor.<\/p>' +\r\n          '<button type=\"button\" class=\"tww-btn tww-btn-primary\" data-action=\"pe-use\">Use this estimate and continue<\/button>' +\r\n        '<\/div>' +\r\n        '<div class=\"tww-notsure-row\"><button type=\"button\" class=\"tww-btn tww-btn-ghost\" data-action=\"pe-skip\">Skip \\u2014 continue without a PE figure<\/button><\/div>' +\r\n      '<\/div>';\r\n    html += '<\/div>';\r\n    screen.innerHTML = html;\r\n\r\n    var back = screen.querySelector('[data-action=\"back-to-pe\"]');\r\n    if (back) back.addEventListener(\"click\", renderStepPE);\r\n    bindPeCalculator();\r\n  }\r\n\r\n  function bindPeCalculator() {\r\n    var typeSel = document.getElementById(\"tww-pe-type\");\r\n    var inputsDiv = document.getElementById(\"tww-pe-inputs\");\r\n    var noteP = document.getElementById(\"tww-pe-formula-note\");\r\n    var resultDiv = document.getElementById(\"tww-pe-result\");\r\n    var figureEl = document.getElementById(\"tww-pe-figure\");\r\n    var errorEl = document.getElementById(\"tww-pe-error\");\r\n    var estimated = null;\r\n\r\n    function renderInputs() {\r\n      var t = PE_CALC_TYPES[typeSel.value];\r\n      inputsDiv.innerHTML = t.inputs.map(function (inp) {\r\n        return '<div class=\"tww-field\"><label for=\"tww-pe-in-' + inp.id + '\">' + esc(inp.label) + '<\/label>' +\r\n          '<input type=\"number\" min=\"0\" step=\"' + (inp.step || \"1\") + '\" id=\"tww-pe-in-' + inp.id + '\" inputmode=\"numeric\"' +\r\n          (inp.placeholder ? ' placeholder=\"' + esc(inp.placeholder) + '\"' : '') + '><\/div>';\r\n      }).join(\"\");\r\n      noteP.textContent = \"Guide: \" + t.note;\r\n      resultDiv.classList.add(\"tww-hidden\");\r\n      errorEl.classList.add(\"tww-hidden\");\r\n      estimated = null;\r\n    }\r\n\r\n    typeSel.addEventListener(\"change\", renderInputs);\r\n    renderInputs();\r\n\r\n    screen.querySelector('[data-action=\"pe-estimate\"]').addEventListener(\"click\", function () {\r\n      var t = PE_CALC_TYPES[typeSel.value];\r\n      errorEl.classList.add(\"tww-hidden\");\r\n      resultDiv.classList.add(\"tww-hidden\");\r\n\r\n      \/\/ Validate each field individually so a missing figure is named,\r\n      \/\/ rather than producing a silent zero. Fields flagged \"optional\"\r\n      \/\/ (e.g. a school's residential students) may be left blank and are\r\n      \/\/ treated as zero; the final total is still checked below.\r\n      var values = [];\r\n      var missing = null;\r\n      for (var i = 0; i < t.inputs.length; i++) {\r\n        var inp = t.inputs[i];\r\n        var raw = document.getElementById(\"tww-pe-in-\" + inp.id).value;\r\n        if (raw === \"\" || raw === null) {\r\n          if (inp.optional) { values.push(0); continue; }\r\n          missing = inp.label; break;\r\n        }\r\n        var v = parseFloat(raw);\r\n        if (isNaN(v) || v < 0) { missing = inp.label; break; }\r\n        if (!inp.optional && v <= 0) { missing = inp.label; break; }\r\n        values.push(v);\r\n      }\r\n      if (missing) {\r\n        errorEl.innerHTML = '<strong>Please enter a figure for \\u201C' + esc(missing) + '\\u201D.<\/strong>';\r\n        errorEl.classList.remove(\"tww-hidden\");\r\n        estimated = null;\r\n        return;\r\n      }\r\n\r\n      var pe = t.calc.apply(null, values);\r\n      if (!pe || pe <= 0) {\r\n        errorEl.innerHTML = '<strong>Please check the figures entered above.<\/strong>';\r\n        errorEl.classList.remove(\"tww-hidden\");\r\n        estimated = null;\r\n        return;\r\n      }\r\n\r\n      estimated = pe;\r\n      var band = peBandFromNumber(pe);\r\n      var bandLabel = PE_OPTIONS.filter(function (o) { return o.value === band; })[0].label;\r\n      figureEl.textContent = \"Estimated: \" + pe + \" PE (\" + bandLabel + \" band)\";\r\n      resultDiv.classList.remove(\"tww-hidden\");\r\n      trackEvent(\"wastewater_selector_pe_estimate\", { pe_type: typeSel.value, pe_value: pe });\r\n    });\r\n\r\n    screen.querySelector('[data-action=\"pe-use\"]').addEventListener(\"click\", function () {\r\n      if (!estimated) return;\r\n      var band = peBandFromNumber(estimated);\r\n      state.peBand = band;\r\n      state.peBandLabel = PE_OPTIONS.filter(function (o) { return o.value === band; })[0].label + \" (est. \" + estimated + \" PE \\u2014 to be confirmed by a site assessor)\";\r\n      trackEvent(\"wastewater_selector_step_complete\", { step: 4, population_equivalent: band, pe_estimated: estimated });\r\n      renderStepSite();\r\n      hardJumpToSelector();\r\n    });\r\n\r\n    screen.querySelector('[data-action=\"pe-skip\"]').addEventListener(\"click\", function () {\r\n      state.peBand = \"unsure\";\r\n      state.peBandLabel = \"PE to be confirmed\";\r\n      trackEvent(\"wastewater_selector_step_complete\", { step: 4, population_equivalent: \"unsure\" });\r\n      renderStepSite();\r\n      hardJumpToSelector();\r\n    });\r\n  }\r\n\r\n  function renderStepSite() {\r\n    renderOptionsStep({\r\n      stepIndex: 5,\r\n      title: \"What do you know about the site's percolation area or ground conditions?\",\r\n      subtitle: \"This matters most if a septic tank is being considered \u2014 septic tanks rely on the percolation area to finish treating the effluent, so limited space or poor ground can rule one out.\",\r\n      options: SITE_OPTIONS,\r\n      showBack: true,\r\n      onSelect: function (value) {\r\n        state.siteSpace = value;\r\n        state.siteSpaceLabel = SITE_OPTIONS.filter(function (o) { return o.value === value; })[0].label;\r\n        trackEvent(\"wastewater_selector_step_complete\", { step: 5, site_conditions: value });\r\n        renderStepTreatment();\r\n      },\r\n      onBack: renderStepPE\r\n    });\r\n  }\r\n\r\n  function renderStepTreatment() {\r\n    renderOptionsStep({\r\n      stepIndex: 6,\r\n      title: \"What level of treatment is required?\",\r\n      options: TREATMENT_OPTIONS,\r\n      showBack: true,\r\n      onSelect: function (value) {\r\n        state.treatment = value;\r\n        state.treatmentLabel = TREATMENT_OPTIONS.filter(function (o) { return o.value === value; })[0].label;\r\n        trackEvent(\"wastewater_selector_step_complete\", { step: 6, treatment_requirement: value });\r\n        state.result = computeResult();\r\n        trackEvent(\"wastewater_selector_result_view\", resultTrackingParams());\r\n        renderResult();\r\n      },\r\n      onBack: renderStepSite\r\n    });\r\n  }\r\n\r\n  function resultTrackingParams() {\r\n    return {\r\n      recommended_product: state.result ? state.result.product : \"\",\r\n      project_type: state.propertyType,\r\n      population_equivalent: state.peBand,\r\n      site_conditions: state.siteSpace,\r\n      treatment_requirement: state.treatment,\r\n      project_location: state.location\r\n    };\r\n  }\r\n\r\n  function renderResult() {\r\n    updatePipeline(7);\r\n    var r = state.result;\r\n    var html = '<div class=\"tww-fade-in\">';\r\n    html += '<span class=\"tww-result-badge\">Recommended starting point<\/span>';\r\n    html += '<div class=\"tww-result-card\">';\r\n    html += '<h2>' + esc(r.title) + '<\/h2>';\r\n    html += '<p><strong>Best suited for:<\/strong> ' + esc(r.bestFor) + '<\/p>';\r\n    if (r.flag) html += '<div class=\"tww-flag\"><strong>Before we quote:<\/strong> ' + esc(r.flag) + '<\/div>';\r\n    html += '<p><strong>Why this may suit your project:<\/strong><br>' + esc(r.why) + '<\/p>';\r\n    if (r.siteNote) html += '<div class=\"tww-info-note\"><strong>About your site:<\/strong> ' + esc(r.siteNote) + '<\/div>';\r\n    html += ctaButtons(r.contact, r.quoteLabel, chatButtonLabel(r.product));\r\n    html += '<\/div>';\r\n    html += '<div class=\"tww-disclaimer\">This tool provides an indicative product route only. Wastewater system selection depends on site suitability, ground conditions, discharge requirements, EPA Code of Practice or NIEA requirements, and local authority approval. Tricel can review your project details and advise on the most suitable product option.<\/div>';\r\n    html += '<\/div>';\r\n    screen.innerHTML = html;\r\n\r\n    screen.querySelectorAll('[data-action=\"request-quote\"]').forEach(function (b) {\r\n      b.addEventListener(\"click\", function () {\r\n        trackEvent(\"wastewater_selector_quote_click\", resultTrackingParams());\r\n        \/\/ The button is a real <a href=\"#form\"> \u2014 the browser's native\r\n        \/\/ anchor navigation runs if a #form element exists. On top of\r\n        \/\/ that, the widget locates the quote form itself and hard-jumps\r\n        \/\/ to it, so the button works even if the Elementor section's\r\n        \/\/ CSS ID has not been set. Search order:\r\n        \/\/   1. #form (the intended anchor)\r\n        \/\/   2. an embedded HubSpot form (.hbspt-form \/ form.hs-form)\r\n        \/\/   3. an Elementor form widget\r\n        \/\/   4. any page form containing an email field or textarea\r\n        \/\/      (i.e. a contact\/quote form, not a search box)\r\n        function findQuoteForm() {\r\n          var root = document.getElementById(\"tricel-ww-selector\");\r\n          function outside(el) { return el && !(root && root.contains(el)); }\r\n          var el = document.getElementById(\"form\");\r\n          if (outside(el)) return el;\r\n          var sels = [\".hbspt-form\", \"form.hs-form\", \".elementor-widget-form\", \".wpforms-container\", \".gform_wrapper\"];\r\n          for (var i = 0; i < sels.length; i++) {\r\n            el = document.querySelector(sels[i]);\r\n            if (outside(el)) return el;\r\n          }\r\n          var forms = document.querySelectorAll(\"form\");\r\n          for (var j = 0; j < forms.length; j++) {\r\n            if (outside(forms[j]) && forms[j].querySelector('input[type=\"email\"], textarea')) return forms[j];\r\n          }\r\n          return null;\r\n        }\r\n        function jump() {\r\n          try {\r\n            var el = findQuoteForm();\r\n            if (!el) return;\r\n            var y = el.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || 0) - 90;\r\n            window.scrollTo(0, Math.max(0, y));\r\n          } catch (e) { \/* no-op *\/ }\r\n        }\r\n        jump();\r\n        setTimeout(jump, 120);\r\n        setTimeout(jump, 350);\r\n      });\r\n    });\r\n    screen.querySelectorAll('[data-action=\"launch-chat\"]').forEach(function (b) {\r\n      b.addEventListener(\"click\", function (e) {\r\n        e.preventDefault();\r\n        trackEvent(\"wastewater_selector_livechat_click\", resultTrackingParams());\r\n        openLiveChat();\r\n      });\r\n    });\r\n    screen.querySelectorAll('[data-action=\"track-quote-click\"]').forEach(function (b) {\r\n      b.addEventListener(\"click\", function () { trackEvent(\"wastewater_selector_quote_click\", resultTrackingParams()); });\r\n    });\r\n    var download = screen.querySelector('[data-action=\"download-brochure\"]');\r\n    if (download) {\r\n      download.setAttribute(\"href\", brochureUrlFor(r.product));\r\n      download.setAttribute(\"target\", \"_blank\");\r\n      download.setAttribute(\"rel\", \"noopener\");\r\n      download.addEventListener(\"click\", function () {\r\n        trackEvent(\"wastewater_selector_brochure_download\",\r\n          Object.assign({ brochure_url: brochureUrlFor(r.product) }, resultTrackingParams()));\r\n      });\r\n      \/\/ Combined results have two brochures: label the main link and\r\n      \/\/ add a second one.\r\n      if (r.product === \"Puraflo \/ Sandcel\") {\r\n        download.textContent = \"Download Puraflo brochure\";\r\n        var sandcel = document.createElement(\"a\");\r\n        sandcel.textContent = \"Download Sandcel brochure\";\r\n        sandcel.setAttribute(\"href\", BROCHURE_SANDCEL);\r\n        sandcel.setAttribute(\"target\", \"_blank\");\r\n        sandcel.setAttribute(\"rel\", \"noopener\");\r\n        sandcel.addEventListener(\"click\", function () {\r\n          trackEvent(\"wastewater_selector_brochure_download\",\r\n            Object.assign({ brochure_url: BROCHURE_SANDCEL }, resultTrackingParams()));\r\n        });\r\n        download.parentNode.appendChild(sandcel);\r\n      }\r\n      if (r.product === \"Tricel Vitae T3 \/ Novo\") {\r\n        download.textContent = \"Download Vitae T3 brochure\";\r\n        var novoLink = document.createElement(\"a\");\r\n        novoLink.textContent = \"Download Novo brochure\";\r\n        novoLink.setAttribute(\"href\", BROCHURE_NOVO);\r\n        novoLink.setAttribute(\"target\", \"_blank\");\r\n        novoLink.setAttribute(\"rel\", \"noopener\");\r\n        novoLink.addEventListener(\"click\", function () {\r\n          trackEvent(\"wastewater_selector_brochure_download\",\r\n            Object.assign({ brochure_url: BROCHURE_NOVO }, resultTrackingParams()));\r\n        });\r\n        download.parentNode.appendChild(novoLink);\r\n      }\r\n    }\r\n    var restart = screen.querySelector('[data-action=\"restart\"]');\r\n    if (restart) restart.addEventListener(\"click\", function () { state = freshState(); renderLanding(); });\r\n  }\r\n\r\n  function renderLeadForm() {\r\n    \/\/ Final screen: live-chat handover, plus an embedded HubSpot form\r\n    \/\/ (managed in HubSpot, like the chat widget) as the written\r\n    \/\/ alternative. The form only appears if the HubSpot IDs above have\r\n    \/\/ been filled in.\r\n    updatePipeline(7);\r\n    var r = state.result;\r\n    var pills = [];\r\n    if (state.location) pills.push(state.location === \"roi\" ? \"Republic of Ireland\" : state.location === \"ni\" ? \"Northern Ireland\" : \"Location unsure\");\r\n    if (state.propertyTypeLabel) pills.push(state.propertyTypeLabel);\r\n    if (state.peBandLabel) pills.push(state.peBandLabel);\r\n    if (state.siteSpaceLabel) pills.push(state.siteSpaceLabel);\r\n    if (state.treatmentLabel) pills.push(state.treatmentLabel);\r\n    pills.push(\"Suggested: \" + r.product);\r\n\r\n    var html = '<div class=\"tww-fade-in\">';\r\n    html += '<div class=\"tww-step-head\"><div><h2>Ready to confirm the right system?<\/h2><p>Chat with the Tricel team now \\u2014 mention the summary below and we\\u2019ll pick up exactly where the tool left off.<\/p><\/div>' +\r\n      '<button type=\"button\" class=\"tww-btn tww-btn-ghost tww-back\" data-action=\"back-to-result\">&#8592; Back<\/button><\/div>';\r\n    html += '<div class=\"tww-summary-pill-row\">' + pills.map(function (t) { return '<span class=\"tww-summary-pill\">' + esc(t) + '<\/span>'; }).join(\"\") + '<\/div>';\r\n    html += '<button type=\"button\" id=\"tww-launch-livechat\" class=\"launch-livechat-button tww-btn tww-btn-primary tww-btn-block\" style=\"margin-top:20px;\">' + esc(chatButtonLabel(r.product)) + '<\/button>';\r\n    if (hubspotFormConfigured()) {\r\n      html += '<div class=\"tww-form-divider\"><span>or send us your details<\/span><\/div>';\r\n      html += '<div id=\"tww-hs-form\" class=\"tww-hs-form\" aria-live=\"polite\"><p style=\"font-size:13.5px;\">Loading form\\u2026<\/p><\/div>';\r\n    } else {\r\n      html += '<p style=\"margin-top:12px; font-size:13.5px;\">Prefer not to chat? Call us or use the contact page and quote the product suggested above.<\/p>';\r\n    }\r\n    html += '<\/div>';\r\n    screen.innerHTML = html;\r\n\r\n    screen.querySelector('[data-action=\"back-to-result\"]').addEventListener(\"click\", renderResult);\r\n    screen.querySelector(\"#tww-launch-livechat\").addEventListener(\"click\", function () {\r\n      trackEvent(\"wastewater_selector_livechat_click\", resultTrackingParams());\r\n      openLiveChat();\r\n    });\r\n    if (hubspotFormConfigured()) mountHubspotForm(\"#tww-hs-form\");\r\n  }\r\n\r\n  \/\/ Builds the live-chat button label: \"Ask about [product]\", matching\r\n  \/\/ the \"Launch live chat\" pattern on the contact-us page. Generic\r\n  \/\/ results (no single named product) fall back to the site's standard\r\n  \/\/ wording.\r\n  function chatButtonLabel(product) {\r\n    if (!product || product === \"consultation\") return \"Launch live chat\";\r\n    return \"Ask about \" + product;\r\n  }\r\n\r\n  \/\/ Launches the site's live chat. Strategy, in order:\r\n  \/\/ 1. Find the site's own chat launcher (the button that exists on\r\n  \/\/    every page) and programmatically click it, so whatever mechanism\r\n  \/\/    the site already uses is reused exactly. The widget's own button\r\n  \/\/    is excluded from this search.\r\n  \/\/ 2. Fall back to the client APIs of common chat providers, in case\r\n  \/\/    the launcher can't be found in the host page's DOM (e.g. it is\r\n  \/\/    rendered inside the provider's own iframe).\r\n  function openLiveChat() {\r\n    try {\r\n      var root = document.getElementById(\"tricel-ww-selector\");\r\n\r\n      \/\/ 1. The site's existing launcher(s), by the known id\/class.\r\n      var candidates = document.querySelectorAll(\r\n        \"#contact-us-launch-livechat-button, .launch-livechat-button, [id*='launch-livechat']\"\r\n      );\r\n      for (var i = 0; i < candidates.length; i++) {\r\n        var el = candidates[i];\r\n        if (root && root.contains(el)) continue; \/\/ skip our own button\r\n        el.click();\r\n        return;\r\n      }\r\n\r\n      \/\/ 2. Known chat provider APIs (each is a safe no-op if absent).\r\n      if (window.HubSpotConversations && window.HubSpotConversations.widget) {\r\n        window.HubSpotConversations.widget.open(); return;\r\n      }\r\n      if (window.Tawk_API && typeof window.Tawk_API.maximize === \"function\") {\r\n        window.Tawk_API.maximize(); return;\r\n      }\r\n      if (window.LiveChatWidget && typeof window.LiveChatWidget.call === \"function\") {\r\n        window.LiveChatWidget.call(\"maximize\"); return;\r\n      }\r\n      if (window.LC_API && typeof window.LC_API.open_chat_window === \"function\") {\r\n        window.LC_API.open_chat_window(); return;\r\n      }\r\n      if (typeof window.zE === \"function\") {\r\n        try { window.zE(\"messenger\", \"open\"); return; } catch (z1) {}\r\n        try { window.zE(\"webWidget\", \"open\"); return; } catch (z2) {}\r\n      }\r\n      if (typeof window.Intercom === \"function\") {\r\n        window.Intercom(\"show\"); return;\r\n      }\r\n      if (window.$crisp && typeof window.$crisp.push === \"function\") {\r\n        window.$crisp.push([\"do\", \"chat:open\"]); return;\r\n      }\r\n      \/\/ HubSpot script present but not yet initialised: queue the open.\r\n      if (document.querySelector('script[src*=\"hs-scripts\"], script[src*=\"usemessages\"], script[src*=\"hubspot\"]')) {\r\n        window.hsConversationsOnReady = (window.hsConversationsOnReady || []).concat([function () {\r\n          window.HubSpotConversations.widget.open();\r\n        }]);\r\n        return;\r\n      }\r\n\r\n      \/\/ 3. Nothing found: send the visitor to the contact page rather\r\n      \/\/ than leaving a dead button.\r\n      window.location.href = \"https:\/\/tricel.ie\/wastewater-treatment\/contact-us\/\";\r\n    } catch (e) { \/* no-op *\/ }\r\n  }\r\n\r\n\r\n  function bindLanding() {\r\n    var startBtn = screen.querySelector('[data-action=\"start\"]');\r\n    startBtn.addEventListener(\"click\", function () {\r\n      trackEvent(\"wastewater_selector_start\", {});\r\n      renderStepLocation();\r\n    });\r\n  }\r\n\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Init\r\n  \/\/ ---------------------------------------------------------------------\r\n  \/\/ Persistent \"Start over\" button (visible on every screen after the\r\n  \/\/ landing page). Bound once; resets state and returns to the start.\r\n  var resetBtn = document.getElementById(\"tww-reset\");\r\n  if (resetBtn) resetBtn.addEventListener(\"click\", function () {\r\n    trackEvent(\"wastewater_selector_reset\", resultTrackingParams());\r\n    state = freshState();\r\n    renderLanding();\r\n    hardJumpToSelector();\r\n  });\r\n\r\n  \/\/ Any click inside the widget marks it as interacted-with, enabling\r\n  \/\/ the keep-in-view re-anchoring (never on initial page load).\r\n  var rootEl = document.getElementById(\"tricel-ww-selector\");\r\n  if (rootEl) rootEl.addEventListener(\"click\", function () { userHasInteracted = true; });\r\n\r\n  renderLanding();\r\n})();\r\n<\/script>\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\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-a93258b e-flex e-con-boxed e-con e-parent\" data-id=\"a93258b\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ed8676d e-con-full e-flex e-con e-child\" data-id=\"ed8676d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t<div class=\"elementor-element elementor-element-c432c4f e-con-full e-flex e-con e-child\" data-id=\"c432c4f\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7ea1a1a elementor-widget elementor-widget-text-editor\" data-id=\"7ea1a1a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p class=\"twc-lead\">Campsites and caravan parks have a different wastewater pattern from houses, hotels or standard commercial premises. Demand can be low during quiet periods, rise sharply at weekends and bank holidays, and peak through the main holiday season.<\/p><p>Because of this, the correct campsite sewage system should be sized around the full site load, the seasonal use pattern, the discharge route and the site conditions \u2014 not pitch numbers alone. A system chosen on pitch count can be comfortably adequate in April and badly overloaded on the August bank holiday weekend.<\/p><p>For larger projects above 50 population equivalent (PE), Tricel Maxus is the main commercial wastewater treatment route. Smaller or mixed-use sites may need a separate technical review to confirm whether a domestic, light commercial or commercial treatment route applies. This page sets out how campsite wastewater differs, how a system is sized, which Tricel route suits which project, and what information helps us give you an accurate recommendation.<\/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-9750944 e-con-full e-flex e-con e-child\" data-id=\"9750944\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7b23b93 elementor-widget elementor-widget-heading\" data-id=\"7b23b93\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">What is a campsite sewage system?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3d2990b elementor-widget elementor-widget-text-editor\" data-id=\"3d2990b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>A campsite sewage system collects and treats wastewater from an off-mains camping, caravan or glamping site before the treated effluent is discharged through an approved route. The scale and complexity vary widely. At one end is a single toilet and shower block serving touring pitches; at the other is a holiday park operating year-round with fixed accommodation, kitchens, high visitor turnover and permanent staff. The system should be selected around the actual site profile rather than a generic assumption about \u201ca campsite\u201d.<\/p><p>Depending on the site, wastewater may come from:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-361e261 elementor-widget elementor-widget-html\" data-id=\"361e261\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-list-wrap {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-list-wrap * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-list {\r\n    display: grid;\r\n    grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    gap: 0 70px;\r\n    margin: 0;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-campsite-list li {\r\n    position: relative;\r\n    margin: 0 0 12px;\r\n    padding-left: 20px;\r\n    line-height: 1.45;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-list li::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    left: 0;\r\n    top: 8px;\r\n    width: 7px;\r\n    height: 7px;\r\n    border-radius: 1px;\r\n    background: #6bd44a;\r\n  }\r\n\r\n  @media (max-width: 720px) {\r\n    .tricel-campsite-list {\r\n      grid-template-columns: 1fr;\r\n      gap: 0;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-list-wrap\">\r\n  <ul class=\"tricel-campsite-list\">\r\n    <li>Toilet and shower blocks<\/li>\r\n    <li>Static caravan connections<\/li>\r\n\r\n    <li>Touring caravan pitches<\/li>\r\n    <li>Glamping pods, cabins or lodges<\/li>\r\n\r\n    <li>Staff facilities<\/li>\r\n    <li>Reception or visitor facilities<\/li>\r\n\r\n    <li>Caf\u00e9s, small restaurants or food preparation areas<\/li>\r\n    <li>Laundry areas<\/li>\r\n\r\n    <li>Cleaning and maintenance facilities<\/li>\r\n    <li>Seasonal or event-related visitor use<\/li>\r\n  <\/ul>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9dc6a96 elementor-widget elementor-widget-text-editor\" data-id=\"9dc6a96\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Each of these adds a different volume and a different wastewater strength. A shower block produces high-volume, relatively weak wastewater with short daily peaks; a kitchen or caf\u00e9 produces lower volumes but higher organic load and fats, oils and grease; a laundry adds warm water and detergents. A system sized only on people-on-site can miss these differences, which is why the full facility mix matters as much as headcount.<\/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-56aaa63 e-con-full e-flex e-con e-child\" data-id=\"56aaa63\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9967e90 elementor-widget elementor-widget-heading\" data-id=\"9967e90\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Why campsite wastewater needs careful design<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8bbe496 elementor-widget elementor-widget-text-editor\" data-id=\"8bbe496\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>A campsite wastewater treatment system must deal with changing flow. A domestic system usually receives a fairly predictable daily load. A campsite may have little flow during part of the week and much higher flow during holiday periods, and the difference between the two can be large. Biological treatment relies on a living population of micro-organisms, and those organisms respond to how much load arrives and how steadily it arrives \u2014 not just to the annual average. This is the central reason campsite design needs care.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-63c6eb0 elementor-widget elementor-widget-html\" data-id=\"63c6eb0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-considerations-wrap {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-considerations-wrap * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-considerations-list {\r\n    display: grid;\r\n    grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    gap: 0 70px;\r\n    margin: 0;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-campsite-considerations-list li {\r\n    position: relative;\r\n    margin: 0 0 12px;\r\n    padding-left: 20px;\r\n    line-height: 1.45;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-considerations-list li::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    left: 0;\r\n    top: 8px;\r\n    width: 7px;\r\n    height: 7px;\r\n    border-radius: 1px;\r\n    background: #6bd44a;\r\n  }\r\n\r\n  @media (max-width: 720px) {\r\n    .tricel-campsite-considerations-list {\r\n      grid-template-columns: 1fr;\r\n      gap: 0;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-considerations-wrap\">\r\n  <ul class=\"tricel-campsite-considerations-list\">\r\n    <li>Seasonal peaks during spring and summer<\/li>\r\n    <li>Bank holiday and weekend loading<\/li>\r\n\r\n    <li>Low or no flow during winter closure<\/li>\r\n    <li>Short daily peaks from showers and toilets<\/li>\r\n\r\n    <li>Wastewater from food service or laundry use<\/li>\r\n    <li>Expansion from pitches into glamping pods or lodges<\/li>\r\n\r\n    <li>Rural, coastal or sensitive locations<\/li>\r\n    <li>High water table or restricted discharge options<\/li>\r\n\r\n    <li>Limited installation space<\/li>\r\n    <li>Pumping where gravity flow is not possible<\/li>\r\n  <\/ul>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e1594a1 elementor-widget elementor-widget-text-editor\" data-id=\"e1594a1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If a system is undersized, poorly matched to the flow pattern, or not maintained, it can affect site operation, guest experience and environmental compliance. An overloaded system during peak season can lead to odour, poor effluent quality and, in sensitive receiving environments, a compliance problem at exactly the time the site is busiest and most visible. Getting the design right at the outset is considerably less costly than retrofitting capacity into an operating park mid-season.<\/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-0e3d571 e-con-full e-flex e-con e-child\" data-id=\"0e3d571\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-db6148d elementor-widget elementor-widget-heading\" data-id=\"db6148d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Campsite, caravan park and glamping sites covered<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-97b4ef9 elementor-widget elementor-widget-text-editor\" data-id=\"97b4ef9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>This page applies to off-mains wastewater treatment for:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-27b8514 elementor-widget elementor-widget-html\" data-id=\"27b8514\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-types-wrap {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-types-wrap * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-types-list {\r\n    display: grid;\r\n    grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    gap: 0 70px;\r\n    margin: 0;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-campsite-types-list li {\r\n    position: relative;\r\n    margin: 0 0 12px;\r\n    padding-left: 20px;\r\n    line-height: 1.45;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-types-list li::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    left: 0;\r\n    top: 8px;\r\n    width: 7px;\r\n    height: 7px;\r\n    border-radius: 1px;\r\n    background: #6bd44a;\r\n  }\r\n\r\n  @media (max-width: 720px) {\r\n    .tricel-campsite-types-list {\r\n      grid-template-columns: 1fr;\r\n      gap: 0;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-types-wrap\">\r\n  <ul class=\"tricel-campsite-types-list\">\r\n    <li>Campsites<\/li>\r\n    <li>Caravan parks<\/li>\r\n\r\n    <li>Holiday parks<\/li>\r\n    <li>Touring caravan sites<\/li>\r\n\r\n    <li>Static caravan parks<\/li>\r\n    <li>Glamping sites<\/li>\r\n\r\n    <li>Pod and cabin developments<\/li>\r\n    <li>Rural tourism sites<\/li>\r\n\r\n    <li>Activity centres with overnight accommodation<\/li>\r\n    <li>Mixed-use sites with camping, caf\u00e9 and staff facilities<\/li>\r\n  <\/ul>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-acb8c9e elementor-widget elementor-widget-text-editor\" data-id=\"acb8c9e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>A very small glamping or rural tourism site may not need the same treatment route as a large caravan park. Final selection depends on the calculated PE, wastewater strength, discharge route, planning or consent conditions, and the site assessment. Two sites with the same number of pitches can land on different systems once their facilities, occupancy and receiving environment are taken into account.<\/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-e7f269c e-con-full e-flex e-con e-child\" data-id=\"e7f269c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d9ec594 elementor-widget elementor-widget-heading\" data-id=\"d9ec594\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How a campsite wastewater system is sized<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a17e6d2 elementor-widget elementor-widget-text-editor\" data-id=\"a17e6d2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Campsite wastewater should not be sized from pitch count alone. A proper review considers the full design load and how the site is used across the year. The aim is to establish a realistic peak load the system must handle, and a realistic low load it must tolerate without losing biological performance.<\/p><p>The key sizing information usually includes:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-19c4712 elementor-widget elementor-widget-html\" data-id=\"19c4712\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-quote-wrap {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-quote-wrap * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-quote-list {\r\n    display: grid;\r\n    grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    gap: 0 70px;\r\n    margin: 0;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-campsite-quote-list li {\r\n    position: relative;\r\n    margin: 0 0 12px;\r\n    padding-left: 20px;\r\n    line-height: 1.45;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-quote-list li::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    left: 0;\r\n    top: 8px;\r\n    width: 7px;\r\n    height: 7px;\r\n    border-radius: 1px;\r\n    background: #6bd44a;\r\n  }\r\n\r\n  @media (max-width: 720px) {\r\n    .tricel-campsite-quote-list {\r\n      grid-template-columns: 1fr;\r\n      gap: 0;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-quote-wrap\">\r\n  <ul class=\"tricel-campsite-quote-list\">\r\n    <li>Site location and jurisdiction (RoI or NI)<\/li>\r\n    <li>Touring pitches, statics, pods, lodges or cabins<\/li>\r\n\r\n    <li>Maximum overnight occupancy<\/li>\r\n    <li>Staff numbers<\/li>\r\n\r\n    <li>Toilet and shower block capacity<\/li>\r\n    <li>Caf\u00e9, restaurant, bar or kitchen use<\/li>\r\n\r\n    <li>Laundry use<\/li>\r\n    <li>Seasonal opening periods<\/li>\r\n\r\n    <li>Peak weekends and event periods<\/li>\r\n    <li>Quiet periods or winter closure<\/li>\r\n\r\n    <li>Existing treatment system, if any<\/li>\r\n    <li>Proposed discharge route<\/li>\r\n\r\n    <li>Ground conditions and percolation data<\/li>\r\n    <li>Water table and flood-risk considerations<\/li>\r\n\r\n    <li>Space for tanks, covers and servicing<\/li>\r\n    <li>Future expansion plans<\/li>\r\n  <\/ul>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c2f347f elementor-widget elementor-widget-text-editor\" data-id=\"c2f347f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Where flows are likely to fluctuate, buffering and control become important. Buffering evens out incoming flow before biological treatment, so a sudden morning surge from a full shower block is metered into the process at a manageable rate rather than passing straight through. Control that adjusts to incoming load helps the system stay efficient across the full range between a quiet mid-week night and a full bank-holiday weekend.<\/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-2ba99a1 e-con-full e-flex e-con e-child\" data-id=\"2ba99a1\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0fe43b6 elementor-widget elementor-widget-heading\" data-id=\"0fe43b6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Which Tricel system is suitable?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c725c67 elementor-widget elementor-widget-text-editor\" data-id=\"c725c67\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The route depends on the calculated PE, wastewater strength, discharge route and treatment requirement. Confirm the jurisdiction and PE before selecting a product.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-36bf327 elementor-widget elementor-widget-html\" data-id=\"36bf327\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-card-grid {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    display: grid;\r\n    grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    gap: 20px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n  }\r\n\r\n  .tricel-campsite-card-grid * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-card {\r\n    position: relative;\r\n    padding: 30px 22px 24px;\r\n    border: 1px solid #1f5f43;\r\n    border-radius: 8px;\r\n    background: #ffffff;\r\n    color: #10251b;\r\n    overflow: hidden;\r\n  }\r\n\r\n  .tricel-campsite-card::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    top: 0;\r\n    left: 0;\r\n    width: 100%;\r\n    height: 4px;\r\n    background: #1f5f43;\r\n  }\r\n\r\n  .tricel-campsite-card .eyebrow {\r\n    margin: 0 0 6px;\r\n    color: #5d6c64;\r\n    font-weight: 700;\r\n    letter-spacing: 0.05em;\r\n    text-transform: uppercase;\r\n    line-height: 1.4;\r\n  }\r\n\r\n  .tricel-campsite-card h3 {\r\n    margin: 0 0 14px;\r\n    color: #000000;\r\n    font-weight: 700;\r\n    line-height: 1.35;\r\n  }\r\n\r\n  .tricel-campsite-card p {\r\n    margin: 0 0 18px;\r\n    line-height: 1.65;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-card strong {\r\n    font-weight: 700;\r\n    color: #000000;\r\n  }\r\n\r\n  .tricel-campsite-card ul {\r\n    margin: 10px 0 20px;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-campsite-card li {\r\n    position: relative;\r\n    margin: 0 0 10px;\r\n    padding-left: 20px;\r\n    line-height: 1.55;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-card li::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    left: 0;\r\n    top: 8px;\r\n    width: 7px;\r\n    height: 7px;\r\n    border-radius: 1px;\r\n    background: #6bd44a;\r\n  }\r\n\r\n  .tricel-campsite-button {\r\n    display: inline-block;\r\n    min-width: 170px;\r\n    padding: 12px 18px;\r\n    border: 1px solid #1f5f43;\r\n    border-radius: 8px;\r\n    background: #1f5f43 !important;\r\n    color: #ffffff !important;\r\n    font-weight: 600;\r\n    text-align: center;\r\n    text-decoration: none;\r\n  }\r\n\r\n  .tricel-campsite-button:hover,\r\n  .tricel-campsite-button:focus {\r\n    background: #174832 !important;\r\n    border-color: #174832;\r\n    color: #ffffff !important;\r\n    text-decoration: none;\r\n  }\r\n\r\n  @media (max-width: 720px) {\r\n    .tricel-campsite-card-grid {\r\n      grid-template-columns: 1fr;\r\n      gap: 16px;\r\n    }\r\n\r\n    .tricel-campsite-card {\r\n      padding: 24px 18px 20px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-card-grid\">\r\n  <div class=\"tricel-campsite-card\">\r\n    <p class=\"eyebrow\">Above 50 PE<\/p>\r\n\r\n    <h3>Tricel Maxus \u2014 larger campsite and caravan park projects<\/h3>\r\n\r\n    <p>\r\n      For projects above 50 PE, Tricel Maxus is the relevant commercial range. Maxus uses\r\n      Submerged Aerated Filter (SAF) technology and is designed for commercial and larger\r\n      off-mains applications. It can be configured for seasonal and changing loads: the\r\n      control panel can adjust to incoming load, and the system can enter power-saving mode\r\n      during periods of no flow before restarting when flow returns.\r\n    <\/p>\r\n\r\n    <p><strong>Typical applications:<\/strong><\/p>\r\n\r\n    <ul>\r\n      <li>Larger campsites and caravan parks<\/li>\r\n      <li>Holiday parks<\/li>\r\n      <li>Mixed camping and glamping sites<\/li>\r\n      <li>Sites with toilet blocks, cabins and visitor facilities<\/li>\r\n      <li>Seasonal or intermittent-use sites<\/li>\r\n    <\/ul>\r\n\r\n    <a class=\"tricel-campsite-button\" href=\"\/wastewater-treatment\/commercial-wastewater\/\">\r\n      View Maxus range\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-card\">\r\n    <p class=\"eyebrow\">Smaller \/ light commercial<\/p>\r\n\r\n    <h3>Smaller or light commercial campsite projects<\/h3>\r\n\r\n    <p>\r\n      Not every campsite automatically needs a Maxus system. A smaller glamping site,\r\n      small rural tourism site or mixed residential and commercial site should be reviewed\r\n      against the calculated load, site use and local requirements.\r\n    <\/p>\r\n\r\n    <p><strong>Depending on the result, the project may involve:<\/strong><\/p>\r\n\r\n    <ul>\r\n      <li>A wastewater treatment plant<\/li>\r\n      <li>Additional secondary treatment<\/li>\r\n      <li>Tertiary treatment or polishing<\/li>\r\n      <li>A sand polishing filter<\/li>\r\n      <li>A pumping station<\/li>\r\n      <li>A commercial plant above 50 PE<\/li>\r\n    <\/ul>\r\n\r\n    <a class=\"tricel-campsite-button\" href=\"\/contact-us\/\">\r\n      Request assessment\r\n    <\/a>\r\n  <\/div>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ce7f594 elementor-widget elementor-widget-text-editor\" data-id=\"ce7f594\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The correct option should be confirmed after reviewing the PE, site conditions, discharge route and authority requirements. Where a site expects to grow \u2014 for example, converting touring pitches to glamping pods over a few seasons \u2014 it is usually more economical to plan for that capacity at design stage than to upgrade later.<\/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-816934e e-con-full e-flex e-con e-child\" data-id=\"816934e\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e2d4139 elementor-widget elementor-widget-heading\" data-id=\"e2d4139\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Ireland and Northern Ireland: confirm the location first<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c518834 elementor-widget elementor-widget-text-editor\" data-id=\"c518834\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p class=\"isSelectedEnd\">Wastewater requirements differ between the Republic of Ireland and Northern Ireland, so the site location should be confirmed before a campsite sewage system is selected.<\/p><p class=\"isSelectedEnd\">In the Republic of Ireland, the <a href=\"https:\/\/www.epa.ie\/publications\/compliance--enforcement\/waste-water\/2021-code-of-practice-for-domestic-waste-water-treatment-systems.php\">EPA\u2019s 2021 Code of Practice for Domestic Waste Water Treatment Systems<\/a> applies to domestic wastewater treatment systems with a population equivalent of 10 or fewer. The EPA states that the Code provides guidance on site characterisation, design, operation and maintenance of domestic wastewater treatment systems. A campsite, caravan park or glamping business should not automatically be treated as a domestic project, especially where the calculated PE, commercial use or discharge route moves it outside a domestic route.<\/p><p class=\"isSelectedEnd\">In Northern Ireland, <a href=\"https:\/\/www.daera-ni.gov.uk\/articles\/regulating-water-discharges\">DAERA\u2019s guidance on regulating water discharges<\/a> explains that domestic consents are for discharges from a single dwelling only and that sites of two or more dwellings should first seek advice from NI Water regarding connection to the public sewer network. DAERA also provides guidance on <a href=\"https:\/\/www.daera-ni.gov.uk\/sites\/default\/files\/2026-05\/NIEA%20Private%20Sewage%20Treatment%20System%20Leaflet.PDF\">private sewage treatment systems<\/a>, including septic tanks and package treatment plants, which are commonly used where a site is not connected to the public sewer.<\/p><p>Before choosing a system, confirm the site jurisdiction, whether the project is domestic, light commercial or commercial, the calculated PE, whether a public foul sewer connection is possible, the discharge route, any planning, licence or consent requirements, and whether additional polishing or tertiary treatment is needed.<\/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-60fad26 e-con-full e-flex e-con e-child\" data-id=\"60fad26\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c74dfc1 elementor-widget elementor-widget-heading\" data-id=\"c74dfc1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Treatment stages in a commercial campsite system<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6881f1f elementor-widget elementor-widget-text-editor\" data-id=\"6881f1f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"relative basis-auto flex-col -mb-(--composer-overlap-px) pb-(--composer-overlap-px) [--composer-overlap-px:28px] grow flex\" data-voice-floating-orb-focus-background=\"\"><div class=\"flex flex-col text-sm\"><div class=\"qMYqUG_convSearchResultHighlightRoot\"><div class=\"\" data-turn-id-container=\"request-6a4d14df-3840-83eb-a381-c08dcd011fe9-1\" data-is-intersecting=\"true\"><section class=\"text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-6a4d14df-3840-83eb-a381-c08dcd011fe9-1\" data-turn-id-container=\"request-6a4d14df-3840-83eb-a381-c08dcd011fe9-1\" data-testid=\"conversation-turn-14\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" data-conversation-screenshot-content=\"\"><div class=\"flex max-w-full flex-col gap-4 grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"e622a6a8-57a5-4dcc-ba78-aaf4553da79d\" data-turn-start-message=\"true\" data-message-model-slug=\"gpt-5-5-thinking\"><div class=\"flex w-full flex-col gap-1 empty:hidden\"><div class=\"markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling\"><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"1293\" data-end=\"1753\">A commercial campsite wastewater treatment system usually includes staged treatment. In a Maxus-type commercial arrangement, the process runs in four stages.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/section><\/div><\/div><\/div><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b890d0a elementor-widget elementor-widget-html\" data-id=\"b890d0a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-process-grid {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    display: grid;\r\n    grid-template-columns: repeat(4, minmax(0, 1fr));\r\n    gap: 16px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n  }\r\n\r\n  .tricel-process-grid * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-process-card {\r\n    padding: 18px 18px 20px;\r\n    border: 1px solid #d9e1dc;\r\n    border-radius: 8px;\r\n    background: #ffffff;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-process-number {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    width: 31px;\r\n    height: 31px;\r\n    margin: 0 0 12px;\r\n    border-radius: 50%;\r\n    background: #1f5f43;\r\n    color: #ffffff;\r\n    font-weight: 700;\r\n    line-height: 1;\r\n  }\r\n\r\n  .tricel-process-card h3 {\r\n    margin: 0 0 8px;\r\n    color: #000000;\r\n    font-weight: 700;\r\n    line-height: 1.35;\r\n  }\r\n\r\n  .tricel-process-card p {\r\n    margin: 0;\r\n    color: #1f1f1f;\r\n    line-height: 1.65;\r\n  }\r\n\r\n  @media (max-width: 960px) {\r\n    .tricel-process-grid {\r\n      grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    }\r\n  }\r\n\r\n  @media (max-width: 560px) {\r\n    .tricel-process-grid {\r\n      grid-template-columns: 1fr;\r\n    }\r\n\r\n    .tricel-process-card {\r\n      padding: 16px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-process-grid\">\r\n  <div class=\"tricel-process-card\">\r\n    <span class=\"tricel-process-number\">1<\/span>\r\n    <h3>Primary settlement<\/h3>\r\n    <p>\r\n      Wastewater enters a settlement tank. Heavier solids settle to the base, while fats,\r\n      oils and grease rise to the surface and are retained.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-process-card\">\r\n    <span class=\"tricel-process-number\">2<\/span>\r\n    <h3>Buffering<\/h3>\r\n    <p>\r\n      The buffer stage manages changing incoming flows \u2014 useful for campsites, where demand\r\n      varies sharply between quiet and peak periods.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-process-card\">\r\n    <span class=\"tricel-process-number\">3<\/span>\r\n    <h3>Biological treatment<\/h3>\r\n    <p>\r\n      Wastewater passes through the biological zone. In the Maxus range, SAF technology\r\n      provides a large surface area for microbial treatment.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-process-card\">\r\n    <span class=\"tricel-process-number\">4<\/span>\r\n    <h3>Final clarification<\/h3>\r\n    <p>\r\n      Remaining solids settle out before treated effluent leaves through the approved\r\n      discharge route.\r\n    <\/p>\r\n  <\/div>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e1eebcb elementor-widget elementor-widget-text-editor\" data-id=\"e1eebcb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"relative basis-auto flex-col -mb-(--composer-overlap-px) pb-(--composer-overlap-px) [--composer-overlap-px:28px] grow flex\" data-voice-floating-orb-focus-background=\"\"><div class=\"flex flex-col text-sm\"><div class=\"qMYqUG_convSearchResultHighlightRoot\"><div class=\"\" data-turn-id-container=\"request-6a4d14df-3840-83eb-a381-c08dcd011fe9-1\" data-is-intersecting=\"true\"><section class=\"text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" data-turn-id=\"request-6a4d14df-3840-83eb-a381-c08dcd011fe9-1\" data-turn-id-container=\"request-6a4d14df-3840-83eb-a381-c08dcd011fe9-1\" data-testid=\"conversation-turn-14\" data-turn=\"assistant\"><div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm\/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg\/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)\"><div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" data-conversation-screenshot-content=\"\"><div class=\"flex max-w-full flex-col gap-4 grow\"><div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1\" dir=\"auto\" tabindex=\"0\" data-message-author-role=\"assistant\" data-message-id=\"e622a6a8-57a5-4dcc-ba78-aaf4553da79d\" data-turn-start-message=\"true\" data-message-model-slug=\"gpt-5-5-thinking\"><div class=\"flex w-full flex-col gap-1 empty:hidden\"><div class=\"markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling\"><p class=\"PDq2pG_selectionAnchorContainer\" data-start=\"1293\" data-end=\"1753\">Additional <a href=\"https:\/\/tricel.ie\/wastewater-treatment\/sandcel\/\">polishing<\/a>, pumping or <a href=\"https:\/\/tricel.ie\/wastewater-treatment\/tertiary-treatment-of-wastewater\/\">tertiary treatment<\/a> may be required depending on the site and the receiving environment. A coastal or amenity-water location, for example, may carry tighter discharge standards than an inland site with a straightforward percolation route, and the treatment train should be built around that requirement rather than around a standard package alone.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/section><\/div><\/div><\/div><\/div>\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-e2929b7 e-con-full e-flex e-con e-child\" data-id=\"e2929b7\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-109eb04 elementor-widget elementor-widget-heading\" data-id=\"109eb04\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Common campsite wastewater challenges<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-335e5c3 elementor-widget elementor-widget-html\" data-id=\"335e5c3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-challenge-grid {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    display: grid;\r\n    grid-template-columns: repeat(3, minmax(0, 1fr));\r\n    gap: 20px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n  }\r\n\r\n  .tricel-campsite-challenge-grid * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-challenge-card {\r\n    min-height: 260px;\r\n    padding: 24px 22px;\r\n    border: 1px solid #d9e1dc;\r\n    border-radius: 8px;\r\n    background: #ffffff;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-challenge-card h3 {\r\n    margin: 0 0 12px;\r\n    color: #000000;\r\n    font-weight: 700;\r\n    line-height: 1.35;\r\n  }\r\n\r\n  .tricel-campsite-challenge-card p {\r\n    margin: 0;\r\n    color: #1f1f1f;\r\n    line-height: 1.65;\r\n  }\r\n\r\n  @media (max-width: 960px) {\r\n    .tricel-campsite-challenge-grid {\r\n      grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    }\r\n  }\r\n\r\n  @media (max-width: 640px) {\r\n    .tricel-campsite-challenge-grid {\r\n      grid-template-columns: 1fr;\r\n      gap: 16px;\r\n    }\r\n\r\n    .tricel-campsite-challenge-card {\r\n      min-height: auto;\r\n      padding: 20px 18px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-challenge-grid\">\r\n  <div class=\"tricel-campsite-challenge-card\">\r\n    <h3>Seasonal opening<\/h3>\r\n    <p>\r\n      Many sites open for part of the year only. The system must perform during peak season\r\n      while also tolerating quieter periods and winter closure without losing its biological\r\n      population.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-challenge-card\">\r\n    <h3>Peak shower and toilet demand<\/h3>\r\n    <p>\r\n      Morning and evening use creates short, heavy loading periods. Toilet and shower block\r\n      design should be considered during sizing, not treated as an afterthought.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-challenge-card\">\r\n    <h3>Sensitive locations<\/h3>\r\n    <p>\r\n      Campsites are often in scenic, rural or coastal areas where discharge standards can be\r\n      more demanding. The receiving environment should be considered early.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-challenge-card\">\r\n    <h3>Expansion into glamping<\/h3>\r\n    <p>\r\n      Adding pods, cabins, lodges or statics changes the PE and wastewater profile. Where\r\n      possible, include planned expansion at design stage.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-challenge-card\">\r\n    <h3>Existing septic tank replacement<\/h3>\r\n    <p>\r\n      Older septic tank arrangements may not suit a larger, busier or higher-standard site.\r\n      Replacement or upgrade may be needed where the system is overloaded, non-compliant or\r\n      unsuitable for the discharge route.\r\n    <\/p>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-challenge-card\">\r\n    <h3>Ground and water conditions<\/h3>\r\n    <p>\r\n      High water table, flood risk and limited installation space all affect what can be\r\n      installed and whether pumping is required. These should be checked in the site assessment.\r\n    <\/p>\r\n  <\/div>\r\n<\/div>\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-98cb187 e-con-full e-flex e-con e-child\" data-id=\"98cb187\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-25481db elementor-widget elementor-widget-heading\" data-id=\"25481db\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Case studies relevant to campsite and seasonal wastewater<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7434454 elementor-widget elementor-widget-html\" data-id=\"7434454\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-case-grid {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    display: grid;\r\n    grid-template-columns: repeat(3, minmax(0, 1fr));\r\n    gap: 20px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n  }\r\n\r\n  .tricel-campsite-case-grid * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-case-card {\r\n    padding: 24px 22px 22px;\r\n    border: 1px solid #d9e1dc;\r\n    border-radius: 8px;\r\n    background: #ffffff;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-case-tag {\r\n    display: inline-block;\r\n    margin: 0 0 14px;\r\n    padding: 6px 10px;\r\n    border-radius: 999px;\r\n    background: #f3f7f5;\r\n    color: #005c3c;\r\n    font-weight: 700;\r\n    letter-spacing: 0.04em;\r\n    text-transform: uppercase;\r\n    line-height: 1.2;\r\n  }\r\n\r\n  .tricel-campsite-case-card h3 {\r\n    margin: 0 0 12px;\r\n    color: #000000;\r\n    font-weight: 700;\r\n    line-height: 1.35;\r\n  }\r\n\r\n  .tricel-campsite-case-card p {\r\n    margin: 0 0 18px;\r\n    color: #1f1f1f;\r\n    line-height: 1.65;\r\n  }\r\n\r\n  .tricel-campsite-case-button {\r\n    display: inline-block;\r\n    min-width: 180px;\r\n    padding: 12px 18px;\r\n    border: 1px solid #1f5f43;\r\n    border-radius: 8px;\r\n    background: #1f5f43 !important;\r\n    color: #ffffff !important;\r\n    font-weight: 600;\r\n    text-align: center;\r\n    text-decoration: none;\r\n  }\r\n\r\n  .tricel-campsite-case-button:hover,\r\n  .tricel-campsite-case-button:focus {\r\n    background: #174832 !important;\r\n    border-color: #174832;\r\n    color: #ffffff !important;\r\n    text-decoration: none;\r\n  }\r\n\r\n  @media (max-width: 960px) {\r\n    .tricel-campsite-case-grid {\r\n      grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    }\r\n  }\r\n\r\n  @media (max-width: 640px) {\r\n    .tricel-campsite-case-grid {\r\n      grid-template-columns: 1fr;\r\n      gap: 16px;\r\n    }\r\n\r\n    .tricel-campsite-case-card {\r\n      padding: 20px 18px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-case-grid\">\r\n  <div class=\"tricel-campsite-case-card\">\r\n    <span class=\"tricel-campsite-case-tag\">Caravan park<\/span>\r\n\r\n    <h3>Meadowfield Caravan Park, Co. Wicklow<\/h3>\r\n\r\n    <p>\r\n      A caravan park project requiring a system that could handle changing flows between peak\r\n      and quiet periods, fit within a small site footprint and be installed during the closed season.\r\n    <\/p>\r\n\r\n    <a class=\"tricel-campsite-case-button\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/caravan-park-wastewater-treatment\/\">\r\n      View case study\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-case-card\">\r\n    <span class=\"tricel-campsite-case-tag\">50 PE Maxus<\/span>\r\n\r\n    <h3>Camping Moenbroen, Denmark<\/h3>\r\n\r\n    <p>\r\n      A campsite project using a 50 PE Tricel Maxus plant. Seasonal demand meant high summer\r\n      loading and much lower winter flow \u2014 a clear illustration of why campsite systems must\r\n      account for both full-capacity and off-season use.\r\n    <\/p>\r\n\r\n    <a class=\"tricel-campsite-case-button\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/commercial-wastewater-denmark\/\">\r\n      View case study\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <div class=\"tricel-campsite-case-card\">\r\n    <span class=\"tricel-campsite-case-tag\">Seasonal commercial<\/span>\r\n\r\n    <h3>Seasonal commercial site, Carna<\/h3>\r\n\r\n    <p>\r\n      A seasonal commercial site with high water table conditions, pumping requirements and\r\n      telemetry needs \u2014 an example of design driven by ground conditions as much as by load.\r\n    <\/p>\r\n\r\n    <a class=\"tricel-campsite-case-button\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/commercial-wastewater-treatment-plant-carna\/\">\r\n      View case study\r\n    <\/a>\r\n  <\/div>\r\n<\/div>\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-07a0596 e-con-full e-flex e-con e-child\" data-id=\"07a0596\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e3a05cb elementor-widget elementor-widget-heading\" data-id=\"e3a05cb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">What Tricel needs before recommending a system<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-69c270d elementor-widget elementor-widget-html\" data-id=\"69c270d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-enquiry-wrap {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-campsite-enquiry-wrap * {\r\n    box-sizing: border-box;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  .tricel-campsite-enquiry-list {\r\n    display: grid;\r\n    grid-template-columns: repeat(2, minmax(0, 1fr));\r\n    gap: 0 70px;\r\n    margin: 0;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-campsite-enquiry-list li {\r\n    position: relative;\r\n    margin: 0 0 12px;\r\n    padding-left: 20px;\r\n    line-height: 1.45;\r\n    color: #1f1f1f;\r\n  }\r\n\r\n  .tricel-campsite-enquiry-list li::before {\r\n    content: \"\";\r\n    position: absolute;\r\n    left: 0;\r\n    top: 8px;\r\n    width: 7px;\r\n    height: 7px;\r\n    border-radius: 1px;\r\n    background: #6bd44a;\r\n  }\r\n\r\n  @media (max-width: 720px) {\r\n    .tricel-campsite-enquiry-list {\r\n      grid-template-columns: 1fr;\r\n      gap: 0;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-enquiry-wrap\">\r\n  <ul class=\"tricel-campsite-enquiry-list\">\r\n    <li>Site name and location<\/li>\r\n    <li>Republic of Ireland or Northern Ireland<\/li>\r\n\r\n    <li>New build, upgrade or replacement<\/li>\r\n    <li>Number of pitches, pods, caravans, cabins or lodges<\/li>\r\n\r\n    <li>Maximum occupancy<\/li>\r\n    <li>Staff numbers<\/li>\r\n\r\n    <li>Toilet and shower facilities<\/li>\r\n    <li>Caf\u00e9, kitchen, laundry or food service details<\/li>\r\n\r\n    <li>Seasonal opening pattern<\/li>\r\n    <li>Peak periods<\/li>\r\n\r\n    <li>Existing wastewater system details, if any<\/li>\r\n    <li>Discharge route<\/li>\r\n\r\n    <li>Percolation or site assessment information<\/li>\r\n    <li>Planning, licence or consent details<\/li>\r\n\r\n    <li>Site layout drawings, where available<\/li>\r\n    <li>Future expansion plans<\/li>\r\n  <\/ul>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5d410aa e-con-full e-flex e-con e-child\" data-id=\"5d410aa\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-55789bc elementor-widget elementor-widget-html\" data-id=\"55789bc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-campsite-advice-cta {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    padding: 38px 24px;\r\n    border-radius: 10px;\r\n    background: #1f5f43;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    color: #ffffff;\r\n    text-align: center;\r\n  }\r\n\r\n  .tricel-campsite-advice-cta * {\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .tricel-campsite-advice-cta h2 {\r\n    margin: 0 0 14px;\r\n    font-size: 24px !important;\r\n    font-weight: 700;\r\n    line-height: 1.3;\r\n    color: #ffffff;\r\n  }\r\n\r\n  .tricel-campsite-advice-cta p {\r\n    max-width: 620px;\r\n    margin: 0 auto 24px;\r\n    font-size: 14px !important;\r\n    line-height: 1.65;\r\n    color: #ffffff;\r\n  }\r\n\r\n  .tricel-campsite-cta-actions {\r\n    display: flex;\r\n    justify-content: center;\r\n    gap: 12px;\r\n    flex-wrap: wrap;\r\n  }\r\n\r\n  .tricel-campsite-cta-button {\r\n    display: inline-block;\r\n    min-width: 160px;\r\n    padding: 13px 22px;\r\n    border: 1px solid #88E044;\r\n    border-radius: 8px;\r\n    background: #88E044 !important;\r\n    color: #10251b !important;\r\n    font-size: 14px !important;\r\n    font-weight: 700;\r\n    text-align: center;\r\n    text-decoration: none;\r\n  }\r\n\r\n  .tricel-campsite-cta-button:hover,\r\n  .tricel-campsite-cta-button:focus {\r\n    background: #79c93d !important;\r\n    border-color: #79c93d;\r\n    color: #10251b !important;\r\n    text-decoration: none;\r\n  }\r\n\r\n  .tricel-campsite-cta-secondary {\r\n    display: inline-block;\r\n    min-width: 200px;\r\n    padding: 13px 22px;\r\n    border: 1px solid rgba(255, 255, 255, 0.65);\r\n    border-radius: 8px;\r\n    background: transparent !important;\r\n    color: #ffffff !important;\r\n    font-size: 14px !important;\r\n    font-weight: 700;\r\n    text-align: center;\r\n    text-decoration: none;\r\n  }\r\n\r\n  .tricel-campsite-cta-secondary:hover,\r\n  .tricel-campsite-cta-secondary:focus {\r\n    background: rgba(255, 255, 255, 0.12) !important;\r\n    color: #ffffff !important;\r\n    text-decoration: none;\r\n  }\r\n\r\n  @media (max-width: 640px) {\r\n    .tricel-campsite-advice-cta {\r\n      padding: 30px 18px;\r\n    }\r\n\r\n    .tricel-campsite-advice-cta h2 {\r\n      font-size: 22px !important;\r\n    }\r\n\r\n    .tricel-campsite-cta-button,\r\n    .tricel-campsite-cta-secondary {\r\n      width: 100%;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-campsite-advice-cta\">\r\n  <h2>Request campsite wastewater advice<\/h2>\r\n\r\n  <p>\r\n    A campsite sewage system should be selected around the site\u2019s actual load,\r\n    seasonal pattern and discharge requirements. Send Tricel your site details\r\n    and our team can review the project route, PE, system type and next steps.\r\n  <\/p>\r\n\r\n  <div class=\"tricel-campsite-cta-actions\">\r\n    <a class=\"tricel-campsite-cta-button\" href=\"\/contact-us\/\">\r\n      Request a quote\r\n    <\/a>\r\n\r\n    <a class=\"tricel-campsite-cta-secondary\" href=\"\/wastewater-treatment\/commercial-wastewater-treatment\/\">\r\n      View commercial systems\r\n    <\/a>\r\n  <\/div>\r\n<\/div>\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\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4e712b5 e-con-full e-flex e-con e-child\" data-id=\"4e712b5\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_on&quot;:[&quot;desktop&quot;],&quot;sticky_offset&quot;:200,&quot;sticky_parent&quot;:&quot;yes&quot;,&quot;_ha_eqh_enable&quot;:false,&quot;sticky_effects_offset&quot;:0,&quot;sticky_anchor_link_offset&quot;:0}\">\n\t\t<div class=\"elementor-element elementor-element-f65cdfa e-con-full e-flex e-con e-child\" data-id=\"f65cdfa\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5311d2d elementor-toc--minimized-on-tablet elementor-widget elementor-widget-table-of-contents\" data-id=\"5311d2d\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;headings_by_tags&quot;:[&quot;h2&quot;],&quot;exclude_headings_by_selector&quot;:[],&quot;no_headings_message&quot;:&quot;No headings were found on this page.&quot;,&quot;marker_view&quot;:&quot;numbers&quot;,&quot;minimize_box&quot;:&quot;yes&quot;,&quot;minimized_on&quot;:&quot;tablet&quot;,&quot;hierarchical_view&quot;:&quot;yes&quot;,&quot;min_height&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;min_height_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;min_height_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"table-of-contents.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-toc__header\">\n\t\t\t\t\t\t<h4 class=\"elementor-toc__header-title\">\n\t\t\t\tTable of Contents\t\t\t<\/h4>\n\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-toc__toggle-button elementor-toc__toggle-button--expand\" role=\"button\" tabindex=\"0\" aria-controls=\"elementor-toc__5311d2d\" aria-expanded=\"true\" aria-label=\"Open table of contents\"><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-chevron-down\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z\"><\/path><\/svg><\/div>\n\t\t\t\t<div class=\"elementor-toc__toggle-button elementor-toc__toggle-button--collapse\" role=\"button\" tabindex=\"0\" aria-controls=\"elementor-toc__5311d2d\" aria-expanded=\"true\" aria-label=\"Close table of contents\"><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-chevron-up\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z\"><\/path><\/svg><\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<div id=\"elementor-toc__5311d2d\" class=\"elementor-toc__body\">\n\t\t\t<div class=\"elementor-toc__spinner-container\">\n\t\t\t\t<svg class=\"elementor-toc__spinner eicon-animation-spin e-font-icon-svg e-eicon-loading\" aria-hidden=\"true\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M500 975V858C696 858 858 696 858 500S696 142 500 142 142 304 142 500H25C25 237 238 25 500 25S975 237 975 500 763 975 500 975Z\"><\/path><\/svg>\t\t\t<\/div>\n\t\t<\/div>\n\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-32ddd3d e-con-full e-flex e-con e-child\" data-id=\"32ddd3d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-58fd031 elementor-widget elementor-widget-global elementor-global-6304 elementor-widget-html\" data-id=\"58fd031\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  \/* Tricel sidebar CTA *\/\r\n  .tricel-cta {\r\n    --tricel-green: #2A5B3F;\r\n    --tricel-accent: #88E044;\r\n\r\n    width: 100%;\r\n    max-width: 360px;\r\n    padding: 28px 24px;\r\n    border-radius: 10px;\r\n    background-color: var(--tricel-green);\r\n    color: #ffffff;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .tricel-cta *,\r\n  .tricel-cta *::before,\r\n  .tricel-cta *::after {\r\n    box-sizing: inherit;\r\n  }\r\n\r\n  .tricel-cta .cta-kicker {\r\n    display: inline-block;\r\n    margin: 0 0 14px;\r\n    padding: 5px 10px;\r\n    border-radius: 4px;\r\n    background-color: rgba(255, 255, 255, 0.12);\r\n    color: #ffffff;\r\n    font-size: 12px;\r\n    font-weight: 700;\r\n    letter-spacing: 0.08em;\r\n    line-height: 1.4;\r\n    text-transform: uppercase;\r\n  }\r\n\r\n  .tricel-cta .cta-heading {\r\n    margin: 0 0 10px;\r\n    color: #ffffff;\r\n    font-size: 22px;\r\n    font-weight: 700;\r\n    line-height: 1.25;\r\n  }\r\n\r\n  .tricel-cta .cta-description {\r\n    margin: 0 0 18px;\r\n    color: #d9e6dd;\r\n    font-size: 14px;\r\n    line-height: 1.6;\r\n  }\r\n\r\n  .tricel-cta .cta-list {\r\n    margin: 0 0 20px;\r\n    padding: 0;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-cta .cta-list li {\r\n    position: relative;\r\n    margin: 0 0 8px;\r\n    padding-left: 24px;\r\n    color: #ffffff;\r\n    font-size: 14px;\r\n    line-height: 1.5;\r\n  }\r\n\r\n  .tricel-cta .cta-list li::before {\r\n    content: \"\u2713\";\r\n    position: absolute;\r\n    left: 0;\r\n    color: var(--tricel-accent);\r\n    font-weight: 700;\r\n  }\r\n\r\n  .tricel-cta .cta-btn {\r\n    display: block;\r\n    width: 100%;\r\n    padding: 13px 18px;\r\n    border-radius: 6px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n    line-height: 1.4;\r\n    text-align: center;\r\n    text-decoration: none;\r\n    transition:\r\n      background-color 0.2s ease,\r\n      color 0.2s ease;\r\n  }\r\n\r\n  .tricel-cta .cta-btn--primary {\r\n    border: 2px solid var(--tricel-accent);\r\n    background-color: var(--tricel-accent);\r\n    color: #1a3a28;\r\n  }\r\n\r\n  .tricel-cta .cta-btn--primary:hover,\r\n  .tricel-cta .cta-btn--primary:focus-visible {\r\n    background-color: #ffffff;\r\n    border-color: #ffffff;\r\n    color: var(--tricel-green);\r\n  }\r\n\r\n  .tricel-cta .cta-btn--secondary {\r\n    margin-top: 10px;\r\n    border: 2px solid #ffffff;\r\n    background-color: transparent;\r\n    color: #ffffff;\r\n  }\r\n\r\n  .tricel-cta .cta-btn--secondary:hover,\r\n  .tricel-cta .cta-btn--secondary:focus-visible {\r\n    background-color: #ffffff;\r\n    color: var(--tricel-green);\r\n  }\r\n\r\n  .tricel-cta .cta-btn:focus-visible,\r\n  .tricel-cta .cta-phone a:focus-visible {\r\n    outline: 3px solid var(--tricel-accent);\r\n    outline-offset: 3px;\r\n  }\r\n\r\n  .tricel-cta .cta-phone {\r\n    display: block;\r\n    margin-top: 16px;\r\n    color: #d9e6dd;\r\n    font-size: 14px;\r\n    line-height: 1.5;\r\n    text-align: center;\r\n  }\r\n\r\n  .tricel-cta .cta-phone a {\r\n    color: #ffffff;\r\n    font-weight: 700;\r\n    text-decoration: underline;\r\n    text-underline-offset: 2px;\r\n  }\r\n\r\n  @media (max-width: 767px) {\r\n    .tricel-cta {\r\n      max-width: none;\r\n      padding: 24px 20px;\r\n    }\r\n\r\n    .tricel-cta .cta-heading {\r\n      font-size: 20px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<aside\r\n  class=\"tricel-cta\"\r\n  aria-labelledby=\"tricel-site-visit-heading\"\r\n>\r\n  <span class=\"cta-kicker\">Free \u00b7 No obligation<\/span>\r\n\r\n  <h3 class=\"cta-heading\" id=\"tricel-site-visit-heading\">\r\n    Not sure which system your site needs?\r\n  <\/h3>\r\n\r\n  <p class=\"cta-description\">\r\n    A Tricel engineer will visit your site, review the ground conditions\r\n    and site assessment, and recommend a suitable certified system with\r\n    a written quote.\r\n  <\/p>\r\n\r\n  <ul class=\"cta-list\">\r\n    <li>Free site visit anywhere in Ireland<\/li>\r\n    <li>Systems certified to EN&nbsp;12566<\/li>\r\n    <li>Manufactured in Ireland<\/li>\r\n  <\/ul>\r\n\r\n  <a\r\n    class=\"cta-btn cta-btn--primary\"\r\n    href=\"https:\/\/tricel.ie\/wastewater-treatment\/book-free-site-visit\/\"\r\n  >\r\n    Book your free site visit\r\n  <\/a>\r\n\r\n  <a\r\n    class=\"cta-btn cta-btn--secondary\"\r\n    href=\"https:\/\/tricel.ie\/wastewater-treatment\/contact-us\/\"\r\n  >\r\n    Ask a question\r\n  <\/a>\r\n\r\n  <span class=\"cta-phone\">\r\n    Prefer to talk?\r\n    <a href=\"tel:+353646688000\">+353 (0)64 668 8000<\/a>\r\n  <\/span>\r\n<\/aside>\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\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e65017c e-flex e-con-boxed e-con e-parent\" data-id=\"e65017c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6552 elementor-widget elementor-widget-global elementor-global-6552 elementor-widget-html\" data-id=\"6552\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-system-choice-cta {\r\n    --tricel-green: #2A5B3F;\r\n    --tricel-dark-green: #173D2B;\r\n    --tricel-accent: #88E044;\r\n    --tricel-accent-hover: #76CC39;\r\n\r\n    width: 100%;\r\n    margin: 0;\r\n    padding: 46px 24px;\r\n    border-radius: 8px;\r\n    background-color: var(--tricel-green);\r\n    color: #FFFFFF;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 14px;\r\n    text-align: center;\r\n  }\r\n\r\n  .tricel-system-choice-cta,\r\n  .tricel-system-choice-cta * {\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .tricel-system-choice-cta-inner {\r\n    width: 100%;\r\n    max-width: 720px;\r\n    margin: 0 auto;\r\n  }\r\n\r\n  .tricel-system-choice-cta h2 {\r\n    margin: 0 0 12px;\r\n    color: #FFFFFF !important;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 26px;\r\n    font-weight: 700;\r\n    line-height: 1.3;\r\n  }\r\n\r\n  .tricel-system-choice-cta p {\r\n    max-width: 610px;\r\n    margin: 0 auto 24px;\r\n    color: #FFFFFF !important;\r\n    font-size: 14px;\r\n    line-height: 1.75;\r\n  }\r\n\r\n  .tricel-system-choice-actions {\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    justify-content: center;\r\n    gap: 12px;\r\n  }\r\n\r\n  .tricel-system-choice-button,\r\n  .tricel-system-choice-button:hover,\r\n  .tricel-system-choice-button:focus,\r\n  .tricel-system-choice-button:active,\r\n  .tricel-system-choice-button:visited,\r\n  .tricel-system-choice-button *,\r\n  .tricel-system-choice-button:hover *,\r\n  .tricel-system-choice-button:focus * {\r\n    text-decoration: none !important;\r\n  }\r\n\r\n  .tricel-system-choice-button {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    min-width: 225px;\r\n    min-height: 48px;\r\n    padding: 12px 22px;\r\n    border: 2px solid transparent;\r\n    border-radius: 6px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    font-size: 13px;\r\n    font-weight: 700;\r\n    line-height: 1.4;\r\n    text-align: center;\r\n    transition:\r\n      background-color 0.2s ease,\r\n      border-color 0.2s ease,\r\n      color 0.2s ease,\r\n      transform 0.2s ease;\r\n  }\r\n\r\n  .tricel-system-choice-button-primary,\r\n  .tricel-system-choice-button-primary:visited {\r\n    border-color: var(--tricel-accent);\r\n    background-color: var(--tricel-accent);\r\n    color: var(--tricel-dark-green) !important;\r\n  }\r\n\r\n  .tricel-system-choice-button-primary span {\r\n    color: var(--tricel-dark-green) !important;\r\n  }\r\n\r\n  .tricel-system-choice-button-primary:hover,\r\n  .tricel-system-choice-button-primary:focus {\r\n    border-color: var(--tricel-accent-hover);\r\n    background-color: var(--tricel-accent-hover);\r\n    color: var(--tricel-dark-green) !important;\r\n    transform: translateY(-1px);\r\n  }\r\n\r\n  .tricel-system-choice-button-secondary,\r\n  .tricel-system-choice-button-secondary:visited {\r\n    border-color: rgba(255, 255, 255, 0.85);\r\n    background-color: transparent;\r\n    color: #FFFFFF !important;\r\n  }\r\n\r\n  .tricel-system-choice-button-secondary span {\r\n    color: #FFFFFF !important;\r\n  }\r\n\r\n  .tricel-system-choice-button-secondary:hover,\r\n  .tricel-system-choice-button-secondary:focus {\r\n    border-color: #FFFFFF;\r\n    background-color: #FFFFFF;\r\n    color: var(--tricel-dark-green) !important;\r\n    transform: translateY(-1px);\r\n  }\r\n\r\n  .tricel-system-choice-button-secondary:hover span,\r\n  .tricel-system-choice-button-secondary:focus span {\r\n    color: var(--tricel-dark-green) !important;\r\n  }\r\n\r\n  .tricel-system-choice-button:focus-visible {\r\n    outline: 3px solid rgba(136, 224, 68, 0.45);\r\n    outline-offset: 3px;\r\n  }\r\n\r\n  @media (max-width: 600px) {\r\n    .tricel-system-choice-cta {\r\n      padding: 36px 20px;\r\n    }\r\n\r\n    .tricel-system-choice-cta h2 {\r\n      font-size: 23px;\r\n    }\r\n\r\n    .tricel-system-choice-actions {\r\n      flex-direction: column;\r\n      align-items: stretch;\r\n    }\r\n\r\n    .tricel-system-choice-button {\r\n      width: 100%;\r\n      min-width: 0;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<section\r\n  class=\"tricel-system-choice-cta\"\r\n  aria-labelledby=\"tricel-system-choice-heading\"\r\n>\r\n  <div class=\"tricel-system-choice-cta-inner\">\r\n    <h2 id=\"tricel-system-choice-heading\">\r\n      Not sure which system is right for your site?\r\n    <\/h2>\r\n\r\n    <p>\r\n      A site assessment, rather than product preference, determines whether a\r\n      septic tank or wastewater treatment plant is the correct route for your\r\n      project.\r\n    <\/p>\r\n\r\n    <div\r\n      class=\"tricel-system-choice-actions\"\r\n      aria-label=\"Wastewater system assistance\"\r\n    >\r\n      <a\r\n        class=\"tricel-system-choice-button tricel-system-choice-button-primary\"\r\n        href=\"\/wastewater-treatment\/contact-us\/\"\r\n      >\r\n        <span>Request a wastewater system review<\/span>\r\n      <\/a>\r\n\r\n      <a\r\n        class=\"tricel-system-choice-button tricel-system-choice-button-secondary\"\r\n        href=\"\/wastewater-treatment\/contact-us\/\"\r\n      >\r\n        <span>Book a site visit<\/span>\r\n      <\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-21cb17b e-flex e-con-boxed e-con e-parent\" data-id=\"21cb17b\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b71a947 elementor-widget elementor-widget-html\" data-id=\"b71a947\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .tricel-faq-wrap {\r\n    width: 100%;\r\n    margin: 0 0 24px;\r\n    font-family: \"Poppins\", Arial, sans-serif;\r\n    color: #10251b;\r\n  }\r\n\r\n  .tricel-faq-wrap * {\r\n    box-sizing: border-box;\r\n  }\r\n\r\n  .tricel-faq-heading {\r\n    margin: 0 0 18px;\r\n    color: #005c3c;\r\n    font-size: 28px !important;\r\n    font-weight: 700;\r\n    line-height: 1.3;\r\n  }\r\n\r\n  .tricel-faq-item {\r\n    margin: 0 0 10px;\r\n    border: 1px solid #d9e1dc;\r\n    border-radius: 8px;\r\n    background: #ffffff;\r\n    overflow: hidden;\r\n  }\r\n\r\n  .tricel-faq-item summary {\r\n    padding: 16px 18px;\r\n    cursor: pointer;\r\n    font-size: 14px !important;\r\n    font-weight: 700;\r\n    line-height: 1.45;\r\n    color: #005c3c;\r\n    list-style: none;\r\n  }\r\n\r\n  .tricel-faq-item summary::-webkit-details-marker {\r\n    display: none;\r\n  }\r\n\r\n  .tricel-faq-item summary::after {\r\n    content: \"+\";\r\n    float: right;\r\n    font-weight: 700;\r\n    color: #1f5f43;\r\n  }\r\n\r\n  .tricel-faq-item[open] summary::after {\r\n    content: \"\u2013\";\r\n  }\r\n\r\n  .tricel-faq-item div {\r\n    padding: 0 18px 16px;\r\n    font-size: 14px !important;\r\n    color: #1f1f1f;\r\n    line-height: 1.65;\r\n  }\r\n\r\n  .tricel-faq-item p {\r\n    margin: 0;\r\n    font-size: 14px !important;\r\n  }\r\n\r\n  @media (max-width: 640px) {\r\n    .tricel-faq-heading {\r\n      font-size: 22px !important;\r\n    }\r\n\r\n    .tricel-faq-item summary {\r\n      padding: 14px 16px;\r\n    }\r\n\r\n    .tricel-faq-item div {\r\n      padding: 0 16px 14px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<div class=\"tricel-faq-wrap\">\r\n  <h2 class=\"tricel-faq-heading\">Frequently asked questions for campsite wastewater treatment<\/h2>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>What is a campsite sewage system?<\/summary>\r\n    <div>\r\n      <p>\r\n        A campsite sewage system treats wastewater from an off-mains campsite, caravan park\r\n        or glamping site. It may collect flow from toilets, showers, caravan pitches, pods,\r\n        cabins, staff facilities, laundry areas and visitor facilities before discharging\r\n        treated effluent through an approved route.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>What is the difference between campsite and domestic wastewater treatment?<\/summary>\r\n    <div>\r\n      <p>\r\n        Domestic treatment is usually based on household occupancy and a more consistent\r\n        daily pattern. Campsites and caravan parks often have seasonal peaks, quiet periods,\r\n        weekend demand and changing visitor numbers, so the system must be sized around the\r\n        full site load and usage pattern.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>Can a campsite use a septic tank?<\/summary>\r\n    <div>\r\n      <p>\r\n        Some small or specific sites may include primary treatment as part of the design, but\r\n        a septic tank alone may not provide the treatment level required for a campsite,\r\n        caravan park or glamping business. Final selection depends on the site assessment,\r\n        PE, discharge route and local authority or consent requirements.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>What Tricel product is suitable for campsite wastewater treatment?<\/summary>\r\n    <div>\r\n      <p>\r\n        For campsite, caravan park or holiday park projects above 50 PE, Tricel Maxus is\r\n        the relevant commercial range. Smaller sites may require assessment to confirm\r\n        whether another treatment route is suitable.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>Can Tricel Maxus handle seasonal campsite loads?<\/summary>\r\n    <div>\r\n      <p>\r\n        Yes. Tricel Maxus is suitable for seasonal or constant loads. The control panel can\r\n        adjust to incoming flow, and the system can enter power-saving mode during periods\r\n        of no flow before restarting once flow is detected.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>How is a campsite wastewater treatment plant sized?<\/summary>\r\n    <div>\r\n      <p>\r\n        It is sized using the calculated PE, maximum occupancy, pitch or unit numbers,\r\n        toilet and shower use, staff numbers, catering or laundry use, peak periods,\r\n        seasonal opening pattern, discharge route and site conditions.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>Is a glamping site treated the same as a campsite?<\/summary>\r\n    <div>\r\n      <p>\r\n        Not always. A small glamping site may have a different load from a large campsite\r\n        or caravan park. The number of pods or cabins, guest occupancy, ensuite facilities,\r\n        staff use and food service all affect the system route.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>Do campsite wastewater systems need consent in Northern Ireland?<\/summary>\r\n    <div>\r\n      <p>\r\n        In Northern Ireland, private sewage treatment systems, including septic tanks and\r\n        package treatment plants, require consent from the Northern Ireland Environment\r\n        Agency. The correct application route should be confirmed before selecting a system.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>Does a campsite in Ireland fall under the EPA domestic Code of Practice?<\/summary>\r\n    <div>\r\n      <p>\r\n        The EPA Code of Practice applies to domestic wastewater treatment systems with a PE\r\n        of 10 or fewer. Campsites, caravan parks and glamping businesses should be assessed\r\n        on their actual PE, commercial use and discharge route rather than treated\r\n        automatically as domestic projects.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n\r\n  <details class=\"tricel-faq-item\">\r\n    <summary>What information should I send Tricel for a campsite quote?<\/summary>\r\n    <div>\r\n      <p>\r\n        Send the site location, number of pitches or accommodation units, maximum occupancy,\r\n        staff numbers, toilet and shower details, seasonal opening pattern, caf\u00e9 or laundry\r\n        use, existing system details, discharge route and any planning or consent information\r\n        already available.\r\n      <\/p>\r\n    <\/div>\r\n  <\/details>\r\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-2e7d4c01 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"2e7d4c01\" data-element_type=\"section\" data-e-type=\"section\" id=\"form\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-20714a67\" data-id=\"20714a67\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-41e132ea elementor-widget elementor-widget-text-editor\" data-id=\"41e132ea\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2><strong>Get in touch<\/strong><\/h2><p>\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-21995c1d elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"21995c1d\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-76f35b9d\" data-id=\"76f35b9d\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2a9cc082 elementor-widget elementor-widget-hubspot-form\" data-id=\"2a9cc082\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"hubspot-form.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n\t\t\t\t\t\t<script>\n\t\t\t\t\t\t\twindow.hsFormsOnReady = window.hsFormsOnReady || [];\n\t\t\t\t\t\t\twindow.hsFormsOnReady.push(()=>{\n\t\t\t\t\t\t\t\thbspt.forms.create({\n\t\t\t\t\t\t\t\t\tportalId: 26158730,\n\t\t\t\t\t\t\t\t\tformId: \"2e8c4e00-62eb-41f0-9b20-1747cf7fae02\",\n\t\t\t\t\t\t\t\t\ttarget: \"#hbspt-form-1784081814000-3804450619\",\n\t\t\t\t\t\t\t\t\tregion: \"eu1\",\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t})});\n\t\t\t\t\t\t<\/script>\n\t\t\t\t\t\t<div class=\"hbspt-form\" id=\"hbspt-form-1784081814000-3804450619\"><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>A Campsite sewage system is designed to deal with fluctuating amounts of sewage daily, season or yearly. Read more.<\/p>\n","protected":false},"author":1,"featured_media":1319,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"content-type":"","footnotes":""},"class_list":["post-1306","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Campsite Sewage System &amp; Wastewater Treatment | Tricel<\/title>\n<meta name=\"description\" content=\"Campsite, caravan park and glamping wastewater treatment systems for off-mains sites in Ireland and NI. Sized for seasonal peaks, PE and discharge route.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Campsite Sewage System &amp; Wastewater Treatment | Tricel\" \/>\n<meta property=\"og:description\" content=\"Campsite, caravan park and glamping wastewater treatment systems for off-mains sites in Ireland and NI. Sized for seasonal peaks, PE and discharge route.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/\" \/>\n<meta property=\"og:site_name\" content=\"Tricel Ireland - Waste Water Treatment\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-08T14:37:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Campsite-sewage-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"516\" \/>\n\t<meta property=\"og:image:height\" content=\"434\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/\"},\"author\":{\"name\":\"Damien\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#\\\/schema\\\/person\\\/e0fac50173104af2bada6ed4d6865a0e\"},\"headline\":\"Campsite sewage system\",\"datePublished\":\"2025-07-14T10:31:00+00:00\",\"dateModified\":\"2026-07-08T14:37:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/\"},\"wordCount\":2672,\"publisher\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/Campsite-sewage-1.jpg\",\"articleSection\":[\"Wastewater Treatment\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/\",\"url\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/\",\"name\":\"Campsite Sewage System & Wastewater Treatment | Tricel\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/Campsite-sewage-1.jpg\",\"datePublished\":\"2025-07-14T10:31:00+00:00\",\"dateModified\":\"2026-07-08T14:37:00+00:00\",\"description\":\"Campsite, caravan park and glamping wastewater treatment systems for off-mains sites in Ireland and NI. Sized for seasonal peaks, PE and discharge route.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#primaryimage\",\"url\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/Campsite-sewage-1.jpg\",\"contentUrl\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/Campsite-sewage-1.jpg\",\"width\":516,\"height\":434,\"caption\":\"Campsite sewage treatment\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/campsite-sewage-system\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Campsite sewage system\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#website\",\"url\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/\",\"name\":\"Tricel Ireland - Waste Water Treatment\",\"description\":\"Tricel Ireland - Waste Water Treatment\",\"publisher\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#organization\",\"name\":\"Tricel Ireland - Waste Water Treatment\",\"url\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/Tricel-Master-white.svg\",\"contentUrl\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/Tricel-Master-white.svg\",\"width\":887,\"height\":531,\"caption\":\"Tricel Ireland - Waste Water Treatment\"},\"image\":{\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\\\/#\\\/schema\\\/person\\\/e0fac50173104af2bada6ed4d6865a0e\",\"name\":\"Damien\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/42436fc9b8424428e7f043e7787294444938a73221d609656bf7c4beb3877db3?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/42436fc9b8424428e7f043e7787294444938a73221d609656bf7c4beb3877db3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/42436fc9b8424428e7f043e7787294444938a73221d609656bf7c4beb3877db3?s=96&d=mm&r=g\",\"caption\":\"Damien\"},\"sameAs\":[\"https:\\\/\\\/tricel.ie\\\/wastewater-treatment\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Campsite Sewage System & Wastewater Treatment | Tricel","description":"Campsite, caravan park and glamping wastewater treatment systems for off-mains sites in Ireland and NI. Sized for seasonal peaks, PE and discharge route.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/","og_locale":"en_US","og_type":"article","og_title":"Campsite Sewage System & Wastewater Treatment | Tricel","og_description":"Campsite, caravan park and glamping wastewater treatment systems for off-mains sites in Ireland and NI. Sized for seasonal peaks, PE and discharge route.","og_url":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/","og_site_name":"Tricel Ireland - Waste Water Treatment","article_modified_time":"2026-07-08T14:37:00+00:00","og_image":[{"width":516,"height":434,"url":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Campsite-sewage-1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#article","isPartOf":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/"},"author":{"name":"Damien","@id":"https:\/\/tricel.ie\/wastewater-treatment\/#\/schema\/person\/e0fac50173104af2bada6ed4d6865a0e"},"headline":"Campsite sewage system","datePublished":"2025-07-14T10:31:00+00:00","dateModified":"2026-07-08T14:37:00+00:00","mainEntityOfPage":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/"},"wordCount":2672,"publisher":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/#organization"},"image":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#primaryimage"},"thumbnailUrl":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Campsite-sewage-1.jpg","articleSection":["Wastewater Treatment"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/","url":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/","name":"Campsite Sewage System & Wastewater Treatment | Tricel","isPartOf":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#primaryimage"},"image":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#primaryimage"},"thumbnailUrl":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Campsite-sewage-1.jpg","datePublished":"2025-07-14T10:31:00+00:00","dateModified":"2026-07-08T14:37:00+00:00","description":"Campsite, caravan park and glamping wastewater treatment systems for off-mains sites in Ireland and NI. Sized for seasonal peaks, PE and discharge route.","breadcrumb":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#primaryimage","url":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Campsite-sewage-1.jpg","contentUrl":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Campsite-sewage-1.jpg","width":516,"height":434,"caption":"Campsite sewage treatment"},{"@type":"BreadcrumbList","@id":"https:\/\/tricel.ie\/wastewater-treatment\/campsite-sewage-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/tricel.ie\/wastewater-treatment\/"},{"@type":"ListItem","position":2,"name":"Campsite sewage system"}]},{"@type":"WebSite","@id":"https:\/\/tricel.ie\/wastewater-treatment\/#website","url":"https:\/\/tricel.ie\/wastewater-treatment\/","name":"Tricel Ireland - Waste Water Treatment","description":"Tricel Ireland - Waste Water Treatment","publisher":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tricel.ie\/wastewater-treatment\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/tricel.ie\/wastewater-treatment\/#organization","name":"Tricel Ireland - Waste Water Treatment","url":"https:\/\/tricel.ie\/wastewater-treatment\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tricel.ie\/wastewater-treatment\/#\/schema\/logo\/image\/","url":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Tricel-Master-white.svg","contentUrl":"https:\/\/tricel.ie\/wastewater-treatment\/wp-content\/uploads\/2024\/05\/Tricel-Master-white.svg","width":887,"height":531,"caption":"Tricel Ireland - Waste Water Treatment"},"image":{"@id":"https:\/\/tricel.ie\/wastewater-treatment\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/tricel.ie\/wastewater-treatment\/#\/schema\/person\/e0fac50173104af2bada6ed4d6865a0e","name":"Damien","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/42436fc9b8424428e7f043e7787294444938a73221d609656bf7c4beb3877db3?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/42436fc9b8424428e7f043e7787294444938a73221d609656bf7c4beb3877db3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/42436fc9b8424428e7f043e7787294444938a73221d609656bf7c4beb3877db3?s=96&d=mm&r=g","caption":"Damien"},"sameAs":["https:\/\/tricel.ie\/wastewater-treatment"]}]}},"_links":{"self":[{"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/pages\/1306","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/comments?post=1306"}],"version-history":[{"count":0,"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/pages\/1306\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/media\/1319"}],"wp:attachment":[{"href":"https:\/\/tricel.ie\/wastewater-treatment\/wp-json\/wp\/v2\/media?parent=1306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}