PageSourceSearch

https://www.hartman.fi/fi/english

html hartman.fi collected 2026-10-02 05:25:43 UTC 374,689 bytes, 2,146 lines download raw bytes

1<!doctype html>
2<html lang="fi">
3    <head prefix="og: http://ogp.me/ns# cms: http://ogp.me/ns/cms#">
4                <meta charset="utf-8"/>
4<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:[]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1120020501",accountID:"3356906",trustKey:"1322840",xpid:"VwUCV19TDhABVFlUDwkHVFcB",licenseKey:"NRJS-bb307877636d68d4978",applicationID:"1086880230",browserID:"1120020501"};;/*! For license information please see nr-loader-full-1.323.0.min.js.LICENSE.txt */
5(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.323.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
5e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
5const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>S,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
5if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,R(e,t)}function R(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function w(e,t,r,n,i){if(R(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(w(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(w(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function S(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let R=0,w=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(R=R>0?Math.min(R,e):e),t&&(w=w>0?Math.max(w,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return R>0?Math.min(e,R):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return w>0?Math.max(e,w):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
5o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
5(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
5;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({95:"nr-full-compressor",222:"nr-full-recorder",649:"nr-full-iframe-message-handler",89
51:"nr-full"}[e]+"-1.323.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.323.0.PROD:";r.l=(n,i,s,a)=>{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={891:"sha512-3jboCmrue7pvfLFAQ9FaZC6iM4mLMLaZF6lKolNEXSkSEV504XyvxAZYc2IA7anoBv2V+k1HPTEP1kEgaIYkeg==",222:"sha512-VSWDjY6WtlUmQRPiGWVhKHgN3DMcL8oP9fKdTus8nteEdkVzXz/VhtS6N3wJyto6jHNHRLawzAny60sfcHbBNQ==",95:"sha512-JfHJ5y7GJR1Z5RXbhGTJAaX+pDpLAzH+9IdJQc7Lc7hz3fR+zqyabKG7hPG4eQQ3dZhcuoJKdfj+OhPePveplQ==",649:"sha512-mN3SeCI8QgOG4PdhbG1UlLTWP/P9Ckx3bEoFST53PE7ctYb2Pwk/sVJpCoVwkXTlhP17BH8L/BkzHI4sD+yo6Q=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={85:0,959:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.323.0.PROD"]=self["webpackChunk:NRBA-1.323.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
5ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var R=r(9232);var w=r(7836),T=r(3241);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var A=r(9908),x=r(9752);function _(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,S)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:R.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=w.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,A.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var O=r(1863),k=r(4261),L=r(1738);var M=r(1687),P=r(4234),N=r(5289),j=r(5270),I=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends P.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,M.Ak)(e,this.featureName),t()}))}):(0,M.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
5{if((0,I.V)(e.init))try{const{setupAgentSession:t}=await r.e(891).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,A.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(649).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(891).then(r.bind(r,6589)),r.e(891).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,M.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,M.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,N.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,j.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}_(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var K=r(6630);class U extends W{static featureName=K.T;constructor(e){var t;super(e,K.T),this.setupInspectionEvents(),t=e,(0,L.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,A.p)("api-"+k.Fw,[(0,O.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(891).then(r.bind(r,908)):r.e(891).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,N.sB)(t=>{e(t,"DOMContentLoaded")}),(0,N.GG)(t=>{e(t,"load")}),(0,N.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(U),_(this,e,e.loaderType||"agent"),t=this,(0,L.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,L.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,L.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,A.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,L.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,L.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,L.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,L.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,L.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,A.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,A.p)("docHidden",[(0,O.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,A.p)("winPagehide",[(0,O.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(891).then(r.bind(r,9018))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(891).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,O.t)()){"string"==typeof e&&(e=new Error(e)),(0,A.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,A.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,O.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,O.t)()){(0,A.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,O.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
5null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,A.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,O.t)()){(0,A.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,O.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,O.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,O.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const Re=["entry","scripts","all"],we=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Se={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Ae(e){(0,L.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Se.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=R.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:R.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||Re.includes(r.timingMethod)||(Se.invalidTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||R.f.BA,"parent.id":r.parent?.id})}
5),Object.entries(r.tags).forEach(([e,t])=>{we.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Se.disabled),u(r.id)&&u(r.name)||d(()=>Se.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Se.duplicateName(r),n===r.id&&t!==r.name&&Se.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Se.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,O.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
5imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,O.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,A.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class _e extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,L.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,L.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,L.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Ae(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,A.p)("ierr",[ee(t),(0,O.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,A.p)("err",[te(t),(0,O.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,A.p)("err",[re(t),(0,O.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(891).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var Oe=r(8990);let ke=1;function Le(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,Oe.I)(e,"nr@id",function(){return ke++})}function Me(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Pe=r(8139),Ne=r(3434),je=r(5732);const Ie={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||w.ee;const n=function(e){return(e||w.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(Ie[n.debugId]++)return n;Ie[n.debugId]=1,(0,Pe.u)(r,t);var i=(0,Ne.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,je.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ke=g.gm.Request,Ue=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||w.ee).get("fetch")}(e);if(!(Ke&&Ue&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,je.$5)(t);var o;r.emit(i+"before-start",[e],n),n[w.P]&&n[w.P].dt&&(o=n[w.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
5return Ve[r.debugId]=1,We.forEach(e=>{n(Ke[Fe],e,He),n(Ue[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s,a=(0,ye.ZF)(),o=(0,ye.el)(),c=Date.now();this.agentRef.runtime?.timeKeeper?.ready&&(s=Math.floor(this.agentRef.runtime.timeKeeper.correctAbsoluteTimestamp(c)));var d={spanId:a,traceId:o,timestamp:c,timestampCorrected:s};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(d.traceContextParentHeader=this.generateTraceContextParentHeader(a,o),d.traceContextStateHeader=this.generateTraceContextStateHeader(a,s??c,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(d.newrelicHeader=this.generateTraceHeader(a,o,s??c,r,n,i)),d}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,A.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=S,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){_(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Me(i);a&&(n.txSize=a)}this.startTime=(0,O.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
5!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Le(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Le(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,O.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,O.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,O.t)()-this.xhrCbStart,this.onload,t],t)}function R(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function w(e,t){this.params={},this.metrics={},this.startTime=(0,O.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Me(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,O.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Me(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function S(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):_(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Me(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function _(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Me(e.response):"text"===r||""===r||void 0===r?Me(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,A.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",R),r.on("fetch-start",w),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(891).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||w.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Ne.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,L.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,A.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,A.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,L.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,A.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
5if(!(0,I.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Pe.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,O.t)()}),this.eventsEE.on(pt,function(e,r){(0,A.p)("bst",[e[0],r,this.bstStart,(0,O.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,O.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,A.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,A.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(891).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,L.Y)(k.CH,function(){(0,A.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,L.Y)(k.Tb,function(){(0,A.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,j.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(891).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,A.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,j.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(891),r.e(222)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var Rt=r(981);const wt={},Tt=new Set;function St(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class At{constructor(e,t){this.timestamp=(0,O.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class xt extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,L.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,L.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Ae(e),function(e){(0,L.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(wt[r.debugId]++)return r;wt[r.debugId]=1,(0,V.G)(()=>{const e=(0,O.t)();Tt.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
5class n extends WebSocket{static name=Rt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new At(e[0],e[1]),this.targets=(0,je.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,O.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),Tt.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=St(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,O.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,Tt.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=St(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,A.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,A.p)("spv",[_t(e),(0,O.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,A.p)("spv",[_t(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,A.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
5h(e=>{const t=(0,C.s)(e=>{(0,A.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,A.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,A.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,A.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,A.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(891).then(r.bind(r,8019))):this.deregisterDrain()}}function _t(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Ot=r(2646);const kt=new Map;function Lt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||w.ee).get("logger")}(e),o=(0,Ne.YM)(a,void 0,s),c=new Ot.y(w.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Ne.Jt]||t[r];return kt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>kt.get(d),void 0,!0),a}var Mt=r(1910);class Pt extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,L.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,L.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Lt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Ae(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Mt.i)(g.gm.console[t]),Lt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(891).then(r.bind(r,5288)))}}new F({features:[U,G,vt,Et,nt,Y,_e,xt,Pt],loaderType:"pro"})})()})();</script>
5
6<meta name="title" content="About Hartman Hartman"/>
7<meta name="keywords" content="Magento, Varien, E-commerce"/>
8<meta name="robots" content="INDEX,FOLLOW"/>
9<meta name="viewport" content="width=device-width, initial-scale=1"/>
10<meta name="format-detection" content="telephone=no"/>
11<title>About Hartman Hartman</title>
12<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/mage/calendar.min.css" />
13<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Mageplaza_Blog/css/mpBlogIcon.min.css" />
14<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Markup_Paytrail/css/payment-page-bypass.min.css" />
15<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Markup_Smartship/css/agent-search.min.css" />
16<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/css/styles-m.min.css" />
17<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/jquery/uppy/dist/uppy-custom.min.css" />
18<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Amasty_LibSwiperJs/vendor/swiper/swiper.min.css" />
19<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Amasty_Storelocator/vendor/chosen/chosen.min.css" />
20<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/MageWorx_Downloads/attachment.min.css" />
21<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Magento_PageBuilder/js/resource/slick/slick.min.css" />
22<link  rel="stylesheet" type="text/css"  media="all" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Solteq_PaymentLogos/css/payment-logos.min.css" />
23<link  rel="stylesheet" type="text/css"  media="screen and (min-width: 768px)" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/css/styles-l.min.css" />
24<link  rel="stylesheet" type="text/css"  media="print" href="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/css/print.min.css" />
25
26
27
28
29
30
31
32<link  rel="icon" type="image/x-icon" href="https://www.hartman.fi/media/favicon/default/favico.png" />
33<link  rel="shortcut icon" type="image/x-icon" href="https://www.hartman.fi/media/favicon/default/favico.png" />
34
35<style> #ui-id-1 li.level0.ambrands-menu-item { display: none; } </style>
36
37 <!--4d647d6f4aac4c03a96a1ce8eabc5cf3-->
38<meta name="facebook-domain-verification" content="9xtip4leosubx3v5yad5wqx6lb4i9o" />
39<meta name="google-site-verification" content="k6fFKSaPiQNrLYJjEPMFnvAeWyGHBGEnkBalEwewpJE" />                
39<script exclude-this-tag="text/x-magento-template">
40        window.getWpGA4Cookie = function(name) {
41            match = document.cookie.match(new RegExp(name + '=([^;]+)'));
42            if (match) return decodeURIComponent(match[1].replace(/\+/g, ' ')) ;
43        };
44
45        window.dataLayer = window.dataLayer || [];
46                var dl4Objects = [{"pageName":"About Hartman Hartman","pageType":"other","hartman_customer_type":"NOT LOGGED IN"}];
47        for (var i in dl4Objects) {
48            window.dataLayer.push({ecommerce: null});
49            window.dataLayer.push(dl4Objects[i]);
50        }
51                var wpGA4Cookies = ['wp_ga4_user_id','wp_ga4_customerGroup'];
52        wpGA4Cookies.map(function(cookieName) {
53            var cookieValue = window.getWpGA4Cookie(cookieName);
54            if (cookieValue) {
55                var dl4Object = {};
56                dl4Object[cookieName.replace('wp_ga4_', '')] = cookieValue;
57                window.dataLayer.push(dl4Object);
58            }
59        });
60    </script>
60
61
62    <!-- Google Tag Manager -->
63<script exclude-this-tag="text/x-magento-template">
vendor: 331 bytes, lines 63-67
63(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
64new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
65j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
66'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
67})(window,document,'script','dataLayer','
67GTM-WLP5V2J
vendor: 3 bytes, line 67
67');
67</script>
67
68<!-- End Google Tag Manager -->    
69<link rel="stylesheet" type="text/css" media="all" href="https://www.hartman.fi/fi/asset/dynamic/assets/m/iult/f/cfg.css/" />
70    <link href="//fonts.googleapis.com/css?family=Titillium+Web:400,700|Open+Sans:400,600,700" rel="stylesheet" type="text/css" />
71
72    </head>
73    <body data-container="body"
74          data-mage-init='{"loaderAjax": {}, "loader": { "icon": "https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/images/loader-2.gif"}}'
75        id="html-body" class="cms-english page-layout-1column cms-page-view page-layout-cms-full-width">
76        <!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 76-77
76
77<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
77GTM-WLP5V2J
vendor: 85 bytes, lines 77-78
77"
78height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
79<!-- End Google Tag Manager (noscript) -->
80
81
82<div class="cookie-status-message" id="cookie-status">
83    The store will not work correctly when cookies are disabled.</div>
84
85
86
87
88    <noscript>
89        <div class="message global noscript">
90            <div class="content">
91                <p>
92                    <strong>JavaScript seems to be disabled in your browser.</strong>
93                    <span>
94                        For the best experience on our site, be sure to turn on Javascript in your browser.                    </span>
95                </p>
96            </div>
97        </div>
98    </noscript>
99
100<!-- ko scope: 'company' -->
101<div class="message company-warning _hidden" data-bind="css: { _hidden: !isCompanyBlocked() }">
102<span>
103<!-- ko i18n: 'Your company account is blocked and you cannot place orders. If you have questions, please contact your company administrator.' --><!-- /ko -->
104</span>
105</div>
106<!-- /ko -->
107
108    
109
110    
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162<div class="page-wrapper off-canvas-content"><div class="price-display-mode-container" data-bind="scope:'price-display-notification'">
163    <div  style="display: none;"  class="alert price-mode-alert" data-bind="visible: displayWithoutTax" aria-hidden="true">
164        <span>Hintojen näyttö verottomana on käytössä</span>
165    </div>
166</div>
167
168<div id="header-container" class="header-container header-mobile page-header"  >
169<div id="top" class="header-container2">
170<div class="header-container3">
171
172        <!-- Part of the header displayed only in mobile mode -->
173    <div class="header-m-container">
174        <div class="header-m-primary-container">
175            <div class="header-m-primary header container">
176                <div class="mobile-header-wrapper">
177                    <div class="mobile-header">
178                        <div class="left-side">
179                            <a href="#" class="off-canvas-toggle" data-toggle="off-canvas" aria-label="canvas toggle">
180                                <span class="icon hartman-icon h-nav"></span>
181                            </a>
182                        </div>
183                        <div class="center">
184                            <!-- Mobile logo -->
185                            <div class="item logo-wrapper">
186                                <a class="logo" aria-label="logo"  href="https://www.hartman.fi/fi/" title="">
187    <strong></strong>
188    <img src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/images/logo_white.svg"
189         alt=""
190        width="160"        height="34"    />
191</a>
192                            </div>
193                        </div>
194                        <div class="right-side">
195                                                            <div class="item">
196                                    <div class="store-filter-wrapper">
197    <div data-bind="scope:'store-filter-header'">
198        <div  style="display: none;"  data-bind="visible: true" aria-hidden="true">
199            <!-- ko if: storeFilter().active_filter -->
200            <div class="store-filter-inner-container">
201                <div class="hartman-icon store-filter-icon h-home-2 filter-active" data-bind="click: triggerModal">
202                    <span class="label store-filter-label">
203                        <span data-bind="text: storeFilter().active_filter"></span>
204                    </span>
205                </div>
206
207                <!-- ko if: !storeFilter().lock_warehouse_selection -->
208                <a href="#" data-bind="click: clearFilter" class="clear-filter"></a>
209                <!-- /ko -->
210            </div>
211            <!-- /ko -->
212
213            <!-- ko ifnot: storeFilter().active_filter -->
214            <div class="store-filter-inner-container">
215                <span data-bind="click: triggerModal" class="hartman-icon icon store-filter-icon h-home-2 filter-inactive">
216                    <span class="label store-filter-label hide-mobile">Valitse myymälä</span>
217                </span>
218            </div>
219            <!-- /ko -->
220        </div>
221    </div>
222    <div id="store-filter-modal"  style="display: none"  aria-hidden="true">
223        <div class="modal-body-content store-filter-modal-content" data-bind="scope:'store-filter-selection'">
224            <h3 role="heading">Myymälävalinta</h3>
225            <div class="store-filter-info-box">
226                <div class="info-icon" aria-hidden="true">i</div>
227                <div class="info-text">
228                    <p>Kun valitset myymälän, vain kyseisessä myymälässä myytävät tuotteet näkyvät verkkokaupassa.</p>
229                </div>
230            </div>
231            <ul data-bind="foreach: { data: sourceData, as: 'item', noChildContext: true }">
232                <li>
233                    <!-- ko if: item.locked -->
234                        <span data-bind="text: item.name, style: { fontWeight: item.current ? 'bold' : 'normal', color: '#8e8e8e'}"></span>
235                    <!-- /ko -->
236
237                    <!-- ko if: !item.locked -->
238                        <a href="#" data-bind="click: setStoreFilter.bind($data, item.code, false)">
239                            <span data-bind="text: item.name, style: { fontWeight: item.current ? 600 : 'normal'}"></span>
240                        </a>
241                    <!-- /ko -->
242                </li>
243            </ul>
244        </div>
245    </div>
246</div>
247
248    <div class="authorization-link" data-label="tai">
249        <a href="https://www.hartman.fi/fi/customer/account/login/referer/aHR0cHM6Ly93d3cuaGFydG1hbi5maS9maS9lbmdsaXNo/">
250            <i class="icon ic ic-user" aria-hidden="true"></i>
251            <span class="hide-mobile">Kirjaudu/Rekisteröidy</span>
252        </a>
253    </div>
254
255
256                                </div>
257                                                                                        <div class="item mini-cart-wrapper">
258                                    <div id="mini-cart-marker-mobile"></div>
259                                    <div data-block="minicart" class="minicart-wrapper mini-cart filled-heading" id="minicart">         <div data-skiptarget="#header-cart" class="mini-cart-heading dropdown-heading skip-link skip-cart action showcart counter-over-top" data-bind="scope: 'minicart_content'">
260        <span class="inner-heading">
261            <span class="hartman-icon h-cart"></span>
262            <span class="counter qty empty ic ic-char ib ib-square"
263                  data-bind="css: { empty: !!getCartParam('summary_count') == false }, blockLoader: isLoading">
264                <span class="counter-number"><!-- ko text: getCartParam('summary_count') --><!-- /ko --></span>
265                <span class="counter-label">
266                <!-- ko if: getCartParam('summary_count') -->
267                    <!-- ko text: getCartParam('summary_count') --><!-- /ko -->
268                    <!-- ko i18n: 'items' --><!-- /ko -->
269                <!-- /ko -->
270                </span>
271            </span>
272        </span>
273    </div>
274            <div id="header-cart" class="mini-cart-content dropdown-content skip-content skip-content--style block-cart block block-minicart empty"
275            data-role="dropdownDialog"
276            data-mage-init='{"dropdownDialog":{
277                "triggerEvent": "click",
278                "appendTo": "[data-block=minicart]",
279                "triggerTarget": ".showcart",
280                "timeout": "200",
281                "closeOnMouseLeave": true,
282                "closeOnEscape": true,
283                "parentClass": "active open",
284                "buttons": []}}'>
285            <div id="minicart-content-wrapper" data-bind="scope: 'minicart_content'">
286                <!-- ko template: getTemplate() --><!-- /ko -->
287            </div>
288                    </div>
289        
290    
291    
292</div>
293                                </div>
294                                                    </div>
295                    </div>
296
297                    <div class="mobile-search">
298                        <div id="search-marker-mobile"></div>
299                        <div id="header-search" class="skip-content skip-content--style">
300<div id="block-search" class="block block-search search-wrapper size-l">     <div class="block block-title"><strong>Hae</strong></div>
301    <div class="block block-content">
302        <form class="form minisearch" id="search_mini_form" action="https://www.hartman.fi/fi/catalogsearch/result/" method="get">
303            <div class="field search">
304                                <div class="control">
305                    <input aria-label="Form" id="search"
306                           data-mage-init='{"quickSearch":{
307                                "formSelector":"#search_mini_form",
308                                "url":"https://www.hartman.fi/fi/search/ajax/suggest/",
309                                "destinationSelector":"#search_autocomplete"}
310                           }'
311                           type="text"
312                           name="q"
313                           value=""
314                           placeholder="Hae tuotteita..."
315                           class="input-text"
316                           maxlength="128"
317                           role="combobox" aria-expanded="false"
318                           aria-haspopup="false"
319                           aria-autocomplete="both"
320                           autocomplete="off"/>
321                    <div id="search_autocomplete" class="search-autocomplete"></div>
322                                    </div>
323            </div>
324            <div class="actions">
325                <button aria-label="Button" id="action-search" type="submit"
326                        title="Hae"
327                        class="action search">
328                    <span class="hartman-icon h-search icon ic ib ib-square ib-hover"></span>
329                </button>
330            </div>
331        </form>
332    </div>
333</div> <!-- end: block-search -->
334</div>
335                    </div>
336                </div> <!-- end: inner-container -->
337            </div> <!-- end: header-m-primary -->
338        </div> <!-- end: header-m-primary-container -->
339
340    </div> <!-- end: header-m-container -->
341    
342    <!-- Part of the header displayed only in regular mode -->
343    <div class="header-top-container">
344        <div class="header-top header container clearer">
345            <div class="inner-container">
346
347                <a class="action skip contentarea"
348   href="#contentarea">
349    <span>
350        Skip to Content    </span>
351</a>
352
353                                
354                <div class="left-column">
355
356                    
357                    
358                    
359                                            <div class="item item-left">
360                            <div class="item link compare" data-bind="scope: 'compareProducts'" data-role="compare-products-link">
361    <a class="action compare no-display" title="Vertaa tuotteita"
362       data-bind="attr: {'href': compareProducts().listUrl}, css: {'no-display': !compareProducts().count}"
363    >
364        Vertaa tuotteita        <span class="counter qty" data-bind="text: compareProducts().countCaption"></span>
365    </a>
366</div>
367
368                        </div>
369                    
370                </div> <!-- end: left column -->
371
372                <div class="right-column">
373
374                                                                        <div class="item item-right item-interface"><div id="user-menu-wrapper-regular">
375    <div id="user-menu" class="user-menu">
376
377        
378        
379        
380        
381                
382        
383        
384        
385                
386        
387                    <div id="account-links-marker-regular"></div>        
388        
389        
390    </div> <!-- end: user-menu -->
391</div>
392</div>
393                                            
394                                            <div class="item item-right store-filter-container"><div class="store-filter-wrapper">
395    <div data-bind="scope:'store-filter-header'">
396        <div  style="display: none;"  data-bind="visible: true" aria-hidden="true">
397            <!-- ko if: storeFilter().active_filter -->
398            <div class="store-filter-inner-container">
399                <div class="hartman-icon store-filter-icon h-home-2 filter-active" data-bind="click: triggerModal">
400                    <span class="label store-filter-label">
401                        <span data-bind="text: storeFilter().active_filter"></span>
402                    </span>
403                </div>
404
405                <!-- ko if: !storeFilter().lock_warehouse_selection -->
406                <a href="#" data-bind="click: clearFilter" class="clear-filter"></a>
407                <!-- /ko -->
408            </div>
409            <!-- /ko -->
410
411            <!-- ko ifnot: storeFilter().active_filter -->
412            <div class="store-filter-inner-container">
413                <span data-bind="click: triggerModal" class="hartman-icon icon store-filter-icon h-home-2 filter-inactive">
414                    <span class="label store-filter-label hide-mobile">Valitse myymälä</span>
415                </span>
416            </div>
417            <!-- /ko -->
418        </div>
419    </div>
420    <div id="store-filter-modal"  style="display: none"  aria-hidden="true">
421        <div class="modal-body-content store-filter-modal-content" data-bind="scope:'store-filter-selection'">
422            <h3 role="heading">Myymälävalinta</h3>
423            <div class="store-filter-info-box">
424                <div class="info-icon" aria-hidden="true">i</div>
425                <div class="info-text">
426                    <p>Kun valitset myymälän, vain kyseisessä myymälässä myytävät tuotteet näkyvät verkkokaupassa.</p>
427                </div>
428            </div>
429            <ul data-bind="foreach: { data: sourceData, as: 'item', noChildContext: true }">
430                <li>
431                    <!-- ko if: item.locked -->
432                        <span data-bind="text: item.name, style: { fontWeight: item.current ? 'bold' : 'normal', color: '#8e8e8e'}"></span>
433                    <!-- /ko -->
434
435                    <!-- ko if: !item.locked -->
436                        <a href="#" data-bind="click: setStoreFilter.bind($data, item.code, false)">
437                            <span data-bind="text: item.name, style: { fontWeight: item.current ? 600 : 'normal'}"></span>
438                        </a>
439                    <!-- /ko -->
440                </li>
441            </ul>
442        </div>
443    </div>
444</div>
445
446    <div class="authorization-link" data-label="tai">
447        <a href="https://www.hartman.fi/fi/customer/account/login/referer/aHR0cHM6Ly93d3cuaGFydG1hbi5maS9maS9lbmdsaXNo/">
448            <i class="icon ic ic-user" aria-hidden="true"></i>
449            <span class="hide-mobile">Kirjaudu/Rekisteröidy</span>
450        </a>
451    </div>
452
453
454</div>
455                    
456                    
457                </div> <!-- end: right column -->
458
459            </div> <!-- end: inner-container -->
460        </div> <!-- end: header-top -->
461    </div> <!-- end: header-top-container -->
462
463    <div class="header-primary-container">
464        <div class="header-primary header container">
465            <div class="inner-container">
466
467                                
468                                <div class="hp-blocks-holder">
469
470                                            <!-- Left column -->
471                        <div class="hp-block left-column grid12-3">
472                                                                                                                            <div class="item"><div class="logo-wrapper logo-wrapper--regular">        <a class="logo" href="https://www.hartman.fi/fi/" title="" aria-label="Hartman logo">
473            <strong></strong>
474            <span class="sr-only">Hartman logo</span>
475            <img src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/images/logo.svg"
476                 alt="Hartman homepage"
477                 width="171"                 height="36"            />
478        </a>
479</div></div>
480                                                                                    </div> <!-- end: left column -->
481                    
482                                            <!-- Central column -->
483                        <div class="hp-block central-column grid12-5">
484                                                                                                                            <div class="item"><div id="search-marker-regular"></div></div>
485                                                                                    </div> <!-- end: central column -->
486                    
487                                            <!-- Right column -->
488                        <div class="hp-block right-column grid12-4">
489                                                                                                                            <div class="item"><div id="mini-cart-marker-regular"></div></div>
490                                                                    <div class="item"><div id="lang-switcher-wrapper-regular" class="header-icon-link">
491<div class="dropdown-block filled-heading dropdown-block-trigger lang-switcher" id="switcher-language">
492    <div class="dropdown-heading">
493        <span class="inner-heading view-fi" title="Kieli">
494            <span class="label">suomi</span>
495            <span class="hartman-icon h-globe"></span>
496            <span class="caret"></span>
497        </span>
498    </div>
499    <ul class="dropdown-content">
500                                                                            <li class="view-sv switcher-option">
501                        <a href="https://www.hartman.fi/fi/stores/store/redirect/___store/sv/___from_store/fi/uenc/aHR0cHM6Ly93d3cuaGFydG1hbi5maS9zdi9lbmdsaXNo/">
502                            svenska                        </a>
503                    </li>
504                                            <hr>
505                                                <li class="view-fi switcher-option">
506                    <a href="https://www.hartman.fi/fi/english">english</a>
507                </li>
508                                                <li class="view-sv switcher-option">
509                    <a href="https://www.hartman.fi/sv/danish">dansk</a>
510                </li>
511                                    </ul>
512</div>
513</div></div>
514                                                                    <div class="item"><div class="header-icon-link contact-link"><style>#html-body [data-pb-style=JGPILW0]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;margin-left:0;margin-top:0;margin-right:0}#html-body [data-pb-style=GH0GM6F]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="JGPILW0"><div data-content-type="html" data-appearance="default" data-element="main" data-pb-style="GH0GM6F" data-decoded="true"><div class="dropdown-block">
515    <div class="dropdown-heading">
516        <a href="https://www.hartman.fi/fi/yhteystiedot" title="Yhteystiedot">
517            <div class="inner-heading">
518                <span class="hartman-icon h-location"></span>
519                <span class="label">Yhteystiedot</span>
520            </div>
521        </a>
522    </div>
523</div>
524
525</div></div></div></div></div>
526                                                                                    </div> <!-- end: right column -->
527                    
528                </div> <!-- end: hp-blocks-holder -->
529
530            </div> <!-- end: inner-container -->
531        </div> <!-- end: header-primary -->
532    </div> <!-- end: header-primary-container -->
533
534            <div class="nav-container skip-content sticky-container' ">
535
536            <div class="navi-wrapper">
537                <nav id="mainmenu" class="navi nav-regular">
538                    <div class="pages-navigation">
539                        <div class="container">
540                            <div class="inner-container">
541                                <ul class="toggle-products">
542    <li class="level0 level-top nav-item parent-item">
543        <a href="javascript:void(0);" class="level-top" data-toggle="off-canvas">
544            <span class="products-icon">
545                <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32" aria-label="Icon SVG">
546                    <path class="icon" fill="#FFF" fill-rule="evenodd" d="M29 21.879l-5 5V10.12l5-5v16.758zm-26 7.12h18V11H3v18zm7.121-26h16.758l-5 5H5.121l5-5zM31.632.516h-.001c-.065-.074-.137-.142-.215-.203h-.001V.31c-.227-.174-.504-.285-.806-.307h-.001L30.489 0H9.5c-.397 0-.779.158-1.061.44L.44 8.439c-.139.139-.251.306-.327.49l-.007.024C.04 9.123 0 9.307 0 9.5v21c0 .828.672 1.5 1.5 1.5h21c.193 0 .377-.04.547-.106l.023-.007c.185-.076.352-.188.491-.326l8-8c.281-.282.439-.663.439-1.061V1.496c-.001-.375-.14-.718-.368-.981z"/>
547                </svg>
548            </span>
549            Tuotteet            <span class="caret"></span>
550        </a>
551    </li>
552</ul>
553                                
554<!-- Pages menu -->
555<ul class="pages-menu" role="menubar" data-mage-init='{"menu":{"responsive":true, "expanded":true, "position":{"my":"left top","at":"left bottom"}}}'>
556    <li class="level0  ambrands-menu-item"
557    data-ambrands-js="brands-menu-link">
558            <a href="https://www.hartman.fi/fi/tuotemerkki/"
559           class="level-top ambrands-link"
560           title="Tuotemerkit">
561            Tuotemerkit        </a>
562    </li>
563<li role="none"  class="level0 nav-1 first level-top nav-item"><a href="https://www.hartman.fi/fi/rautakauppa" role="menuitem"  class="level-top" ><span>Kuluttajille</span></a></li><li role="none"  class="level0 nav-2 level-top nav-item"><a href="https://www.hartman.fi/fi/ammattirakentajille" role="menuitem"  class="level-top" ><span>Ammattirakentajille</span></a></li><li role="none"  class="level0 nav-3 level-top nav-item"><a href="https://www.hartman.fi/fi/jalleenmyyjille" role="menuitem"  class="level-top" ><span>Jälleenmyyjille</span></a></li><li role="none"  class="level0 nav-4 level-top nav-item"><a href="https://www.hartman.fi/fi/teollisuus" role="menuitem"  class="level-top" ><span>Teollisuudelle</span></a></li><li role="none"  class="level0 nav-5 level-top nav-item"><a href="https://www.hartman.fi/fi/inspiraatio" role="menuitem"  class="level-top" ><span>Esitteet</span></a></li><li role="none"  class="level0 nav-6 level-top nav-item"><a href="https://www.hartman.fi/fi/historia" role="menuitem"  class="level-top" ><span>Historia</span></a></li><li role="none"  class="level0 nav-7 level-top nav-item"><a href="https://www.hartman.fi/fi/export" role="menuitem"  class="level-top" ><span>Vienti</span></a></li>    </ul>
564                            </div>
565                        </div>
566                    </div>
567                </nav>
568            </div>
569
570        </div>
571    
572</div> <!-- end: header-container3 -->
573</div> <!-- end: header-container2 -->
574</div> <!-- end: header-container -->
575
576<div class="main-container"><div class="main container"><div class="inner-container"><div class="breadcrumbs">
577    <ul class="items">
578                    <li class="item home">
579                            <a href="https://www.hartman.fi/fi/"
580                   title="Siirry etusivulle">
581                    Etusivu                </a>
582                        </li>
583                    <li class="item cms_page">
584                            <strong>About Hartman</strong>
585                        </li>
586            </ul>
587</div>
588<main id="maincontent" class="page-main-full-width"><a id="contentarea" tabindex="-1"></a>
589<div class="page messages"><div data-placeholder="messages"></div>
590<div data-bind="scope: 'messages'">
591    <!-- ko if: cookieMessagesObservable() && cookieMessagesObservable().length > 0 -->
592    <div aria-atomic="true" role="alert" class="messages" data-bind="foreach: {
593        data: cookieMessagesObservable(), as: 'message'
594    }">
595        <div data-bind="attr: {
596            class: 'message-' + message.type + ' ' + message.type + ' message',
597            'data-ui-id': 'message-' + message.type
598        }">
599            <div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div>
600        </div>
601    </div>
602    <!-- /ko -->
603
604    <div aria-atomic="true" role="alert" class="messages" data-bind="foreach: {
605        data: messages().messages, as: 'message'
606    }, afterRender: purgeMessages">
607        <div data-bind="attr: {
608            class: 'message-' + message.type + ' ' + message.type + ' message',
609            'data-ui-id': 'message-' + message.type
610        }">
611            <div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div>
612        </div>
613    </div>
614</div>
615
616
617</div><div class="columns"><div class="column main"><input name="form_key" type="hidden" value="9wVVivLyK9RExHEm" /><div id="authenticationPopup" data-bind="scope:'authenticationPopup', style: {display: 'none'}">
618            <!-- ko template: getTemplate() --><!-- /ko -->
619        
620</div>
621
622
623
624
625
626
627<style>#html-body [data-pb-style=LCNRB1A],#html-body [data-pb-style=X5705AU]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;padding:10px}#html-body [data-pb-style=LCNRB1A]{border-style:none;border-width:1px;border-radius:0;margin:0 0 10px}#html-body [data-pb-style=X5705AU]{margin:50px 0 10px}#html-body [data-pb-style=HMNF6RX],#html-body [data-pb-style=OUMIAUO],#html-body [data-pb-style=X5705AU]{border-style:none;border-width:1px;border-radius:0}#html-body [data-pb-style=OUMIAUO]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;margin:0 0 10px;padding:10px}#html-body [data-pb-style=JIS8TY8]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}#html-body [data-pb-style=K636WNP]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;margin-top:20px;margin-bottom:20px;align-self:stretch}#html-body [data-pb-style=OLUX93S]{display:flex;width:100%}#html-body [data-pb-style=YRVXJ5C]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:41.6667%;align-self:stretch}#html-body [data-pb-style=DM32YCS]{margin-right:20px}#html-body [data-pb-style=F1SO8GE]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:58.3333%;align-self:stretch}#html-body [data-pb-style=BNRMCUS]{margin:10px 0 0}#html-body [data-pb-style=DCQW0KL]{border-style:none;border-width:1px;border-radius:0;padding:0}#html-body [data-pb-style=GEVRI0J]{margin-top:20px;margin-bottom:10px}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div class="top-image background-image-6abf40557512e" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images='{\"desktop_image\":\"https://www.hartman.fi/media/wysiwyg/hartman_talo.jpg\"}' data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="LCNRB1A"></div><style type="text/css">.background-image-6abf40557512e {background-image: url(https://www.hartman.fi/media/wysiwyg/hartman_talo.jpg);}</style></div><div data-content-type="row" data-appearance="contained" data-element="main"><div class="top-text" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="X5705AU"><h1 data-content-type="heading" data-appearance="default" data-element="main" data-pb-style="HMNF6RX">Hartman 1862</h1><div data-content-type="text" data-appearance="default" data-element="main"><p>Hartman Group consists of the parent company Oy C.J. Hartman Ab, the subsidiary Hartman Rauta Oy and the sister company Oy Hartman Invest Ab. Hartman Group has approx. 260 employees.</p></div></div></div><div data-content-type="row" data-appearance="contained" data-element="main"><div class="first-content-row" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="OUMIAUO"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="JIS8TY8"><p><strong>Oy C.J. Hartman Ab</strong> deals with the financial management, real estate, and other auxiliary activities of the Group.</p>
628<p><strong>Oy Hartman Invest Ab</strong> owns and administers the Hartman house real estate in downtown Va
628asa.</p></div><div data-content-type="text" data-appearance="default" data-element="main"><p><strong>Hartman Rauta Oy</strong> not only conducts wholesale and retail sales in the building materials and hardware sector, with outlets located in Kokkola, Pietarsaari, Sein&auml;joki, Vaasa, Tampere, and Espoo but also engages in the <a tabindex="0" href="https://www.hartman.fi/fi/export" target="_blank" rel="noopener">export of timber products</a>, extending its market reach to international clients. Furthermore, the company is involved in importing a variety of building materials, enhancing its product range and meeting diverse customer needs by sourcing high-quality materials from around the globe.</p>
629<p>Through our customers and contacts, it is possible to reach a wide user base in the Finnish market area in the use of industrial wood products. As our operations are nationwide, we serve our customers through all our Hartman units and from our import warehouses. We have an extensive national distribution network that covers the entire country. Through Harman's units and our retail network, we can also reach DIY- and consumer sector.</p>
630<p>Hartman has in the Finnish market, the widest range of products built to cover the needs of professional construction and decoration as well as the industrial use of processed wood products and resale.</p></div><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="12" data-element="main" data-pb-style="K636WNP"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="OLUX93S"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="YRVXJ5C"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="DM32YCS"><h4>Our largest customer groups are:</h4>
631<p>&middot; Prefabricated house and construction industry<br>&middot; Kitchen and furniture industry<br>&middot; Panel and molding industry<br>&middot; Interior and exterior door industry<br>&middot; Packaging industry<br>&middot; Professional builders<br>&middot; Retailers.</p>
632<h4>The ready-to-deliver stock selection includes the following main groups:</h4>
633<p>&middot; Softwood and Hardwood Plywood both in baseboards and Film faced.<br>&middot; OSB3 and OSB4 boards<br>&middot; MDF and HDF boards as well as Hardboards and Fiberboards<br>&middot; LVL- and glulam beams and studs for construction and industrial use<br>&middot; Chipboards and wide range of decors in MFC-boards<br>&middot; HPL and CPL products for furniture and interior and facade surfaces.<br>&middot; Lumber and processed lumber products.</p></div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="F1SO8GE"><div data-content-type="video" data-appearance="default" data-element="main" data-pb-style="BNRMCUS"><div class="pagebuilder-video-inner" data-element="inner"><div class="pagebuilder-video-wrapper" data-element="wrapper" data-pb-style="DCQW0KL"><div class="pagebuilder-video-container"><iframe frameborder="0" allowfullscreen="" src="https://www.youtube.com/embed/EjzoohccDJY" data-element="video"></iframe></div></div></div></div></div></div></div><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="GEVRI0J"><h5>To reach us for future co-operation in Finnish market, please contact</h5></div><div class="persons" data-content-type="products" data-appearance="grid" data-element="main">        <div class="block widget block-products-list grid">
634                <div class="block-content">
635            <!-- person_widget_image-->            <div class="products-grid grid">
636                <ol class="product-items widget-product-grid">
637                                                                <li class="product-item">                        <div class="product-item-info">
638
639                            <div class="product-item-img">
640                                <span class="product-image-container" style="width:140px;">
641    <span class="product-image-wrapper" style="padding-bottom: 100%;">
642        <img class="product-image-photo lazyload" data-src="https://www.hartman.fi/media/catalog/product/o/s/osto_lokka_seppo_1.jpg?optimize=medium&amp;fit=bounds&amp;height=140&amp;width=140" max-width="140" max-height="140" alt="Seppo Lokka"></span>
643</span>
644                            </div>
645
646                            <div class="product-item-details">
647
648                                <strong class="product-item-name">
649                                    <h3 role="heading"><span>Seppo Lokka</span></h3>
650                                </strong>
651
652                                
653                                <div class="product-item-attributes">
654                                    <p class="title">Director</p>
655                                    <p class="display-sales-unit"></p>
656                                    <p class="know-how"></p>
657                                    <p class="office-phone">
658                                                                                    <a href="tel:35834475160">+3583 447 5160</a>
659                                                                            </p>
660                                    <p class="mobile-phone">
661                                                                                    <a href="tel:358505987555">+35850 598 7555</a>
662                                                                            </p>
663                                    <p class="email">
664                                                                                    <a href="mailto:[email protected]">[email protected]</a>
665                                                                            </p>
666                                    <hr>
667
668                                    <p class="sales-unit">
669                                                                                                                                                                            <a class="sales-unit-link" href="tampere">
670                                                     Tampere                                                    <span class="hartman-icon h-arrow">
671                                                </span></a>
672                                                                                                                        </p>
673                                </div>
674
675                                
676                            </div>
677                        </div>
678                        </li>                                    </ol>
679            </div>
680                    </div>
681    </div>
682</div></div></div></div></div></main></div></div></div><div class="payment-logos-wrapper"><section class="payment-logos" aria-labelledby="payment-logos-title"
683         data-mage-init='{"Solteq_PaymentLogos/js/payment-logos":{"interval":3000,"threshold":6}}'>
684    <div class="payment-logos__inner">
685        <h3 id="payment-logos-title" class="payment-logos__title">
686                            <a class="payment-logos__title-link"
687                   href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
688                   target="_blank"
689                   rel="noopener">
690                    Maksutavat                </a>
691                    </h3>
692        <div class="payment-logos__viewport" data-role="payment-logos-viewport">
693            <div class="payment-logos__track" data-role="payment-logos-track">
694                                    <div class="payment-logos__item">
695                                                                            <a class="payment-logos__link"
696                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
697                               target="_blank"
698                               rel="noopener"
699                               aria-label="Osuuspankki">
700                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/op.jpg" alt="Osuuspankki" loading="lazy" draggable="false"/>                            </a>
701                                            </div>
702                                    <div class="payment-logos__item">
703                                                                            <a class="payment-logos__link"
704                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
705                               target="_blank"
706                               rel="noopener"
707                               aria-label="Nordea">
708                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/nordea.jpg" alt="Nordea" loading="lazy" draggable="false"/>                            </a>
709                                            </div>
710                                    <div class="payment-logos__item">
711                                                                            <a class="payment-logos__link"
712                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
713                               target="_blank"
714                               rel="noopener"
715                               aria-label="Danske&#x20;Bank">
716                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/danskebank.jpg" alt="Danske&#x20;Bank" loading="lazy" draggable="false"/>                            </a>
717                                            </div>
718                                    <div class="payment-logos__item">
719                                                                            <a class="payment-logos__link"
720                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
721                               target="_blank"
722                               rel="noopener"
723                               aria-label="S-Pankki">
724                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/s-pankki.jpg" alt="S-Pankki" loading="lazy" draggable="false"/>                            </a>
725                                            </div>
726                                    <div class="payment-logos__item">
727                                                                            <a class="payment-logos__link"
728                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
729                               target="_blank"
730                               rel="noopener"
731                               aria-label="Oma&#x20;Sp">
732                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/omasp.jpg" alt="Oma&#x20;Sp" loading="lazy" draggable="false"/>                            </a>
733                                            </div>
734                                    <div class="payment-logos__item">
735                                                                            <a class="payment-logos__link"
736                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
737                               target="_blank"
738                               rel="noopener"
739                               aria-label="POP&#x20;Pankki">
740                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/Pop_pankki.jpg" alt="POP&#x20;Pankki" loading="lazy" draggable="false"/>                            </a>
741                                            </div>
742                                    <div class="payment-logos__item">
743                                                                            <a class="payment-logos__link"
744                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
745                               target="_blank"
746                               rel="noopener"
747                               aria-label="Aktia">
748                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/aktia.jpg" alt="Aktia" loading="lazy" draggable="false"/>                            </a>
749                                            </div>
750                                    <div class="payment-logos__item">
751                                                                            <a class="payment-logos__link"
752                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
753                               target="_blank"
754                               rel="noopener"
755                               aria-label="S&#xE4;&#xE4;st&#xF6;pankki">
756                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/S_st_pankki.jpg" alt="S&#xE4;&#xE4;st&#xF6;pankki" loading="lazy" draggable="false"/>                            </a>
757                                            </div>
758                                    <div class="payment-logos__item">
759                                                                            <a class="payment-logos__link"
760                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
761                               target="_blank"
762                               rel="noopener"
763                               aria-label="&#xC5;landsbanken">
764                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/_landsbanken.jpg" alt="&#xC5;landsbanken" loading="lazy" draggable="false"/>                            </a>
765                                            </div>
766                                    <div class="payment-logos__item">
767                                                                            <a class="payment-logos__link"
768                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
769                               target="_blank"
770                               rel="noopener"
771                               aria-label="Apple&#x20;Pay">
772                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/apple_pay.jpg" alt="Apple&#x20;Pay" loading="lazy" draggable="false"/>                            </a>
773                                            </div>
774                                    <div class="payment-logos__item">
775                                                                            <a class="payment-logos__link"
776                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
777                               target="_blank"
778                               rel="noopener"
779                               aria-label="Google&#x20;Pay">
780                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/google-pay.jpg" alt="Google&#x20;Pay" loading="lazy" draggable="false"/>                            </a>
781                                            </div>
782                                    <div class="payment-logos__item">
783                                                                            <a class="payment-logos__link"
784                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
785                               target="_blank"
786                               rel="noopener"
787                               aria-label="MobilePay">
788                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/mobile-pay.jpg" alt="MobilePay" loading="lazy" draggable="false"/>                            </a>
789                                            </div>
790                                    <div class="payment-logos__item">
791                                                                            <a class="payment-logos__link"
792                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
793                               target="_blank"
794                               rel="noopener"
795                               aria-label="Siirto">
796                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/siirto_pankkipalvelu.jpg" alt="Siirto" loading="lazy" draggable="false"/>                            </a>
797                                            </div>
798                                    <div class="payment-logos__item">
799                                                                            <a class="payment-logos__link"
800                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
801                               target="_blank"
802                               rel="noopener"
803                               aria-label="Visa">
804                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/visa.jpg" alt="Visa" loading="lazy" draggable="false"/>                            </a>
805                                            </div>
806                                    <div class="payment-logos__item">
807                                                                            <a class="payment-logos__link"
808                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
809                               target="_blank"
810                               rel="noopener"
811                               aria-label="Mastercard">
812                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/mastercard.jpg" alt="Mastercard" loading="lazy" draggable="false"/>                            </a>
813                                            </div>
814                                    <div class="payment-logos__item">
815                                                                            <a class="payment-logos__link"
816                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
817                               target="_blank"
818                               rel="noopener"
819                               aria-label="Klarna">
820                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/klarna-logo.jpg" alt="Klarna" loading="lazy" draggable="false"/>                            </a>
821                                            </div>
822                                    <div class="payment-logos__item">
823                                                                            <a class="payment-logos__link"
824                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
825                               target="_blank"
826                               rel="noopener"
827                               aria-label="OP&#x20;Lasku">
828                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/op-lasku.jpg" alt="OP&#x20;Lasku" loading="lazy" draggable="false"/>                            </a>
829                                            </div>
830                                    <div class="payment-logos__item">
831                                                                            <a class="payment-logos__link"
832                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
833                               target="_blank"
834                               rel="noopener"
835                               aria-label="OP&#x20;Tililuotto">
836                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/op-tililuotto.jpg" alt="OP&#x20;Tililuotto" loading="lazy" draggable="false"/>                            </a>
837                                            </div>
838                                    <div class="payment-logos__item">
839                                                                            <a class="payment-logos__link"
840                               href="https://www.hartman.fi/fi/toimitusehdot#maksutavat"
841                               target="_blank"
842                               rel="noopener"
843                               aria-label="Walley">
844                                <img class="payment-logos__img" src="https://www.hartman.fi/media/payment_logos/walley.jpg" alt="Walley" loading
844="lazy" draggable="false"/>                            </a>
845                                            </div>
846                            </div>
847        </div>
848    </div>
849</section>
850
851</div><div class="footer-container page-footer">
852<div class="footer-container2">
853<div class="footer-container3">
854
855        <div class="footer-top-container section-container">
856        <div class="footer-top footer container">
857            <div class="inner-container ">
858                <style>#html-body [data-pb-style=BXYEANH]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;margin:0 0 10px;padding:0}#html-body [data-pb-style=C82MF0G]{margin:0;padding:0}#html-body [data-pb-style=KY3V2FQ],#html-body [data-pb-style=N5O45LG]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="BXYEANH"><figure class="footer-logo" data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="C82MF0G"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/Hartman_1.png" alt="" title="" data-element="desktop_image" data-pb-style="KY3V2FQ"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/Hartman_1.png" alt="" title="" data-element="mobile_image" data-pb-style="N5O45LG"></figure></div></div>            </div> <!-- end: inner-container -->
859        </div> <!-- end: footer-top -->
860    </div>
861    
862        
863        
864    <div class="footer-primary-container section-container">
865        <div class="footer-primary footer container">
866            <div class="inner-container">
867
868                
869                                    <div class="row">
870                        <div class="col-sm-4"><div class="std"><style>#html-body [data-pb-style=VQ7BNC3]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;margin:0 0 10px;padding:0}#html-body [data-pb-style=REAO0UM]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0 20px 0 0}#html-body [data-pb-style=N8SWR77],#html-body [data-pb-style=V993N62]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=V993N62]{justify-content:center;display:flex;flex-direction:column;border-style:none;border-width:1px;border-radius:0;margin:0 0 10px;padding:0}#html-body [data-pb-style=N8SWR77]{align-self:stretch}#html-body [data-pb-style=A3GCV6D]{display:flex;width:100%}#html-body [data-pb-style=DCB0HMA]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:16.6667%;margin:0;padding:10px;align-self:stretch}#html-body [data-pb-style=X6OUFIC]{text-align:left;margin:0;padding:0}#html-body [data-pb-style=T034SI1],#html-body [data-pb-style=YW88V05]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}#html-body [data-pb-style=AT0LV8J]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:83.3333%;margin:0;padding:10px 10px 10px 0;align-self:center}#html-body [data-pb-style=BVPTPLW]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}#html-body [data-pb-style=DMQSTSW]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div class="column-1" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="VQ7BNC3"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="REAO0UM"><p><span style="font-size: 14px;">Hartman on suomalainen perheyritys. Meill&auml; on vankka ja pitk&auml; rautakauppakokemus, alkaen vuodesta 1862. Meilt&auml; l&ouml;yd&auml;t rakennustarvikkeet, sisustustarvikkeet, puutavarat ja levyt sek&auml; ter&auml;kset, ty&ouml;kalut ja teollisuustarvikkeet. Rakensit sitten suurta tai pient&auml;, meilt&auml; l&ouml;yd&auml;t kaiken tarvitsemasi. Ammattilaisia palvelevat eri tuoteryhmien asiantuntijat.</span></p></div></div></div><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="V993N62"><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="12" data-element="main" data-pb-style="N8SWR77"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="A3GCV6D"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="DCB0HMA"><figure data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="X6OUFIC"><a href="https://www.hartman.fi/fi/pefc" target="" data-link-type="page" title="pefc image" data-element="link"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/pefc-label-pefc_small.png" alt="pefc img" title="pefc image" data-element="desktop_image" data-pb-style="T034SI1"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/pefc-label-pefc_small.png" alt="pefc img" title="pefc image" data-element="mobile_image" data-pb-style="YW88V05"></a></figure></div><div class="pagebuilder-column" data-content-type="column" data-appearance="align-center" data-background-images="{}" data-element="main" data-pb-style="AT0LV8J"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="BVPTPLW"><p><span style="font-size: 20px;"><a href="https://www.hartman.fi/fi/pefc" title="pefc" aria-label="pefc" alt="pefc link"><span style="font-size: 16px;">PEFC-sertifikaatti</span></a></span></p></div></div></div></div></div></div><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="DMQSTSW"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><iframe scrolling="no" src="//static.emaileri.fi/forms/hartman/2024/inverted/fin" aria-label="no" title="no" style="width:100%; max-width:480px; height:180px;" frameborder="0"></iframe><br></div></div></div></div></div><div class="col-sm-4"><div class="std"><style>#html-body [data-pb-style=K4YJOUW],#html-body [data-pb-style=X03RA6R]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=X03RA6R]{justify-content:flex-start;display:flex;flex-direction:column;border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}#html-body [data-pb-style=K4YJOUW]{align-self:stretch}#html-body [data-pb-style=RTXFPM3]{display:flex;width:100%}#html-body [data-pb-style=XTML593]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:50%;margin:0;padding:0 10px 0 0;align-self:stretch}#html-body [data-pb-style=G8SQAG5],#html-body [data-pb-style=VDKNRCH]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}#html-body [data-pb-style=VDKNRCH]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:50%;padding:0 10px 0 0;align-self:stretch}#html-body [data-pb-style=VO6SQPL]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div class="column-2" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="X03RA6R"><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="12" data-element="main" data-pb-style="K4YJOUW"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="RTXFPM3"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="XTML593"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="G8SQAG5"><p><a tabindex="0" href="https://www.hartman.fi/fi/rautakauppa"><span style="font-size: 12px;">Kuluttajille</span></a></p>
871<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/ammattirakentajille"><span style="font-size: 12px;">Ammattirakentajille</span></a></span></p>
872<p><a tabindex="0" href="https://www.hartman.fi/fi/jalleenmyyjille"><span style="font-size: 12px;">J&auml;lleenmyyjille</span></a></p>
873<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/terasmyynti"><span style="font-size: 12px;">Ter&auml;smyynti</span></a></span></p>
874<p><a tabindex="0" href="https://www.hartman.fi/fi/teollisuuspalvelut"><span style="font-size: 12px;">Teollisuuspalvelut</span></a></p>
875<p><a tabindex="0" href="https://www.hartman.fi/fi/puutavara-ja-levymyynti"><span style="font-size: 12px;">Puu- ja levymyynti</span></a></p>
876<p><a tabindex="0" href="https://www.hartman.fi/fi/puhtaanapito"><span style="font-size: 12px;">Puhtaanapito</span></a></p>
877<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/teollisuusmaalit"><span style="font-size: 12px;">Teollisuusmaalit</span></a></span></p>
878<p><span style="font-size: 12px; line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/tilaa-uutiskirje">Tilaa uutiskirje</a></span></p>
879<p><span style="font-size: 12px; line-height: 10px;"><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/yhteystiedot"><span style="font-size: 12px;">Yhteystiedot</span></a></span></span></p></div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="VDKNRCH"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="VO6SQPL"><p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/sisustaminen"><span style="font-size: 12px;">Hartman Sisustaa</span></a></span></p>
880<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/clickcollect"><span style="font-size: 12px;">Click &amp; Collect</span></a></span></p>
881<p><a tabindex="0" href="https://www.hartman.fi/fi/inspiraatiovinkit"><span style="font-size: 12px;">Inspiraatio ja vinkit</span></a></p>
882<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/inspiraatio"><span style="font-size: 12px;">Esitteet</span></a></span></p>
883<p><span style="line-height: 10px; font-size: 12px;"><a tabindex="0" href="https://www.hartman.fi/fi/vastuullisuus">Vastuullisuus</a></span></p>
884<p><a tabindex="0" href="https://www.hartman.fi/fi/usein-kysyttya"><span style="font-size: 12px;">Usein kysytyt kysymykset</span></a></p>
885<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/kuljetuspalvelu"><span style="font-size: 12px;">Kuljetuspalvelu</span></a></span></p>
886<p><a tabindex="-1" href="https://www.hartman.fi/fi/export"><span style="line-height: 10px; font-size: 12px;">Vienti</span></a></p>
887<p><span style="line-height: 10px;"><a tabindex="0" href="https://www.hartman.fi/fi/virhevastuu-ja-takuu"><span style="font-size: 12px;">Virhevastuu ja takuu</span></a></span></p></div></div></div></div></div></div></div></div><div class="col-sm-4"><div class="std"><style>#html-body [data-pb-style=KRKMMWW]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;margin:0 0 10px;padding:0}#html-body [data-pb-style=FHXG9OR],#html-body [data-pb-style=JXMSG8G],#html-body [data-pb-style=P3C8L1A],#html-body [data-pb-style=T0WTKG2]{border-style:none;border-width:1px;border-radius:0;margin:0;padding:0}#html-body [data-pb-style=G2V21I5],#html-body [data-pb-style=K17H795]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=K17H795]{justify-content:flex-start;display:flex;flex-direction:column;border-style:none;border-width:1px;border-radius:0;margin:30px 0 0;padding:0}#html-body [data-pb-style=G2V21I5]{align-self:stretch}#html-body [data-pb-style=VN0IN84]{display:flex;width:100%}#html-body [data-pb-style=MYPAU68]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:16.6667%;margin:0;padding:10px;align-self:stretch}#html-body [data-pb-style=FC077RA]{margin:0;padding:0}#html-body [data-pb-style=B52UB7A],#html-body [data-pb-style=G3ILKQ9]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}#html-body [data-pb-style=XUBHEIA]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:16.6667%;margin:0;padding:10px;align-self:stretch}#html-body [data-pb-style=P192V3R]{margin:0;padding:0}#html-body [data-pb-style=C38OE0V],#html-body [data-pb-style=RNRDXBQ]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}#html-body [data-pb-style=F3HYKHW]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:16.6667%;margin:0;padding:10px;align-self:stretch}#html-body [data-pb-style=P2CEAKW]{margin:0;padding:0}#html-body [data-pb-style=BYW2QTY],#html-body [data-pb-style=N4DVM7V]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}#html-body [data-pb-style=TUE6TK8]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:33.3333%;margin:0;padding:10px;align-self:stretch}#html-body [data-pb-style=XPDYI76]{margin:0;padding:0}#html-body [data-pb-style=LFJJ1FR],#html-body [data-pb-style=YQXNO31]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}#html-body [data-pb-style=WTIC9RN]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;border-style:none;border-width:1px;border-radius:0;width:16.6667%;margin:0;padding:10px;align-self:stretch}#html-body [data-pb-style=M2VYIXH]{margin:0;padding:0}#html-body [data-pb-style=EK7OIN0],#html-body [data-pb-
887style=H3TMC3D]{border-style:none;border-width:1px;border-radius:0;max-width:100%;height:auto}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div class="column-3" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="KRKMMWW"><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="FHXG9OR"><p><span style="font-size: 12px;"><a href="https://www.hartman.fi/fi/tietosuojaseloste">Tietosuojaseloste</a></span></p></div><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="P3C8L1A"><p><a href="https://www.hartman.fi/fi/saavutettavuusseloste"><span style="font-size: 12px;">Saavutettavuusseloste</span></a></p></div><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="JXMSG8G"><p><span style="font-size: 12px;"><a href="https://www.hartman.fi/fi/toimitusehdot">Toimitusehdot</a></span></p></div><div data-content-type="text" data-appearance="default" data-element="main" data-pb-style="T0WTKG2"><p><a href="https://www.hartman.fi/fi/yhteydenottolomake"><span style="font-size: 12px;">Yhteydenottolomake</span></a></p></div><div data-content-type="text" data-appearance="default" data-element="main"><p><a href="https://www.hartman.fi/fi/tiliasiakkuus"><span style="font-size: 12px;">Tilinavauslomakkeet</span></a></p></div><div data-content-type="text" data-appearance="default" data-element="main"><p><a href="https://www.hartman.fi/avoimet-tyopaikat"><span style="font-size: 12px;">Avoimet ty&ouml;paikat</span></a></p></div><div data-content-type="text" data-appearance="default" data-element="main"><p><a href="https://www.hartman.fi/fi/verkkokaupan-peruuttamislomake"><span style="font-size: 12px;">Peruuttamislomake</span></a></p></div></div></div><div data-content-type="row" data-appearance="contained" data-element="main"><div class="social-links" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-video-fallback-src="" data-element="inner" data-pb-style="K17H795"><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="12" data-element="main" data-pb-style="G2V21I5"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="VN0IN84"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="MYPAU68"><figure data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="FC077RA"><a href="https://www.facebook.com/HartmanRautaJarn" target="_blank" data-link-type="default" title="facebook" data-element="link"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/f_logo_RGB-White_36.png" alt="facebook" title="facebook" data-element="desktop_image" data-pb-style="B52UB7A"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/f_logo_RGB-White_36.png" alt="facebook" title="facebook" data-element="mobile_image" data-pb-style="G3ILKQ9"></a></figure></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="XUBHEIA"><figure data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="P192V3R"><a href="https://www.instagram.com/hartman_1862/" target="_blank" data-link-type="default" title="instagram" data-element="link"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/icon_instagram.png" alt="instagram" title="instagram" data-element="desktop_image" data-pb-style="C38OE0V"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/icon_instagram.png" alt="instagram" title="instagram" data-element="mobile_image" data-pb-style="RNRDXBQ"></a></figure></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="F3HYKHW"><figure data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="P2CEAKW"><a href="https://www.linkedin.com/company/hartmanrauta" target="_blank" data-link-type="default" title="linkedin" data-element="link"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/small_in_white.png" alt="linkedin" title="linkedin" data-element="desktop_image" data-pb-style="BYW2QTY"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/small_in_white.png" alt="linkedin" title="linkedin" data-element="mobile_image" data-pb-style="N4DVM7V"></a></figure></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="TUE6TK8"><figure data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="XPDYI
88776"><a href="https://www.youtube.com/channel/UCeihD0aYczyiKvkBQ5MV2rw" target="_blank" data-link-type="default" title="youtube" data-element="link"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/pikku_youtube_white.png" alt="youtube" title="youtube" data-element="desktop_image" data-pb-style="YQXNO31"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/pikku_youtube_white.png" alt="youtube" title="youtube" data-element="mobile_image" data-pb-style="LFJJ1FR"></a></figure></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="WTIC9RN"><figure data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="M2VYIXH"><a href="https://twitter.com/hartman1862" target="_blank" data-link-type="default" title="twitter" data-element="link"><img class="lazyload pagebuilder-mobile-hidden" data-src="https://www.hartman.fi/media/wysiwyg/2021_Twitter_logo_-_white.png" alt="twitter" title="twitter" data-element="desktop_image" data-pb-style="EK7OIN0"><img class="lazyload pagebuilder-mobile-only" data-src="https://www.hartman.fi/media/wysiwyg/2021_Twitter_logo_-_white.png" alt="twitter" title="twitter" data-element="mobile_image" data-pb-style="H3TMC3D"></a></figure></div></div></div></div></div></div></div>                    </div>
888                                
889                            
890            </div> <!-- end: inner-container -->
891        </div> <!-- end: footer-primary -->
892    </div>
893    
894    
895    
896    
897    <div class="footer-bottom-container section-container">
898        <div class="footer-bottom footer container">
899            <div class="inner-container">
900                
901                                    <div class="item item-left">
902                        <div class="footer-copyright"><small class="copyright">
903    <span>Hartman Rauta Oy | PL 53, 65101 Vaasa | Y-tunnus: 0628046-1 | Verkkolaskuosoite: TE003706280461 | [email protected]</span>
904</small>
905</div>
906                    </div>
907                
908                
909                
910            </div> <!-- end: inner-container -->
911        </div> <!-- end: footer-bottom -->
912    </div>
913
914    
915    <a id="scroll-to-top" class="ic ic-up" href="#top" title="scroll to top" aria-label="scroll to top"></a>
916
917</div> <!-- end: footer-container3 -->
918</div> <!-- end: footer-container2 -->
919</div> <!-- end: footer-container -->
920
921<style> #ui-id-1 li.level0.ambrands-menu-item { display: none; } </style>
922
923</div><div id="off-canvas" class="off-canvas position-left" data-off-canvas data-content-scroll="false">
924
925    <div class="off-canvas-wrap" data-off-canvas-scrollbox style="overflow: auto; max-height: 100vh;">
926        <div class="off-canvas-title">
927            <a
928    class="logo"
929    href="https://www.hartman.fi/fi/"
930    title=""
931    aria-label="store logo">
932    <img src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/images/logo_white.svg"
933         title=""
934         alt=""
935                            />
936</a>
937        </div>
938
939        <!-- Close button -->
940        <button class="close-button" aria-label="Sulje" type="button" data-close>
941            <svg xmlns="http://www.w3.org/2000/svg" width="11" height="11" viewB
941ox="0 0 11 11" aria-label="Icon SVG">
942                <path fill="#FFF" fill-rule="evenodd" d="M4 0L4 4 0 4 0 7 4 7 4 11 7.001 11 7.001 7 11 7 11 4 7.001 4 7.001 0z" transform="rotate(-45 5.5 5.5)"/>
943            </svg>
944        </button>
945
946        
947<!-- Drilldown menu -->
948<ul id="main-menu" class="menu" role="menubar" data-drilldown data-options="autoHeight: true; animateHeight: true; parentLink: true; animationDuration: 200; backButton: &lt;li class&#x3D;&quot;js-drilldown-back&quot;&gt;&lt;a tabindex&#x3D;&quot;0&quot;&gt;Takaisin&lt;/a&gt;&lt;/li&gt;">
949
950    <li class="level0  ambrands-menu-item"
951    data-ambrands-js="brands-menu-link">
952            <a href="https://www.hartman.fi/fi/tuotemerkki/"
953           class="level-top ambrands-link"
954           title="Tuotemerkit">
955            Tuotemerkit        </a>
956    </li>
957<li role="none"  class="level0 nav-1 category-item first level-top nav-item parent"><a href="https://www.hartman.fi/fi/tuotekoosteet" role="menuitem"  class="level-top" ><span>Tuotekoosteet</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tuotekoosteet/terassirakentaminen" role="menuitem" ><span>Terassirakentaminen</span></a></li><li role="none"  class="level1 nav-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tuotekoosteet/sauna-ja-sisustus-kuntoon" role="menuitem" ><span>Sauna- ja sisustus kuntoon</span></a></li><li role="none"  class="level1 nav-1-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tuotekoosteet/saunatuotteet" role="menuitem" ><span>Saunatuotteet</span></a></li></ul></li><li role="none"  class="level0 nav-2 category-item level-top nav-item"><a href="https://www.hartman.fi/fi/tarjoukset" role="menuitem"  class="level-top" ><span>Tarjoukset</span></a></li><li role="none"  class="level0 nav-3 category-item level-top nav-item"><a href="https://www.hartman.fi/fi/super-outlet" role="menuitem"  class="level-top" ><span>Super Outlet</span></a></li><li role="none"  class="level0 nav-4 category-item level-top nav-item"><a href="https://www.hartman.fi/fi/outlet" role="menuitem"  class="level-top" ><span>Outlet</span></a></li><li role="none"  class="level0 nav-5 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki" role="menuitem"  class="level-top" ><span>Koti ja mökki</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/matot-ja-ritilat" role="menuitem" ><span>Matot ja ritilät</span></a></li><li role="none"  class="level1 nav-5-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet" role="menuitem" ><span>Kiinteistötarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-5-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/liputusvalineet" role="menuitem" ><span>Liputusvälineet</span></a></li><li role="none"  class="level2 nav-5-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/tuuletustelineet-ja-kuivaustelineet" role="menuitem" ><span>Tuuletustelineet ja kuivaustelineet</span></a></li><li role="none"  class="level2 nav-5-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/pyoratelinet-ja-pyorakatokset" role="menuitem" ><span>Pyörätelinet ja pyöräkatokset</span></a></li><li role="none"  class="level2 nav-5-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/postilaatikot-ja-muut-ulkovarusteet" role="menuitem" ><span>
957Postilaatikot ja muut ulkovarusteet</span></a></li><li role="none"  class="level2 nav-5-2-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/muut-betonivalimotuotteet" role="menuitem" ><span>Muut betonivalimotuotteet</span></a></li><li role="none"  class="level2 nav-5-2-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/hiekoitusmurske-ja-hiekoitussepeli" role="menuitem" ><span>Hiekoitusmurske ja hiekoitussepeli</span></a></li><li role="none"  class="level2 nav-5-2-7 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto" role="menuitem" ><span>Jätehuolto</span></a><ul class="level2 submenu"><li role="none"  class="level3 nav-5-2-7-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto/muut-jatehuoltolaitteet-tarv" role="menuitem" ><span>Muut jätehuoltolaitteet, -tarv</span></a></li><li role="none"  class="level3 nav-5-2-7-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto/jate-kierratyssailiot" role="menuitem" ><span>Jäte-, kierrätyssäiliöt</span></a></li><li role="none"  class="level3 nav-5-2-7-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto/jate-tuhka-astiat" role="menuitem" ><span>Jäte-, tuhka-astiat</span></a></li><li role="none"  class="level3 nav-5-2-7-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto/jatesakit" role="menuitem" ><span>Jätesäkit</span></a></li><li role="none"  class="level3 nav-5-2-7-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto/jateastiat-ja-hiekka-astiat" role="menuitem" ><span>Jäteastiat ja hiekka-astiat</span></a></li><li role="none"  class="level3 nav-5-2-7-6 category-item last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jatehuolto/jatesakkiteline" role="menuitem" ><span>Jätesäkkiteline</span></a></li></ul></li><li role="none"  class="level2 nav-5-2-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/palonilmaisimet" role="menuitem" ><span>Palonilmaisimet</span></a></li><li role="none"  class="level2 nav-5-2-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/jauhesammuttimet" role="menuitem" ><span>Jauhesammuttimet</span></a></li><li role="none"  class="level2 nav-5-2-10 category-item last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kiinteistotarvikkeet/muut-palotorjuntavalineet" role="menuitem" ><span>Muut palotorjuntavälineet</span></a></li></ul></li><li role="none"  class="level1 nav-5-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki/puutarha-ja-metsanhoito" role="menuitem" ><span>Puutarha ja metsänhoito</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-5-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/puutarha-ja-metsanhoito/vesurit-petkeleet-kuorimarauda" role="menuitem" ><span>Vesurit,petkeleet,kuorimarauda</span></a></li><li role="none"  class="level2 nav-5-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/puutarha-ja-metsanhoito/moottorisahat" role="menuitem" ><span>Moottorisahat</span></a></li><li role="none"  class="level2 nav-5-3-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/puutarha-ja-metsanhoito/moottorisahojen-lisalaitteet" role="menuitem" ><span>Moottorisahojen  lisälaitteet</span></a></li><li role="none"  class="level2 nav-5-3-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/puutarha-ja-metsanhoito/varaosat" role="menuitem" ><span>Varaosat</span></a></li></ul></li><li role="none"  class="level1 nav-5-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kalusteet-ja-kotitalouskoneet" role="menuitem" ><span>Kalusteet ja kotitalouskoneet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-5-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kalusteet-ja-kotitalouskoneet/hyllystot-osarakenteiset" role="menuitem" ><span>Hyllystöt, osarakenteiset</span></a></li><li role="none"  class="level2 nav-5-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kalusteet-ja-kotitalouskoneet/keittion-kalusteet" role="menuitem" ><span>
957Keittiön kalusteet</span></a></li><li role="none"  class="level2 nav-5-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kalusteet-ja-kotitalouskoneet/keskuspolynimurit" role="menuitem" ><span>Keskuspölynimurit</span></a></li><li role="none"  class="level2 nav-5-4-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kalusteet-ja-kotitalouskoneet/mikroaaltouuni" role="menuitem" ><span>Mikroaaltouuni</span></a></li><li role="none"  class="level2 nav-5-4-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/kalusteet-ja-kotitalouskoneet/lampopuhaltimet" role="menuitem" ><span>Lämpöpuhaltimet</span></a></li></ul></li><li role="none"  class="level1 nav-5-5 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat" role="menuitem" ><span>Taloustavarat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-5-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/muut-kotitaloustarvikkeet-ja-m" role="menuitem" ><span>Muut kotitaloustarvikkeet ja m</span></a></li><li role="none"  class="level2 nav-5-5-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/muut-mainostarvikkeet" role="menuitem" ><span>Muut mainostarvikkeet</span></a></li><li role="none"  class="level2 nav-5-5-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/sokerit" role="menuitem" ><span>Sokerit</span></a></li><li role="none"  class="level2 nav-5-5-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/muut-makeiset" role="menuitem" ><span>Muut makeiset</span></a></li><li role="none"  class="level2 nav-5-5-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/paahdettu-kahvi-jauheena" role="menuitem" ><span>Paahdettu kahvi, jauheena</span></a></li><li role="none"  class="level2 nav-5-5-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/pussitee" role="menuitem" ><span>Pussitee</span></a></li><li role="none"  class="level2 nav-5-5-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/suodatinpaperit" role="menuitem" ><span>Suodatinpaperit</span></a></li><li role="none"  class="level2 nav-5-5-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/kahvinkeittimet" role="menuitem" ><span>Kahvinkeittimet</span></a></li><li role="none"  class="level2 nav-5-5-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/suomustimet-keittiosakset" role="menuitem" ><span>Suomustimet , keittiösakset</span></a></li><li role="none"  class="level2 nav-5-5-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/kertakayttolautaset" role="menuitem" ><span>Kertakäyttölautaset</span></a></li><li role="none"  class="level2 nav-5-5-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/kertakayttomukit" role="menuitem" ><span>Kertakäyttömukit</span></a></li><li role="none"  class="level2 nav-5-5-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/kertakayttoiset-ruokailuvaline" role="menuitem" ><span>Kertakäyttöiset ruokailuväline</span></a></li><li role="none"  class="level2 nav-5-5-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/muut-kertakayttoastiat-ja-valineet" role="menuitem" ><span>Muut kertakäyttöastiat ja välineet</span></a></li><li role="none"  class="level2 nav-5-5-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/pyykkikorit" role="menuitem" ><span>Pyykkikorit</span></a></li><li role="none"  class="level2 nav-5-5-15 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/saavit-ja-sangot" role="menuitem" ><span>Saavit ja sangot</span></a></li><li role="none"  class="level2 nav-5-5-16 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/pesuvadit-ja-soikot" role="menuitem" ><span>Pesuvadit ja -soikot</span></a></li><li role="none"  class="level2 nav-5-5-17 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/vesikauhat" role="menuitem" ><span>Vesikauhat</span></a></li><li role="none"  class="level2 nav-5-5-18 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/muut-muoviastiat" role="menuitem" ><span>Muut muoviastiat</span></a></li><li role="none"  class="level2 nav-5-5-19 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/talousalumiinit-foliot" role="menuitem" ><span>Talousalumiinit, -foliot</span></a></li><li role="none"  class="level2 nav-5-5-20 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/talouskelmut-ja-pussit" role="menuitem" ><span>Talouskelmut ja -pussit</span></a></li><li role="none"  class="level2 nav-5-5-21 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/talouspergamiinit" role="menuitem" ><span>Talouspergamiinit</span></a></li><li role="none"  class="level2 nav-5-5-22 category-item  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/lampo-ja-kosteusmittarit" role="menuitem" ><span>Lämpö- ja kosteusmittarit</span></a></li><li role="none"  class="level2 nav-5-5-23 category-item last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/taloustavarat/hiiren-rotanpyydykset" role="menuitem" ><span>Hiiren-, rotanpyydykset</span></a></li></ul></li>
957<li role="none"  class="level1 nav-5-6 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/koti-ja-mokki/laiturit" role="menuitem" ><span>Laiturit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-5-6-1 category-item first last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/laiturit/laiturit-ja-osat" role="menuitem" ><span>Laiturit ja osat</span></a></li></ul></li><li role="none"  class="level1 nav-5-7 category-item last  nav-item"><a href="https://www.hartman.fi/fi/koti-ja-mokki/tikkaat" role="menuitem" ><span>Tikkaat</span></a></li></ul></li><li role="none"  class="level0 nav-6 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha" role="menuitem"  class="level-top" ><span>Piha ja puutarha</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-6-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-koti/piha-ja-puutarha/kompostorit-ja-kaymalat" role="menuitem" ><span>Kompostorit ja käymälät</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-koti/piha-ja-puutarha/kompostorit-ja-kaymalat/kuivakaymalat" role="menuitem" ><span>Kuivakäymälät</span></a></li><li role="none"  class="level2 nav-6-1-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/kompostorit-ja-kaymalat/kompostiastiat" role="menuitem" ><span>Kompostiastiat</span></a></li></ul></li><li role="none"  class="level1 nav-6-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhalannoitteet-ja-kasviravinteet" role="menuitem" ><span>Puutarhalannoitteet ja kasviravinteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhalannoitteet-ja-kasviravinteet/maantiesuola" role="menuitem" ><span>Maantiesuola</span></a></li><li role="none"  class="level2 nav-6-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhalannoitteet-ja-kasviravinteet/nurmikonsiemenet" role="menuitem" ><span>Nurmikonsiemenet</span></a></li><li role="none"  class="level2 nav-6-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhalannoitteet-ja-kasviravinteet/nurmikonlannoitteet-ja-hivenainelannoitteet" role="menuitem" ><span>Nurmikonlannoitteet ja hivenainelannoitteet</span></a></li><li role="none"  class="level2 nav-6-2-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhalannoitteet-ja-kasviravinteet/puutarhamulta-kuorikatteet-ja-kompostikuivikkeet" role="menuitem" ><span>Puutarhamulta, kuorikatteet ja kompostikuivikkeet</span></a></li></ul></li><li role="none"  class="level1 nav-6-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/hyonteisten-ja-tuholaisten-torjunta" role="menuitem" ><span>Hyönteisten ja tuholaisten torjunta</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/hyonteisten-ja-tuholaisten-torjunta/hyonteiskarkotteet-ja-ansat" role="menuitem" ><span>Hyönteiskarkotteet ja -ansat</span></a></li><li role="none"  class="level2 nav-6-3-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/hyonteisten-ja-tuholaisten-torjunta/kasvinsuojelu-ja-paineruiskut" role="menuitem" ><span>Kasvinsuojelu- ja paineruiskut</span></a></li></ul></li><li role="none"  class="level1 nav-6-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/pihalaatat-ja-pihakivet" role="menuitem" ><span>Pihalaatat ja pihakivet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/pihalaatat-ja-pihakivet/reunakivet" role="menuitem" ><span>Reunakivet</span></a></li><li role="none"  class="level2 nav-6-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/pihalaatat-ja-pihakivet/kaytavalaatat-sidekivet" role="menuitem" ><span>Käytävälaatat, sidekivet</span></a></li><li role="none"  class="level2 nav-6-4-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/pihalaatat-ja-pihakivet/liuskekivet" role="menuitem" ><span>Liuskekivet</span></a></li></ul></li>
957<li role="none"  class="level1 nav-6-5 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/piha-aidat-ja-puutarhaverkot" role="menuitem" ><span>Piha-aidat ja puutarhaverkot</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/piha-aidat-ja-puutarhaverkot/hyonteisverkot" role="menuitem" ><span>Hyönteisverkot</span></a></li><li role="none"  class="level2 nav-6-5-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/piha-aidat-ja-puutarhaverkot/seulaverkot" role="menuitem" ><span>Seulaverkot</span></a></li><li role="none"  class="level2 nav-6-5-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/piha-aidat-ja-puutarhaverkot/aitaverkot-ja-tarvikkeet" role="menuitem" ><span>Aitaverkot ja tarvikkeet</span></a></li><li role="none"  class="level2 nav-6-5-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/piha-aidat-ja-puutarhaverkot/jyrsija-ja-kanaverkot" role="menuitem" ><span>Jyrsijä- ja kanaverkot</span></a></li><li role="none"  class="level2 nav-6-5-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/piha-aidat-ja-puutarhaverkot/minkki-ja-elainverkot" role="menuitem" ><span>Minkki- ja eläinverkot</span></a></li></ul></li><li role="none"  class="level1 nav-6-6 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhatyokalut-ja-puutarhakoneet" role="menuitem" ><span>Puutarhatyökalut ja puutarhakoneet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-6-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhatyokalut-ja-puutarhakoneet/hakkuu-halkaisu-veisto-palo" role="menuitem" ><span>Hakkuu-,halkaisu-,veisto-,palo</span></a></li><li role="none"  class="level2 nav-6-6-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/puutarhatyokalut-ja-puutarhakoneet/pensasleikkurit" role="menuitem" ><span>Pensasleikkurit</span></a></li></ul></li><li role="none"  class="level1 nav-6-7 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-koti/piha-ja-puutarha/puutarhaletkut-ja-sadettimet" role="menuitem" ><span>Puutarhaletkut ja sadettimet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-7-1 category-item first last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-koti/piha-ja-puutarha/puutarhaletkut-ja-sadettimet/puutarhaletkut" role="menuitem" ><span>Puutarhaletkut</span></a></li></ul></li><li role="none"  class="level1 nav-6-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/suodatinkankaat-ja-kateharsot" role="menuitem" ><span>Suodatinkankaat ja kateharsot</span></a></li><li role="none"  class="level1 nav-6-9 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/ulkotulisijat-ja-tarvikkeet" role="menuitem" ><span>Ulkotulisijat ja tarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-9-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/ulkotulisijat-ja-tarvikkeet/kaasu-ja-koksihiili" role="menuitem" ><span>Kaasu- ja koksihiili</span></a></li><li role="none"  class="level2 nav-6-9-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/ulkotulisijat-ja-tarvikkeet/grillihiilet-ja-briketit" role="menuitem" ><span>Grillihiilet ja briketit</span></a></li></ul></li><li role="none"  class="level1 nav-6-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/kaulukset-suojat-ja-tuet" role="menuitem" ><span>Kaulukset suojat ja tuet</span></a></li><li role="none"  class="level1 nav-6-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/huurreraapat-lumiharjat" role="menuitem" ><span>Huurreraapat,lumiharjat</span></a></li><li role="none"  class="level1 nav-6-12 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/muut-kodin-ulkokalusteet" role="menuitem" ><span>
957Muut kodin ulkokalusteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-6-12-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/muut-kodin-ulkokalusteet/puutarhakeinut" role="menuitem" ><span>Puutarhakeinut</span></a></li><li role="none"  class="level2 nav-6-12-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/muut-kodin-ulkokalusteet/puutarha-parvekepoydat" role="menuitem" ><span>Puutarha-, parvekepöydät</span></a></li><li role="none"  class="level2 nav-6-12-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/muut-kodin-ulkokalusteet/puutarha-parveketuolit-pen" role="menuitem" ><span>Puutarha-, parveketuolit, -pen</span></a></li></ul></li><li role="none"  class="level1 nav-6-13 category-item last  nav-item"><a href="https://www.hartman.fi/fi/piha-ja-puutarha/kukka-altaat-puistovarusteet" role="menuitem" ><span>Kukka-altaat, puistovarusteet</span></a></li></ul></li><li role="none"  class="level0 nav-7 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet" role="menuitem"  class="level-top" ><span>Rakennustarvikkeet</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-7-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tiilet-ja-harkot" role="menuitem" ><span>Tiilet ja harkot</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tiilet-ja-harkot/poltetut-tiilet" role="menuitem" ><span>Poltetut tiilet</span></a></li><li role="none"  class="level2 nav-7-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tiilet-ja-harkot/kevytsoraharkot" role="menuitem" ><span>Kevytsoraharkot</span></a></li><li role="none"  class="level2 nav-7-1-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tiilet-ja-harkot/valiseinaharkot" role="menuitem" ><span>Väliseinäharkot</span></a></li><li role="none"  class="level2 nav-7-1-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tiilet-ja-harkot/kalkkihiekkatiilet-ja-kalkkihiekkaharkot" role="menuitem" ><span>Kalkkihiekkatiilet ja kalkkihiekkaharkot</span></a></li></ul></li><li role="none"  class="level1 nav-7-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet" role="menuitem" ><span>Työvälineet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/pisto-betoni-puutarhalapiot" role="menuitem" ><span>Pisto-,betoni-,puutarhalapiot</span></a></li><li role="none"  class="level2 nav-7-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/kuuppa-lumilapiot" role="menuitem" ><span>Kuuppa,-lumilapiot</span></a></li><li role="none"  class="level2 nav-7-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/lumikolat" role="menuitem" ><span>Lumikolat</span></a></li><li role="none"  class="level2 nav-7-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/terasseipaat-alumiinikanget-ja-rautakanget" role="menuitem" ><span>Terässeipäät, alumiinikanget ja rautakanget</span></a></li><li role="none"  class="level2 nav-7-2-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/hangot-talikot" role="menuitem" ><span>Hangot, talikot</span></a></li><li role="none"  class="level2 nav-7-2-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/haravat-harat" role="menuitem" ><span>Haravat, harat</span></a></li><li role="none"  class="level2 nav-7-2-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/viikatteet-sirpit" role="menuitem" ><span>Viikatteet, sirpit</span></a></li><li role="none"  class="level2 nav-7-2-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/pelto-puutarha-istutuskuok" role="menuitem" ><span>Pelto-, puutarha-, istutuskuok</span></a></li><li role="none"  class="level2 nav-7-2-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/kottikarryt" role="menuitem" ><span>Kottikärryt</span></a></li><li role="none"  class="level2 nav-7-2-10 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/tyovalineet/varasto-kerailyvaunut" role="menuitem" ><span>Varasto-, keräilyvaunut</span></a></li></ul></li>
957<li role="none"  class="level1 nav-7-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennusterakset-ja-raudoitustuotteet" role="menuitem" ><span>Rakennusteräkset ja raudoitustuotteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennusterakset-ja-raudoitustuotteet/raudoituskorokkeet-ja-eristekiinnikkeet" role="menuitem" ><span>Raudoituskorokkeet ja eristekiinnikkeet</span></a></li><li role="none"  class="level2 nav-7-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennusterakset-ja-raudoitustuotteet/harjaterakset" role="menuitem" ><span>Harjateräkset</span></a></li><li role="none"  class="level2 nav-7-3-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennusterakset-ja-raudoitustuotteet/betoniverkot" role="menuitem" ><span>Betoniverkot</span></a></li></ul></li><li role="none"  class="level1 nav-7-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/maanrakennustuotteet" role="menuitem" ><span>Maanrakennustuotteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/maanrakennustuotteet/kaivonrenkaat-ja-kaivonkannet" role="menuitem" ><span>Kaivonrenkaat ja kaivonkannet</span></a></li><li role="none"  class="level2 nav-7-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/maanrakennustuotteet/salaojaputket" role="menuitem" ><span>Salaojaputket</span></a></li><li role="none"  class="level2 nav-7-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/maanrakennustuotteet/salaojakaivot" role="menuitem" ><span>Salaojakaivot</span></a></li><li role="none"  class="level2 nav-7-4-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/maanrakennustuotteet/rumpuputket" role="menuitem" ><span>Rumpuputket</span></a></li><li role="none"  class="level2 nav-7-4-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/maanrakennustuotteet/muut-putket" role="menuitem" ><span>Muut putket</span></a></li></ul></li><li role="none"  class="level1 nav-7-5 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit" role="menuitem" ><span>Betoni, muurausaineet, laastit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/silotteet-ja-pohjatasotteet" role="menuitem" ><span>Silotteet ja pohjatasotteet</span></a></li><li role="none"  class="level2 nav-7-5-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/betonimyllyt" role="menuitem" ><span>Betonimyllyt</span></a></li><li role="none"  class="level2 nav-7-5-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/portland-sementti" role="menuitem" ><span>Portland-sementti</span></a></li><li role="none"  class="level2 nav-7-5-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/rakennuskalkit" role="menuitem" ><span>Rakennuskalkit</span></a></li><li role="none"  class="level2 nav-7-5-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/kuivabetoni" role="menuitem" ><span>Kuivabetoni</span></a></li><li role="none"  class="level2 nav-7-5-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/muurauslaastit" role="menuitem" ><span>Muurauslaastit</span></a></li><li role="none"  class="level2 nav-7-5-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/tulenkestavat-massat" role="menuitem" ><span>Tulenkestävät massat</span></a></li><li role="none"  class="level2 nav-7-5-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/muut-laastit-tasoitteet" role="menuitem" ><span>Muut laastit, tasoitteet</span></a></li><li role="none"  class="level2 nav-7-5-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/saumauslaastit" role="menuitem" ><span>Saumauslaastit</span></a></li><li role="none"  class="level2 nav-7-5-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/betonin-lisaaineet" role="menuitem" ><span>
957Betonin lisäaineet</span></a></li><li role="none"  class="level2 nav-7-5-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/saumaushiekka" role="menuitem" ><span>Saumaushiekka</span></a></li><li role="none"  class="level2 nav-7-5-12 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/betoni-muurausaineet-laastit/paisuntamurtoaineet" role="menuitem" ><span>Paisuntamurtoaineet</span></a></li></ul></li><li role="none"  class="level1 nav-7-6 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet" role="menuitem" ><span>Eristeet ja tiivisteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-6-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/ikkunatiivisteet" role="menuitem" ><span>Ikkunatiivisteet</span></a></li><li role="none"  class="level2 nav-7-6-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/tiivistysnauhat" role="menuitem" ><span>Tiivistysnauhat</span></a></li><li role="none"  class="level2 nav-7-6-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/lasivilla" role="menuitem" ><span>Lasivilla</span></a></li><li role="none"  class="level2 nav-7-6-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/vuorivilla" role="menuitem" ><span>Vuorivilla</span></a></li><li role="none"  class="level2 nav-7-6-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/eps-eristeet" role="menuitem" ><span>EPS eristeet</span></a></li><li role="none"  class="level2 nav-7-6-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/vaahtolasimurske" role="menuitem" ><span>Vaahtolasimurske</span></a></li><li role="none"  class="level2 nav-7-6-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/akustiikkalevyt" role="menuitem" ><span>Akustiikkalevyt </span></a></li><li role="none"  class="level2 nav-7-6-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/uretaanilevyt" role="menuitem" ><span>Uretaanilevyt</span></a></li><li role="none"  class="level2 nav-7-6-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/xps-eristeet" role="menuitem" ><span>XPS eristeet</span></a></li><li role="none"  class="level2 nav-7-6-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/saumausvaahdot" role="menuitem" ><span>Saumausvaahdot</span></a></li><li role="none"  class="level2 nav-7-6-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/kevytsora" role="menuitem" ><span>Kevytsora</span></a></li><li role="none"  class="level2 nav-7-6-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/puukuitueristeet" role="menuitem" ><span>Puukuitueristeet</span></a></li><li role="none"  class="level2 nav-7-6-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/bitumilakat-ja-bitumiliuokset" role="menuitem" ><span>Bitumilakat ja bitumiliuokset</span></a></li><li role="none"  class="level2 nav-7-6-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/bitumisaumamassa-ja-bitumipaikkausmassat" role="menuitem" ><span>Bitumisaumamassa ja bitumipaikkausmassat</span></a></li><li role="none"  class="level2 nav-7-6-15 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/bitumitiivistysnauhat-ja-bitumikitit" role="menuitem" ><span>Bitumitiivistysnauhat ja bitumikitit</span></a></li><li role="none"  class="level2 nav-7-6-16 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/bitumisaumaliimat-ja-kateliimat" role="menuitem" ><span>Bitumisaumaliimat ja kateliimat</span></a></li><li role="none"  class="level2 nav-7-6-17 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/tervatuotteet" role="menuitem" ><span>Tervatuotteet</span></a></li><li role="none"  class="level2 nav-7-6-18 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/eristeet-ja-tiivisteet/vesieristeet" role="menuitem" ><span>
957Vesieristeet</span></a></li></ul></li><li role="none"  class="level1 nav-7-7 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit" role="menuitem" ><span>Rakennuslevyt, rakennuspaperit ja rakennusmuovit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-7-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/huokoiset-kuitulevyt" role="menuitem" ><span>Huokoiset kuitulevyt</span></a></li><li role="none"  class="level2 nav-7-7-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/tuulensuojalevyt" role="menuitem" ><span>Tuulensuojalevyt</span></a></li><li role="none"  class="level2 nav-7-7-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/kipsilevyt" role="menuitem" ><span>Kipsilevyt</span></a></li><li role="none"  class="level2 nav-7-7-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/sileat-kuitusementtilevyt" role="menuitem" ><span>Sileät kuitusementtilevyt</span></a></li><li role="none"  class="level2 nav-7-7-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/erikois-rakennuslevyt" role="menuitem" ><span>Erikois rakennuslevyt</span></a></li><li role="none"  class="level2 nav-7-7-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/alumiinipaperi-ja-ilmansulkupaperi" role="menuitem" ><span>Alumiinipaperi ja ilmansulkupaperi</span></a></li><li role="none"  class="level2 nav-7-7-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/rakennuspaperi-ja-suojapahvi" role="menuitem" ><span>Rakennuspaperi ja suojapahvi</span></a></li><li role="none"  class="level2 nav-7-7-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/muovikalvot" role="menuitem" ><span>Muovikalvot</span></a></li><li role="none"  class="level2 nav-7-7-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/muovipeitteet-ja-kevytpeitteet" role="menuitem" ><span>Muovipeitteet ja kevytpeitteet</span></a></li><li role="none"  class="level2 nav-7-7-10 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuslevyt-rakennuspaperit-ja-rakennusmuovit/pakkasmatto-ja-rakennuspeitteet" role="menuitem" ><span>Pakkasmatto ja rakennuspeitteet</span></a></li></ul></li><li role="none"  class="level1 nav-7-8 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma" role="menuitem" ><span>Katteet ja sadevesijärjestelmä</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-8-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/kattotikkaat-ja-seinatikkaat" role="menuitem" ><span>Kattotikkaat ja seinätikkaat</span></a></li><li role="none"  class="level2 nav-7-8-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/sinkityt-teraskatteet-osat" role="menuitem" ><span>Sinkityt   teräskatteet, -osat</span></a></li><li role="none"  class="level2 nav-7-8-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/sadevesijarjestelmat" role="menuitem" ><span>Sadevesijärjestelmät</span></a></li><li role="none"  class="level2 nav-7-8-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/lapiviennit-tiivistyslaipat" role="menuitem" ><span>Läpiviennit, tiivistyslaipat</span></a></li><li role="none"  class="level2 nav-7-8-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/kattohuopa-ja-bitumikermit" role="menuitem" ><span>Kattohuopa ja bitumikermit</span></a></li><li role="none"  class="level2 nav-7-8-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/kattohuopalaatat" role="menuitem" ><span>Kattohuopalaatat</span></a></li><li role="none"  class="level2 nav-7-8-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/valokatteet" role="menuitem" ><span>Valokatteet</span></a></li><li role="none"  class="level2 nav-7-8-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/aluskate" role="menuitem" ><span>Aluskate</span></a></li><li role="none"  class="level2 nav-7-8-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/suojapahvi-ja-remonttipaperi" role="menuitem" ><span>
957Suojapahvi ja remonttipaperi</span></a></li><li role="none"  class="level2 nav-7-8-10 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/katteet-ja-sadevesijarjestelma/maalatut-teraslevyt" role="menuitem" ><span>Maalatut teräslevyt</span></a></li></ul></li><li role="none"  class="level1 nav-7-9 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/ovet-ja-ikkunat" role="menuitem" ><span>Ovet ja ikkunat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-9-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/ovet-ja-ikkunat/asunnon-ulko-ovet-ja-mokkiovet" role="menuitem" ><span>Asunnon ulko-ovet ja mökkiovet</span></a></li><li role="none"  class="level2 nav-7-9-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/ovet-ja-ikkunat/valiovet" role="menuitem" ><span>Väliovet</span></a></li><li role="none"  class="level2 nav-7-9-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/ovet-ja-ikkunat/saunan-ovet" role="menuitem" ><span>Saunan ovet</span></a></li><li role="none"  class="level2 nav-7-9-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/ovet-ja-ikkunat/palo-ovet-ja-vaestonsuoja-ovet" role="menuitem" ><span>Palo-ovet ja väestönsuoja-ovet</span></a></li></ul></li><li role="none"  class="level1 nav-7-10 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet" role="menuitem" ><span>Kiinnittimet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-10-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/karmitulpat" role="menuitem" ><span>Karmitulpat</span></a></li><li role="none"  class="level2 nav-7-10-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/saparo-ripustuskoukut" role="menuitem" ><span>Saparo-, ripustuskoukut</span></a></li><li role="none"  class="level2 nav-7-10-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/lankanaulat-dryckertnaulat-ja-uppokantanaulat" role="menuitem" ><span>Lankanaulat, dryckertnaulat ja uppokantanaulat</span></a></li><li role="none"  class="level2 nav-7-10-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kierre-kampa-kaksikantanaula" role="menuitem" ><span>Kierre-,kampa-,kaksikantanaula</span></a></li><li role="none"  class="level2 nav-7-10-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/huopa-naulat-ja-kipsinaulat" role="menuitem" ><span>Huopa naulat ja kipsinaulat</span></a></li><li role="none"  class="level2 nav-7-10-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/listanaulat-ja-kuparinaulat" role="menuitem" ><span>Listanaulat ja kuparinaulat</span></a></li><li role="none"  class="level2 nav-7-10-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/terasnaulat" role="menuitem" ><span>Teräsnaulat</span></a></li><li role="none"  class="level2 nav-7-10-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/konenaulat" role="menuitem" ><span>Konenaulat</span></a></li><li role="none"  class="level2 nav-7-10-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/sinkilat" role="menuitem" ><span>Sinkilät</span></a></li><li role="none"  class="level2 nav-7-10-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/vetoniitit" role="menuitem" ><span>Vetoniitit</span></a></li><li role="none"  class="level2 nav-7-10-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/puunsitojalevyt" role="menuitem" ><span>Puunsitojalevyt</span></a></li><li role="none"  class="level2 nav-7-10-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/elementtikiinnikkeet" role="menuitem" ><span>Elementtikiinnikkeet</span></a></li><li role="none"  class="level2 nav-7-10-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/messinkiruuvit-ja-puuruuvit" role="menuitem" ><span>Messinkiruuvit ja puuruuvit</span></a></li><li role="none"  class="level2 nav-7-10-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/rakennusruuvit" role="menuitem" ><span>Rakennusruuvit</span></a></li><li role="none"  class="level2 nav-7-10-15 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/yleisruuvit-ja-levyruuvit" role="menuitem" ><span>Yleisruuvit ja levyruuvit</span></a></li><li role="none"  class="level2 nav-7-10-16 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kateruuvit-ja-aaltokateruuvit" role="menuitem" ><span>Kateruuvit ja aaltokateruuvit</span></a></li><li role="none"  class="level2 nav-7-10-17 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kansiruuvit" role="menuitem" ><span>Kansiruuvit</span></a></li><li role="none"  class="level2 nav-7-10-18 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/uraruuvit-ja-koneruuvit" role="menuitem" ><span>Uraruuvit ja koneruuvit</span></a></li><li role="none"  class="level2 nav-7-10-19 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kasausruuvit-liitinruuvit-ja-pinnapuuruuvit" role="menuitem" ><span>Kasausruuvit, liitinruuvit ja pinnapuuruuvit</span></a></li><li role="none"  class="level2 nav-7-10-20 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kuusiopultit-ja-kuusioruuvit" role="menuitem" ><span>Kuusiopultit ja kuusioruuvit</span></a></li><li role="none"  class="level2 nav-7-10-21 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kuusiokoloruuvit" role="menuitem" ><span>Kuusiokoloruuvit</span></a></li><li role="none"  class="level2 nav-7-10-22 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/lukkoruuvit" role="menuitem" ><span>Lukkoruuvit</span></a></li><li role="none"  class="level2 nav-7-10-23 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/nostosilmukat" role="menuitem" ><span>Nostosilmukat</span></a></li><li role="none"  class="level2 nav-7-10-24 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kierretangot" role="menuitem" ><span>Kierretangot</span></a></li><li role="none"  class="level2 nav-7-10-25 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/mutterit" role="menuitem" ><span>Mutterit</span></a></li><li role="none"  class="level2 nav-7-10-26 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/siipimutter
957it-ja-erikoismutterit" role="menuitem" ><span>Siipimutterit ja erikoismutterit</span></a></li><li role="none"  class="level2 nav-7-10-27 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/aluslaatat-korilaatat-ja-neliolaatat" role="menuitem" ><span>Aluslaatat, korilaatat ja neliölaatat</span></a></li><li role="none"  class="level2 nav-7-10-28 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/kiila-ankkurit-ja-betoniruuvit" role="menuitem" ><span>Kiila-ankkurit ja betoniruuvit</span></a></li><li role="none"  class="level2 nav-7-10-29 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/lyontiankkurit" role="menuitem" ><span>Lyöntiankkurit</span></a></li><li role="none"  class="level2 nav-7-10-30 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/seinatulpat" role="menuitem" ><span>Seinätulpat</span></a></li><li role="none"  class="level2 nav-7-10-31 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/muut-porauskiinnikkeet" role="menuitem" ><span>Muut porauskiinnikkeet</span></a></li><li role="none"  class="level2 nav-7-10-32 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/kiinnittimet/letkunkiristimet" role="menuitem" ><span>Letkunkiristimet</span></a></li></ul></li><li role="none"  class="level1 nav-7-11 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet" role="menuitem" ><span>Köydet, kettingit, nostotarvikkeet ja kiinnitystarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-11-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/kettinki" role="menuitem" ><span>Kettinki</span></a></li><li role="none"  class="level2 nav-7-11-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/ruuvisakkelit-ketjunliittimet" role="menuitem" ><span>Ruuvisakkelit, ketjunliittimet</span></a></li><li role="none"  class="level2 nav-7-11-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/teraskoydet" role="menuitem" ><span>Teräsköydet</span></a></li><li role="none"  class="level2 nav-7-11-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/nostohihnat-ja-paallysteraksit" role="menuitem" ><span>Nostohihnat ja päällysteraksit</span></a></li><li role="none"  class="level2 nav-7-11-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/kuormankiinnityshihnat-ja-sidontavyot" role="menuitem" ><span>Kuormankiinnityshihnat ja sidontavyöt</span></a></li><li role="none"  class="level2 nav-7-11-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/sisalkoydet-ja-manillakoydet" role="menuitem" ><span>Sisalköydet ja manillaköydet</span></a></li><li role="none"  class="level2 nav-7-11-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/keinokuitukoydet" role="menuitem" ><span>Keinokuituköydet</span></a></li><li role="none"  class="level2 nav-7-11-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/lippunarut" role="menuitem" ><span>Lippunarut</span></a></li><li role="none"  class="level2 nav-7-11-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/hehkutetut-teraslangat-ja-sidelanka" role="menuitem" ><span>Hehkutetut teräslangat ja sidelanka</span></a></li><li role="none"  class="level2 nav-7-11-10 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/koydet-kettingit-nostotarvikkeet-ja-kiinnitystarvikkeet/sinkityt-teraslangat-ja-piikkilanka" role="menuitem" ><span>Sinkityt teräslangat ja piikkilanka</span></a></li></ul></li>
957<li role="none"  class="level1 nav-7-12 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit" role="menuitem" ><span>Rakennuselementit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-12-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit/muut-elementit" role="menuitem" ><span>Muut elementit</span></a></li><li role="none"  class="level2 nav-7-12-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit/porraselementit-ja-ullakkoportaat" role="menuitem" ><span>Porraselementit ja ullakkoportaat</span></a></li><li role="none"  class="level2 nav-7-12-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit/puuaidat-ja-portit" role="menuitem" ><span>Puuaidat ja -portit</span></a></li><li role="none"  class="level2 nav-7-12-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit/saunat-aitat-piharakennukset" role="menuitem" ><span>Saunat, aitat, piharakennukset</span></a></li><li role="none"  class="level2 nav-7-12-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit/maapaalut-ja-ruuvipaalut" role="menuitem" ><span>Maapaalut ja ruuvipaalut</span></a></li><li role="none"  class="level2 nav-7-12-6 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/rakennuselementit/valiseinarangat-ja-jousirangat" role="menuitem" ><span>Väliseinärangat ja jousirangat</span></a></li></ul></li><li role="none"  class="level1 nav-7-13 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat" role="menuitem" ><span>Helat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-13-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/huonekalusaranat-ja-kalustesaranat" role="menuitem" ><span>Huonekalusaranat ja kalustesaranat</span></a></li><li role="none"  class="level2 nav-7-13-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/ovisaranat-ja-ikkunasaranat" role="menuitem" ><span>Ovisaranat ja ikkunasaranat</span></a></li><li role="none"  class="level2 nav-7-13-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/hitsattavat-saranat-metalliovensaranat" role="menuitem" ><span>Hitsattavat saranat metalliovensaranat</span></a></li><li role="none"  class="level2 nav-7-13-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/palo-oven-saranat-ja-erikoissaranat" role="menuitem" ><span>Palo-oven saranat ja erikoissaranat</span></a></li><li role="none"  class="level2 nav-7-13-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/liukuoven-osat" role="menuitem" ><span>Liukuoven osat</span></a></li><li role="none"  class="level2 nav-7-13-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/tyontoovenlaitteet" role="menuitem" ><span>Työntöovenlaitteet</span></a></li><li role="none"  class="level2 nav-7-13-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/ikkunalukot" role="menuitem" ><span>Ikkunalukot</span></a></li><li role="none"  class="level2 nav-7-13-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/oven-lukot" role="menuitem" ><span>Oven lukot</span></a></li><li role="none"  class="level2 nav-7-13-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/valiovenlukot" role="menuitem" ><span>Väliovenlukot</span></a></li><li role="none"  class="level2 nav-7-13-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/riippulukot" role="menuitem" ><span>Riippulukot</span></a></li><li role="none"  class="level2 nav-7-13-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/ovensulkimet" role="menuitem" ><span>Ovensulkimet</span></a></li><li role="none"  class="level2 nav-7-13-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/avaimet-lukonosat" role="menuitem" ><span>Avaimet, lukonosat</span></a></li><li role="none"  class="level2 nav-7-13-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/vetimet" role="menuitem" ><span>Vetimet</span></a></li><li role="none"  class="level2 nav-7-13-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/kalustevetimet-ja-liukuovenvetimet" role="menuitem" ><span>Kalustevetimet ja liukuovenvetimet</span></a></li><li role="none"  class="level2 nav-7-13-15 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/ovenpainikkeet-ikkunapainakkeet-ja-vaantonupit" role="menuitem" ><span>Ovenpainikkeet, ikkunapainakkeet ja vääntönupit</span></a></li><li role="none"  class="level2 nav-7-13-16 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/huonekaluhelat" role="menuitem" ><span>Huonekaluhelat</span></a></li><li role="none"  class="level2 nav-7-13-17 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/avainkilvet-ikkunakilvet-ja-peitelevyt" role="menuitem" ><span>Avainkilvet, ikkunakilvet ja peitelevyt</span></a></li><li role="none"  class="level2 nav-7-13-18 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/muut-ovi-ikkunahelat" role="menuitem" ><span>Muut ovi-, ikkunahelat</span></a></li><li role="none"  class="level2 nav-7-13-19 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/vaatetangot-kannattimet" role="menuitem" ><span>Vaatetangot,-kannattimet</span></a></li><li role="none"  class="level2 nav-7-13-20 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/kaidekoukut" role="menuitem" ><span>Kaidekoukut</span></a></li><li role="none"  class="level2 nav-7-13-21 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/verholiukukiskot-osat" role="menuitem" ><span>Verholiukukiskot, -osat</span></a></li><li role="none"  class="level2 nav-7-13-22 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/koukut" role="menuitem" ><span>Koukut</span></a></li><li role="none"  class="level2 nav-7-13-23 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/salvat" role="menuitem" ><span>Salvat</span></a></li><li role="none"  class="level2 nav-7-13-24 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/haat" role="menuitem" ><span>Haat</span></a></li><li role="none"  class="level2 nav-7-13-25 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/hyllynkannattimet-ja-kaappien-kannattimet" role="menuitem" ><span>Hyllynkannattimet ja kaappien kannattimet</span></a></li><li role="none"  class="level2 nav-7-13-26 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/ovenpysayttimet-ja-oven-aukipitolaitteet" role="menuitem" ><span>Ovenpysäyttimet ja oven aukipitolaitteet</span></a></li><li role="none"  class="level2 nav-7-13-27 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/nimikilvet-ja-talonumerot" role="menuitem" ><span>Nimikilvet ja talonumerot</span></a></li><li role="none"  class="level2 nav-7-13-28 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/ovikellot-ovisilmat-ja-varmuusketjut" role="menuitem" ><span>Ovikellot, ovisilmät ja varmuusketjut</span></a></li><li role="none"  class="level2 nav-7-13-29 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/helat/huonekalutulpat-ja-huopanastat" role="menuitem" ><span>Huonekalutulpat ja huopanastat,</span></a></li></ul></li>
957<li role="none"  class="level1 nav-7-14 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/takat-piiput-ja-lammittimet" role="menuitem" ><span>Takat, piiput ja lämmittimet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-7-14-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/takat-piiput-ja-lammittimet/muut-lammittimet" role="menuitem" ><span>Muut lämmittimet</span></a></li><li role="none"  class="level2 nav-7-14-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/takat-piiput-ja-lammittimet/tarkastusluukut" role="menuitem" ><span>Tarkastusluukut</span></a></li><li role="none"  class="level2 nav-7-14-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/takat-piiput-ja-lammittimet/rakennuslammittimet-ja-pakkasvahdit" role="menuitem" ><span>Rakennuslämmittimet ja pakkasvahdit</span></a></li><li role="none"  class="level2 nav-7-14-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/takat-piiput-ja-lammittimet/arinat-savupellit-ja-rakennusvalut" role="menuitem" ><span>Arinat, savupellit ja rakennusvalut</span></a></li><li role="none"  class="level2 nav-7-14-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/rakennustarvikkeet/takat-piiput-ja-lammittimet/uunineduspellit-muut-valut-taokset" role="menuitem" ><span>Uunineduspellit, muut valut, taokset</span></a></li></ul></li></ul></li><li role="none"  class="level0 nav-8 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet" role="menuitem"  class="level-top" ><span>Työkalut</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-8-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hitsaus" role="menuitem" ><span>Hitsaus</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hitsaus/kaasuhitsauskoneet-tarvikkeet" role="menuitem" ><span>Kaasuhitsauskoneet,-tarvikkeet</span></a></li><li role="none"  class="level2 nav-8-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hitsaus/kaasu-sahkohitsaustarvikkeet" role="menuitem" ><span>Kaasu-, sähköhitsaustarvikkeet</span></a></li><li role="none"  class="level2 nav-8-1-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hitsaus/hitsauspuikot" role="menuitem" ><span>Hitsauspuikot</span></a></li></ul></li><li role="none"  class="level1 nav-8-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut" role="menuitem" ><span>Käsityökalut</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/optiset-tasomitat-ja-laser-tasomitat" role="menuitem" ><span>Optiset tasomitat ja laser tasomitat</span></a></li><li role="none"  class="level2 nav-8-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/reikasahat" role="menuitem" ><span>Reikäsahat</span></a></li><li role="none"  class="level2 nav-8-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/puristavat-pihdit-lukkopihdit-ja-siirtopihdit" role="menuitem" ><span>Puristavat pihdit,lukkopihdit ja siirtopihdit</span></a></li><li role="none"  class="level2 nav-8-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/leikkaavatpihdit-voimapihdit-ja-hohtimet" role="menuitem" ><span>Leikkaavatpihdit, voimapihdit ja hohtimet</span></a></li><li role="none"  class="level2 nav-8-2-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/pelti-levysakset-leikkurit" role="menuitem" ><span>Pelti-,levysakset, leikkurit</span></a></li><li role="none"  class="level2 nav-8-2-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/kaakelipihdit-leikkurit" role="menuitem" ><span>Kaakelipihdit-,leikkurit</span></a></li><li role="none"  class="level2 nav-8-2-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/pulttisakset-ja-teraskoysisakset" role="menuitem" ><span>Pulttisakset ja teräsköysisakset</span></a></li><li role="none"  class="level2 nav-8-2-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/puu-hirsiseinaporat" role="menuitem" ><span>Puu-, hirsiseinäporat</span></a></li><li role="none"  class="level2 nav-8-2-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/kovapalaterat-iskuporanterat" role="menuitem" ><span>Kovapalaterät, iskuporanterät</span></a></li><li role="none"  class="level2 nav-8-2-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/mittanauhat-nivelmitat-ja-viivottimet" role="menuitem" ><span>Mittanauhat, nivelmitat ja viivottimet</span></a></li><li role="none"  class="level2 nav-8-2-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/tyontomitat-mikrometrit" role="menuitem" ><span>Työntömitat, mikrometrit</span></a></li><li role="none"  class="level2 nav-8-2-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/terasviivaimet-ja-tasolevyt" role="menuitem" ><span>Teräsviivaimet ja tasolevyt,</span></a></li><li role="none"  class="level2 nav-8-2-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/suora-yleiskulmaimet-astemitat" role="menuitem" ><span>Suora-,yleiskulmaimet,astemitat</span></a></li><li role="none"  class="level2 nav-8-2-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/vatupassit-vesivaaka-ja-vaaitusvalineet" role="menuitem" ><span>Vatupassit, vesivaaka ja vaaitusvälineet</span></a></li><li role="none"  class="level2 nav-8-2-15 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/rakotulkit-ja-reikatulkit" role="menuitem" ><span>Rakotulkit ja reikätulkit</span></a></li><li role="none"  class="level2 nav-8-2-16 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/muut-mittauslaitteet" role="menuitem" ><span>Muut mittauslaitteet</span></a></li><li role="none"  class="level2 nav-8-2-17 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/piirtopuikot-ja-pistepuikot" role="menuitem" ><span>Piirtopuikot ja pistepuikot</span></a></li><li role="none"  class="level2 nav-8-2-18 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/timpurikynat-merkitsemiskynat-ja-liidut" role="menuitem" ><span>Timpurikynät, merkitsemiskynät ja liidut</span></a></li><li role="none"  class="level2 nav-8-2-19 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/tyokalupakit-laukut" role="menuitem" ><span>Työkalupakit, -laukut</span></a></li><li role="none"  class="level2 nav-8-2-20 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/tyokaluk
957aapit-laatikostot" role="menuitem" ><span>Työkalukaapit, -laatikostot</span></a></li><li role="none"  class="level2 nav-8-2-21 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/varastolaatikot-laatikonsiirto" role="menuitem" ><span>Varastolaatikot,laatikonsiirto</span></a></li><li role="none"  class="level2 nav-8-2-22 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sorkka-purkuraudat" role="menuitem" ><span>Sorkka-, purkuraudat</span></a></li><li role="none"  class="level2 nav-8-2-23 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/muurauskauhat-puhdistuskauhat-ja-rappauskauhat" role="menuitem" ><span>Muurauskauhat, puhdistuskauhat ja rappauskauhat</span></a></li><li role="none"  class="level2 nav-8-2-24 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/silityslatat-hiertimet" role="menuitem" ><span>Silityslatat, hiertimet</span></a></li><li role="none"  class="level2 nav-8-2-25 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/laastikammat" role="menuitem" ><span>Laastikammat</span></a></li><li role="none"  class="level2 nav-8-2-26 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/saumaraudat-ja-rappauskoneet" role="menuitem" ><span>Saumaraudat ja rappauskoneet</span></a></li><li role="none"  class="level2 nav-8-2-27 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/laatoitustyovalineet" role="menuitem" ><span>Laatoitustyövälineet</span></a></li><li role="none"  class="level2 nav-8-2-28 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/laattasaumaustyovalineet" role="menuitem" ><span>Laattasaumaustyövälineet</span></a></li><li role="none"  class="level2 nav-8-2-29 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/muut-kasityokalut" role="menuitem" ><span>Muut käsityökalut</span></a></li><li role="none"  class="level2 nav-8-2-30 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/jakoavaimet" role="menuitem" ><span>Jakoavaimet</span></a></li><li role="none"  class="level2 nav-8-2-31 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/hylsyavaimet-hylsyvaantimet-ja-jatkovarret" role="menuitem" ><span>Hylsyavaimet, hylsyvääntimet ja jatkovarret</span></a></li><li role="none"  class="level2 nav-8-2-32 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/kiintoavaimet-sarjat" role="menuitem" ><span>Kiintoavaimet, -sarjat</span></a></li><li role="none"  class="level2 nav-8-2-33 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/konekarjet-karjen-pitimet" role="menuitem" ><span>Konekärjet, kärjen pitimet</span></a></li><li role="none"  class="level2 nav-8-2-34 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/kuusiokolo-ja-koloavainsarjat" role="menuitem" ><span>Kuusiokolo ja ,koloavainsarjat</span></a></li><li role="none"  class="level2 nav-8-2-35 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/penkki-ja-putkiruuvipuristimet" role="menuitem" ><span>Penkki- ja putkiruuvipuristimet</span></a></li><li role="none"  class="level2 nav-8-2-36 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/liimaus-kisko-suurtehopuristimet" role="menuitem" ><span>Liimaus-,kisko-,suurtehopuristimet</span></a></li><li role="none"  class="level2 nav-8-2-37 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/putkileikkurit-terat" role="menuitem" ><span>Putkileikkurit,-terät</span></a></li><li role="none"  class="level2 nav-8-2-38 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/lyontinaulaimet-laitteet" role="menuitem" ><span>Lyöntinaulaimet, laitteet</span></a></li><li role="none"  class="level2 nav-8-2-39 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sahat" role="menuitem" ><span>Sahat</span></a><ul class="level2 submenu"><li role="none"  class="level3 nav-8-2-39-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sahat/kasisahat-terat" role="menuitem" ><span>Käsisahat,-terät</span></a></li><li role="none"  class="level3 nav-8-2-39-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sahat/halko-oksa-kaarisahat-tera" role="menuitem" ><span>Halko-,oksa-,kaarisahat, -terä</span></a></li><li role="none"  class="level3 nav-8-2-39-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sahat/metallisahankaaret-terat-kone" role="menuitem" ><span>Metallisahankaaret,-terät,kone</span></a></li><li role="none"  class="level3 nav-8-2-39-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sahat/kevytbetonisahat" role="menuitem" ><span>Kevytbetonisahat</span></a></li><li role="none"  class="level3 nav-8-2-39-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/sahat/muut-sahat" role="menuitem" ><span>Muut sahat</span></a></li></ul></li><li role="none"  class="level2 nav-8-2-40 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/vasarat" role="menuitem" ><span>Vasarat</span></a><ul class="level2 submenu"><li role="none"  class="level3 nav-8-2-40-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/vasarat/kirvesmiehen-talousvasarat" role="menuitem" ><span>Kirvesmiehen-, talousvasarat</span></a></li><li role="none"  class="level3 nav-8-2-40-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/vasarat/harja-kuula-levy-ja-konepa" role="menuitem" ><span>Harja-, kuula-,levy- ja konepa</span></a></li><li role="none"  class="level3 nav-8-2-40-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/vasarat/nuijat-kumi-muovivasara" role="menuitem" ><span>Nuijat, kumi-, muovivasara</span></a></li><li role="none"  class="level3 nav-8-2-40-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/vasarat/moskat-kivi-pajamoukarit" role="menuitem" ><span>Moskat, kivi-, pajamoukarit</span></a></li></ul></li><li role="none"  class="level2 nav-8-2-41 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/viilat-ja-raspit" role="menuitem" ><span>Viilat ja raspit</span></a><ul class="level2 submenu"><li role="none"  class="level3 nav-8-2-41-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/viilat-ja-raspit/muut-viilat" role="menuitem" ><span>Muut viilat</span></a></li><li role="none"  class="level3 nav-8-2-41-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/viilat-ja-raspit/konepajaviilat" role="menuitem" ><span>Konepajaviilat</span></a></li><li role="none"  class="level3 nav-8-2-41-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/viilat-ja-raspit/muita-viiloja" role="menuitem" ><span>Muita viiloja</span></a></li></ul></li><li role="none"  class="level2 nav-8-2-42 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/taltat-ja-tuurnat" role="menuitem" ><span>Taltat ja tuurnat</span></a><ul class="level2 submenu"><li role="none"  class="level3 nav-8-2-42-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/taltat-ja-tuurnat/tasa-kouru-sorvitaltat" role="menuitem" ><span>Tasa-, kouru-,sorvitaltat</span></a></li><li role="none"  class="level3 nav-8-2-42-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/taltat-ja-tuurnat/katkaisutaltat-tuurnat" role="menuitem" ><span>Katkaisutaltat, tuurnat</span></a></li><li role="none"  class="level3 nav-8-2-42-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/taltat-ja-tuurnat/kivi-piikkaustaltat" role="menuitem" ><span>Kivi-, piikkaustaltat</span></a></li><li role="none"  class="level3 nav-8-2-42-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/taltat-ja-tuurnat/ruuvitaltat-osat" role="menuitem" ><span>Ruuvitaltat, -osat</span></a></li></ul></li>
957<li role="none"  class="level2 nav-8-2-43 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/puukot-veitset-ja-terat" role="menuitem" ><span>Puukot, veitset ja terät</span></a><ul class="level2 submenu"><li role="none"  class="level3 nav-8-2-43-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/puukot-veitset-ja-terat/vuolupuukot-kaantoveitset" role="menuitem" ><span>Vuolupuukot, kääntöveitset</span></a></li><li role="none"  class="level3 nav-8-2-43-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/puukot-veitset-ja-terat/yleisveitset-terat" role="menuitem" ><span>Yleisveitset, -terät</span></a></li><li role="none"  class="level3 nav-8-2-43-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/kasityokalut/puukot-veitset-ja-terat/muut-tyoveitset-terat" role="menuitem" ><span>Muut työveitset, -terät</span></a></li></ul></li></ul></li><li role="none"  class="level1 nav-8-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet" role="menuitem" ><span>Sähkötyökalut ja tarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/sahko-isku-miniporakoneet" role="menuitem" ><span>Sähkö isku-,miniporakoneet</span></a></li><li role="none"  class="level2 nav-8-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/kulma-suora-taso-nauhahioma" role="menuitem" ><span>Kulma-,suora-,taso-,nauhahioma</span></a></li><li role="none"  class="level2 nav-8-3-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/sahko-pyoro-puukko-pisto-ke" role="menuitem" ><span>Sähkö pyörö-,puukko-,pisto-,ke</span></a></li><li role="none"  class="level2 nav-8-3-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/ruuvin-mutterinvaantimet" role="menuitem" ><span>Ruuvin-, mutterinvääntimet</span></a></li><li role="none"  class="level2 nav-8-3-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/kuumaliimapistoolit" role="menuitem" ><span>Kuumaliimapistoolit</span></a></li><li role="none"  class="level2 nav-8-3-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/kasityokalujen-lisavarusteet" role="menuitem" ><span>Käsityökalujen lisävarusteet,-</span></a></li><li role="none"  class="level2 nav-8-3-7 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/sahkotyokalut-ja-tarvikkeet/muut-hiomakoneet" role="menuitem" ><span>Muut hiomakoneet</span></a></li></ul></li><li role="none"  class="level1 nav-8-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/paineilmatyokalut" role="menuitem" ><span>Paineilmatyökalut</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/paineilmatyokalut/lattia-kiinteat-kompressorit" role="menuitem" ><span>Lattia-, kiinteät kompressorit</span></a></li><li role="none"  class="level2 nav-8-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/paineilmatyokalut/paineilmaletkut" role="menuitem" ><span>Paineilmaletkut</span></a></li><li role="none"  class="level2 nav-8-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/paineilmatyokalut/muut-paineilmatyokalut" role="menuitem" ><span>Muut paineilmatyökalut</span></a></li><li role="none"  class="level2 nav-8-4-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/paineilmatyokalut/ruuvin-mutterinvaantajat" role="menuitem" ><span>Ruuvin-, mutterinvääntäjät</span></a></li><li role="none"  class="level2 nav-8-4-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/paineilmatyokalut/paineilmanaulaimet" role="menuitem" ><span>Paineilmanaulaimet</span></a></li></ul></li>
957<li role="none"  class="level1 nav-8-5 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/lastuavat-tyokalut" role="menuitem" ><span>Lastuavat työkalut</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/lastuavat-tyokalut/metalli-kierukka-asennuspora" role="menuitem" ><span>Metalli-,kierukka-,asennuspora</span></a></li><li role="none"  class="level2 nav-8-5-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/lastuavat-tyokalut/kierreleuanvaantimet" role="menuitem" ><span>Kierreleuanvääntimet</span></a></li><li role="none"  class="level2 nav-8-5-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/lastuavat-tyokalut/kierretapinvaantimet-tapit" role="menuitem" ><span>Kierretapinvääntimet, -tapit,</span></a></li></ul></li><li role="none"  class="level1 nav-8-6 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hiomatarvikkeet" role="menuitem" ><span>Hiomatarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-6-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hiomatarvikkeet/hioma-katkaisu-kiillotuslaik" role="menuitem" ><span>Hioma-,katkaisu-,kiillotuslaik</span></a></li><li role="none"  class="level2 nav-8-6-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hiomatarvikkeet/hiomakankaat-paperit" role="menuitem" ><span>Hiomakankaat,-paperit</span></a></li><li role="none"  class="level2 nav-8-6-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/hiomatarvikkeet/muut-hiomatarvikkeet" role="menuitem" ><span>Muut hiomatarvikkeet</span></a></li></ul></li><li role="none"  class="level1 nav-8-7 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-tyokalut" role="menuitem" ><span>Muut työkalut</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-7-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-tyokalut/kuumailmapistoolit-lisavarust" role="menuitem" ><span>Kuumailmapistoolit,-lisävarust</span></a></li><li role="none"  class="level2 nav-8-7-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-tyokalut/nitomislaitteet" role="menuitem" ><span>Nitomislaitteet</span></a></li><li role="none"  class="level2 nav-8-7-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-tyokalut/tynnyri-oljytelineet" role="menuitem" ><span>Tynnyri-, öljytelineet</span></a></li><li role="none"  class="level2 nav-8-7-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-tyokalut/vetoniittilaitteet" role="menuitem" ><span>Vetoniittilaitteet</span></a></li></ul></li><li role="none"  class="level1 nav-8-8 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet" role="menuitem" ><span>Muut teollisuustarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-8-8-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/kuulalaakerit" role="menuitem" ><span>Kuulalaakerit</span></a></li><li role="none"  class="level2 nav-8-8-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/rullalaakerit" role="menuitem" ><span>Rullalaakerit</span></a></li><li role="none"  class="level2 nav-8-8-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/kuljetuspyorat-kalustepyorat" role="menuitem" ><span>Kuljetuspyörät,kalustepyörät</span></a></li><li role="none"  class="level2 nav-8-8-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/muut-kuljetus-kuormausvalineet" role="menuitem" ><span>
957Muut kuljetus-, kuormausvälineet</span></a></li><li role="none"  class="level2 nav-8-8-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/voimansiirto" role="menuitem" ><span>Voimansiirto</span></a></li><li role="none"  class="level2 nav-8-8-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/trasselit-kiillotusvanut-saamiskat" role="menuitem" ><span>Trasselit, kiillotusvanut, säämiskät</span></a></li><li role="none"  class="level2 nav-8-8-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/muut-autotarvikkeet" role="menuitem" ><span>Muut autotarvikkeet</span></a></li><li role="none"  class="level2 nav-8-8-8 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut-ja-teollisuustarvikkeet/muut-teollisuustarvikkeet/muut-asennustarvikkeet" role="menuitem" ><span>Muut asennustarvikkeet</span></a></li></ul></li></ul></li><li role="none"  class="level0 nav-9 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna" role="menuitem"  class="level-top" ><span>Kylpyhuone ja sauna</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-9-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kiukaat-ja-padat" role="menuitem" ><span>Kiukaat ja padat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-9-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kiukaat-ja-padat/puulammitteiset-kiukaat" role="menuitem" ><span>Puulämmitteiset kiukaat</span></a></li><li role="none"  class="level2 nav-9-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kiukaat-ja-padat/sahkokiukaat" role="menuitem" ><span>Sähkökiukaat</span></a></li><li role="none"  class="level2 nav-9-1-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kiukaat-ja-padat/kiukaiden-osat-tarvikkeet" role="menuitem" ><span>Kiukaiden osat, tarvikkeet</span></a></li><li role="none"  class="level2 nav-9-1-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kiukaat-ja-padat/savuhormit-ja-savuputket" role="menuitem" ><span>Savuhormit ja savuputket</span></a></li></ul></li><li role="none"  class="level1 nav-9-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonetarvikkeet-ja-saunatarvikkeet" role="menuitem" ><span>Kylpyhuonetarvikkeet ja saunatarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-9-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonetarvikkeet-ja-saunatarvikkeet/suihkuverhot" role="menuitem" ><span>Suihkuverhot</span></a></li><li role="none"  class="level2 nav-9-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonetarvikkeet-ja-saunatarvikkeet/saunakalusteet" role="menuitem" ><span>Saunakalusteet</span></a></li><li role="none"  class="level2 nav-9-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonetarvikkeet-ja-saunatarvikkeet/kylpyhuonetarvikkeet" role="menuitem" ><span>Kylpyhuonetarvikkeet</span></a></li><li role="none"  class="level2 nav-9-2-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonetarvikkeet-ja-saunatarvikkeet/vaatenaulakot-koukut" role="menuitem" ><span>Vaatenaulakot,-koukut</span></a></li></ul></li><li role="none"  class="level1 nav-9-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/saunapuutavara" role="menuitem" ><span>Saunapuutavara</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-9-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/saunapuutavara/saunapaneelit-ja-laudelaudat" role="menuitem" ><span>Saunapaneelit ja laudelaudat</span></a></li><li role="none"  class="level2 nav-9-3-2 category-item last  nav-item">
957<a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/saunapuutavara/saunan-lauteet-ja-puuritilat" role="menuitem" ><span>Saunan lauteet ja puuritilät</span></a></li></ul></li><li role="none"  class="level1 nav-9-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/suihkut-ja-hanat" role="menuitem" ><span>Suihkut ja hanat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-9-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/suihkut-ja-hanat/hanat" role="menuitem" ><span>Hanat</span></a></li><li role="none"  class="level2 nav-9-4-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/suihkut-ja-hanat/hanavarusteet" role="menuitem" ><span>Hanavarusteet</span></a></li></ul></li><li role="none"  class="level1 nav-9-5 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet" role="menuitem" ><span>Kylpyhuonekalusteet ja wc-kalusteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-9-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/suihkualtaat-suihkukaapit-ja-suihkuseinat" role="menuitem" ><span>Suihkualtaat, suihkukaapit ja suihkuseinät</span></a></li><li role="none"  class="level2 nav-9-5-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/kylpyammeet-porealtaat-ja-kylpytynnyrit" role="menuitem" ><span>Kylpyammeet, porealtaat ja kylpytynnyrit</span></a></li><li role="none"  class="level2 nav-9-5-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/peilit" role="menuitem" ><span>Peilit</span></a></li><li role="none"  class="level2 nav-9-5-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/wc-istuinrenkaat-varusteet" role="menuitem" ><span>
957Wc-istuinrenkaat, -varusteet</span></a></li><li role="none"  class="level2 nav-9-5-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/allaskaapit-ja-peilikaapit" role="menuitem" ><span>Allaskaapit ja peilikaapit</span></a></li><li role="none"  class="level2 nav-9-5-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/pesualtaat-ja-tulvasuojat" role="menuitem" ><span>Pesualtaat ja tulvasuojat</span></a></li><li role="none"  class="level2 nav-9-5-7 category-item last  nav-item"><a href="https://www.hartman.fi/fi/kylpyhuone-ja-sauna/kylpyhuonekalusteet-ja-wc-kalusteet/wc-istuimet" role="menuitem" ><span>WC istuimet</span></a></li></ul></li></ul></li><li role="none"  class="level0 nav-10 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat" role="menuitem"  class="level-top" ><span>Pintamateriaalit ja liimat</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-10-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/listat" role="menuitem" ><span>Listat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-10-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/listat/kattolistat-varjolistat-ja-holkkalistat" role="menuitem" ><span>Kattolistat, varjolistat ja holkkalistat</span></a></li><li role="none"  class="level2 nav-10-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/listat/peitelistat-reunalistat-ja-hobbylistat" role="menuitem" ><span>Peitelistat, reunalistat ja hobbylistat</span></a></li><li role="none"  class="level2 nav-10-1-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/listat/muovilistat" role="menuitem" ><span>Muovilistat</span></a></li><li role="none"  class="level2 nav-10-1-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/listat/alumiinilistat-eritasolistat-ja-kulmalistat" role="menuitem" ><span>Alumiinilistat, eritasolistat ja kulmalistat</span></a></li><li role="none"  class="level2 nav-10-1-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/listat/laattalistat" role="menuitem" ><span>Laattalistat</span></a></li></ul></li><li role="none"  class="level1 nav-10-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/keraamiset-ja-muut-laatat" role="menuitem" ><span>Keraamiset laatat ja kaakelit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-10-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/keraamiset-ja-muut-laatat/lattialaatat" role="menuitem" ><span>Lattialaatat</span></a></li><li role="none"  class="level2 nav-10-2-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/keraamiset-ja-muut-laatat/seinalaatat" role="menuitem" ><span>Seinälaatat</span></a></li></ul></li><li role="none"  class="level1 nav-10-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet" role="menuitem" ><span>Lattia- ja seinäpäällysteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-10-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/non-woven-tapetit-eli-kuitutapetit" role="menuitem" ><span>Non-woven tapetit eli kuitutapetit</span></a></li><li role="none"  class="level2 nav-10-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/ohuet-muovipaallysteet" role="menuitem" ><span>Ohuet muovipäällysteet</span></a></li><li role="none"  class="level2 nav-10-3-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/lasikuitukudokset" role="menuitem" ><span>Lasikuitukudokset</span></a></li><li role="none"  class="level2 nav-10-3-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/muovimatot-homogeniset" role="menuitem" ><span>Muovimatot ja vinyylimatot</span></a></li><li role="none"  class="level2 nav-10-3-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/vinyylilankut-ja-vinyylilattialaatat" role="menuitem" ><span>Vinyylilankut ja vinyylilattialaatat</span></a></li><li role="none"  class="level2 nav-10-3-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/parketit" role="menuitem" ><span>Parketit</span></a></li><li role="none"  class="level2 nav-10-3-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/laminaatit" role="menuitem" ><span>Laminaatit</span></a></li><li role="none"  class="level2 nav-10-3-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/kylpyhuonematot" role="menuitem" ><span>Kylpyhuonematot</span></a></li><li role="none"  class="level2 nav-10-3-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/sisustuslevyt" role="menuitem" ><span>Sisustuslevyt</span></a></li><li role="none"  class="level2 nav-10-3-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/neulehuopa-tekstiilimatot" role="menuitem" ><span>Neulehuopa-, tekstiilimatot</span></a></li><li role="none"  class="level2 nav-10-3-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/kynnysmatot-ja-kaytavamatot" role="menuitem" ><span>Kynnysmatot ja käytävämatot</span></a></li><li role="none"  class="level2 nav-10-3-12 category-item last  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/lattia-ja-seinapaallysteet/muut-matot" role="menuitem" ><span>Muut matot</span></a></li></ul></li>
957<li role="none"  class="level1 nav-10-4 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat" role="menuitem" ><span>Liimat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-10-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/silikoni-akryylimassa-ja-sulfidimassa" role="menuitem" ><span>Silikoni, akryylimassa ja sulfidimassa</span></a></li><li role="none"  class="level2 nav-10-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/yleisliimat" role="menuitem" ><span>Yleisliimat</span></a></li><li role="none"  class="level2 nav-10-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/puuliimat" role="menuitem" ><span>Puuliimat</span></a></li><li role="none"  class="level2 nav-10-4-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/reaktio-pikaliimat" role="menuitem" ><span>Reaktio-, pikaliimat</span></a></li><li role="none"  class="level2 nav-10-4-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/lattia-seinakateliimat" role="menuitem" ><span>Lattia., seinäkateliimat</span></a></li><li role="none"  class="level2 nav-10-4-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/laattaliimat" role="menuitem" ><span>Laattaliimat</span></a></li><li role="none"  class="level2 nav-10-4-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/tapettiliimat-ja-tapettiliisterit" role="menuitem" ><span>Tapettiliimat ja tapettiliisterit</span></a></li><li role="none"  class="level2 nav-10-4-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/teollisuusliimat-ja-kuumasaumaliimat" role="menuitem" ><span>Teollisuusliimat ja kuumasaumaliimat</span></a></li><li role="none"  class="level2 nav-10-4-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/muut-liimat" role="menuitem" ><span>Muut liimat</span></a></li><li role="none"  class="level2 nav-10-4-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/vari-ja-petsiaineet" role="menuitem" ><span>Väri- ja petsiaineet</span></a></li><li role="none"  class="level2 nav-10-4-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/koristepinnoitteet" role="menuitem" ><span>Koristepinnoitteet</span></a></li><li role="none"  class="level2 nav-10-4-12 category-item last  nav-item"><a href="https://www.hartman.fi/fi/pintamateriaalit-ja-liimat/liimat/polynsidontapinnoitteet-ja-pinnankyllastyspinnoitteet" role="menuitem" ><span>Pölynsidontapinnoitteet ja pinnankyllästyspinnoitteet</span></a></li></ul></li></ul></li><li role="none"  class="level0 nav-11 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/lvis" role="menuitem"  class="level-top" ><span>LVIS</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-11-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi" role="menuitem" ><span>Vesi ja viemäröinti</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-11-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/kupariputki-osat" role="menuitem" ><span>Kupariputki osat</span></a></li><li role="none"  class="level2 nav-11-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/viemarinaukaisulaitteet" role="menuitem" ><span>Viemärinaukaisulaitteet</span></a></li><li role="none"  class="level2 nav-11-1-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/kupariputket" role="menuitem" ><span>Kupariputket</span></a></li><li role="none"  class="level2 nav-11-1-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/putket-putkiosat-ja-liittimet" role="menuitem" ><span>Putket, putkiosat ja liittimet</span></a></li><li role="none"  class="level2 nav-11-1-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/pel-vesijohtoputki" role="menuitem" ><span>Pel-vesijohtoputki</span></a></li><li role="none"  class="level2 nav-11-1-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/pe-maaviemariputket-yhteet" role="menuitem" ><span>
957Pe-maaviemäriputket, -yhteet</span></a></li><li role="none"  class="level2 nav-11-1-7 category-item last  nav-item"><a href="https://www.hartman.fi/fi/lvis/vesi-ja-viemarointi/lattiakaivot-korotusrenkaat" role="menuitem" ><span>Lattiakaivot, korotusrenkaat</span></a></li></ul></li><li role="none"  class="level1 nav-11-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput" role="menuitem" ><span>Sähkötarvikkeet ja lamput</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-11-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/erikoislamput" role="menuitem" ><span>Erikoislamput</span></a></li><li role="none"  class="level2 nav-11-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/asennusjohdot" role="menuitem" ><span>Asennusjohdot</span></a></li><li role="none"  class="level2 nav-11-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/jatkojohdot" role="menuitem" ><span>Jatkojohdot</span></a></li><li role="none"  class="level2 nav-11-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/kytkimet" role="menuitem" ><span>Kytkimet</span></a></li><li role="none"  class="level2 nav-11-2-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/pistorasiat" role="menuitem" ><span>Pistorasiat</span></a></li><li role="none"  class="level2 nav-11-2-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/liittimet-jakorasiat-tiivisteet" role="menuitem" ><span>Liittimet, jakorasiat, tiivisteet</span></a></li><li role="none"  class="level2 nav-11-2-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/asennusputket-ja-putkitustarvikkeet" role="menuitem" ><span>Asennusputket ja putkitustarvikkeet</span></a></li><li role="none"  class="level2 nav-11-2-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/sulakkeet" role="menuitem" ><span>Sulakkeet</span></a></li><li role="none"  class="level2 nav-11-2-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/seinavalaisimet" role="menuitem" ><span>Seinävalaisimet</span></a></li><li role="none"  class="level2 nav-11-2-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/kattovalaisimet" role="menuitem" ><span>Kattovalaisimet</span></a></li><li role="none"  class="level2 nav-11-2-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/ulko-ja-pihavalaisimet" role="menuitem" ><span>Ulko- ja pihavalaisimet</span></a></li><li role="none"  class="level2 nav-11-2-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/tyovalot" role="menuitem" ><span>Työvalot</span></a></li><li role="none"  class="level2 nav-11-2-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/hehkulamput" role="menuitem" ><span>Hehkulamput</span></a></li><li role="none"  class="level2 nav-11-2-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/loistelamput" role="menuitem" ><span>Loistelamput</span></a></li><li role="none"  class="level2 nav-11-2-15 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/puhelin-radio-ja-tv-tarvikkeet" role="menuitem" ><span>Puhelin- radio- ja tv-tarvikkeet</span></a></li><li role="none"  class="level2 nav-11-2-16 category-item  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/paristot" role="menuitem" ><span>Paristot</span></a></li><li role="none"  class="level2 nav-11-2-17 category-item last  nav-item"><a href="https://www.hartman.fi/fi/lvis/sahkotarvikkeet-ja-lamput/taskulamput" role="menuitem" ><span>Taskulamput</span></a></li></ul></li><li role="none"  class="level1 nav-11-3 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/lvis/ilmanvaihto" role="menuitem" ><span>Ilmanvaihto</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-11-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/lvis/ilmanvaihto/ilmastointikanavat" role="menuitem" ><span>Ilmastointikanavat</span></a></li><li role="none"  class="level2 nav-11-3-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/lvis/ilmanvaihto/ilmanvaihtoventtiilit" role="menuitem" ><span>
957Ilmanvaihtoventtiilit</span></a></li></ul></li></ul></li><li role="none"  class="level0 nav-12 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/tyoymparisto" role="menuitem"  class="level-top" ><span>Henkilökohtaiset suojavarusteet</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-12-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/suojakyparat-paahineet" role="menuitem" ><span>Suojakypärät,-päähineet</span></a></li><li role="none"  class="level1 nav-12-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/suojalasit-kasvosuojaimet" role="menuitem" ><span>Suojalasit, kasvosuojaimet</span></a></li><li role="none"  class="level1 nav-12-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/poly-ja-hengityssuojaimet" role="menuitem" ><span>Pöly- ja hengityssuojaimet</span></a></li><li role="none"  class="level1 nav-12-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/kuulosuojaimet" role="menuitem" ><span>Kuulosuojaimet</span></a></li><li role="none"  class="level1 nav-12-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/muut-suojaimet-suojavalineet" role="menuitem" ><span>Muut suojaimet, suojavälineet</span></a></li><li role="none"  class="level1 nav-12-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/miesten-kumi-ja-muovijalkinee" role="menuitem" ><span>Miesten kumi- ja muovijalkinee</span></a></li><li role="none"  class="level1 nav-12-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/sukat-lyhyet" role="menuitem" ><span>Sukat, lyhyet</span></a></li><li role="none"  class="level1 nav-12-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/t-paidat" role="menuitem" ><span>T-paidat</span></a></li><li role="none"  class="level1 nav-12-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/turvakengat" role="menuitem" ><span>Turvakengät</span></a></li><li role="none"  class="level1 nav-12-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/jalkineiden-pohjalliset" role="menuitem" ><span>Jalkineiden pohjalliset</span></a></li><li role="none"  class="level1 nav-12-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/tyosormikkaat-nahkaa" role="menuitem" ><span>Työsormikkaat, nahkaa</span></a></li><li role="none"  class="level1 nav-12-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/tyosormikkaat-kumia" role="menuitem" ><span>Työsormikkaat, kumia</span></a></li><li role="none"  class="level1 nav-12-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/erikoiskasineet" role="menuitem" ><span>Erikoiskäsineet</span></a></li><li role="none"  class="level1 nav-12-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/kertakayttokasineet" role="menuitem" ><span>Kertakäyttökäsineet</span></a></li><li role="none"  class="level1 nav-12-15 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/laastarit" role="menuitem" ><span>Laastarit</span></a></li></ul></li><li role="none"  class="level0 nav-13 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/puutavara" role="menuitem"  class="level-top" ><span>Puutavara</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-13-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/puutavara/kyllastetty" role="menuitem" ><span>Kyllästetty</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-13-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/puutavara/kyllastetty-puutavara/kyllastetty-puutavara" role="menuitem" ><span>Kyllästetty puutavara</span></a></li><li role="none"  class="level2 nav-13-1-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/puutavara/kyllastetty-puutavara/komposiittilaudat" role="menuitem" ><span>Komposiittilaudat</span></a></li></ul></li>
957<li role="none"  class="level1 nav-13-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/puutavara/sahattu" role="menuitem" ><span>Sahattu</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-13-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/puutavara/sahattu/sahattu-puutavara" role="menuitem" ><span>Sahattu puutavara</span></a></li><li role="none"  class="level2 nav-13-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/puutavara/sahattu/lujuusluokiteltu-puu" role="menuitem" ><span>Lujuusluokiteltu puu</span></a></li><li role="none"  class="level2 nav-13-2-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/puutavara/sahattu/hienosahattu-muu-sahattu-puut" role="menuitem" ><span>Hienosahattu-,muu sahattu puut</span></a></li></ul></li><li role="none"  class="level1 nav-13-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/puutavara/hoylatty" role="menuitem" ><span>Höylätty</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-13-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/puutavara/hoylatty/pontattu-puutavara" role="menuitem" ><span>Pontattu puutavara</span></a></li><li role="none"  class="level2 nav-13-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/puutavara/hoylatty/hoylatty-puutavara" role="menuitem" ><span>Höylätty puutavara</span></a></li><li role="none"  class="level2 nav-13-3-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/puutavara/hoylatty/paneelit" role="menuitem" ><span>Paneelit</span></a></li></ul></li><li role="none"  class="level1 nav-13-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/puu-ja-levytuotteet/puutavara/liimapuu-ja-liimapuujalosteet" role="menuitem" ><span>Liimapuu ja liimapuujalosteet</span></a></li><li role="none"  class="level1 nav-13-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/puu-ja-levytuotteet/puutavara/viilupuu" role="menuitem" ><span>Viilupuu</span></a></li></ul></li><li role="none"  class="level0 nav-14 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet" role="menuitem"  class="level-top" ><span>Maalit ja maalaustarvikkeet</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-14-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/pastat" role="menuitem" ><span>Pastat</span></a></li><li role="none"  class="level1 nav-14-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/sisamaalit" role="menuitem" ><span>Sisämaalit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-14-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/sisamaalit/sisalateksit" role="menuitem" ><span>Sisälateksit</span></a></li><li role="none"  class="level2 nav-14-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/sisamaalit/sisaoljy-lakkamaalit" role="menuitem" ><span>Sisäöljy-, lakkamaalit</span></a></li><li role="none"  class="level2 nav-14-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/sisamaalit/betonimaalit" role="menuitem" ><span>Betonimaalit</span></a></li><li role="none"  class="level2 nav-14-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/sisamaalit/vesiohenteiset-lakat" role="menuitem" ><span>Vesiohenteiset lakat</span></a></li><li role="none"  class="level2 nav-14-2-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/sisamaalit/liuotinohenteiset-lakat" role="menuitem" ><span>Liuotinohenteiset lakat</span></a></li></ul></li><li role="none"  class="level1 nav-14-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalipesu-ja-ohenteet" role="menuitem" ><span>Maalipesu ja ohenteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-14-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalipesu-ja-ohenteet/ohenteet" role="menuitem" ><span>
957Ohenteet</span></a></li><li role="none"  class="level2 nav-14-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalipesu-ja-ohenteet/maalinpesuaineet" role="menuitem" ><span>Maalinpesuaineet</span></a></li><li role="none"  class="level2 nav-14-3-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalipesu-ja-ohenteet/maalinpoistoaineet" role="menuitem" ><span>Maalinpoistoaineet</span></a></li></ul></li><li role="none"  class="level1 nav-14-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit" role="menuitem" ><span>Ulkomaalit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-14-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/oljymaalit" role="menuitem" ><span>Öljymaalit</span></a></li><li role="none"  class="level2 nav-14-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/oljykitit" role="menuitem" ><span>Öljykitit</span></a></li><li role="none"  class="level2 nav-14-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/katumaalit" role="menuitem" ><span>Katumaalit</span></a></li><li role="none"  class="level2 nav-14-4-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/ulkolateksit" role="menuitem" ><span>Ulkolateksit</span></a></li><li role="none"  class="level2 nav-14-4-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/julkisivumaalit" role="menuitem" ><span>Julkisivumaalit</span></a></li><li role="none"  class="level2 nav-14-4-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/puunsuojat" role="menuitem" ><span>Puunsuojat</span></a></li><li role="none"  class="level2 nav-14-4-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/ruosteenesto-ja-peltikattomaalit" role="menuitem" ><span>Ruosteenesto ja peltikattomaalit</span></a></li><li role="none"  class="level2 nav-14-4-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/punamulta" role="menuitem" ><span>Punamulta</span></a></li><li role="none"  class="level2 nav-14-4-9 category-item last  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/ulkomaalit-ja-sisamaalit/spraymaalit" role="menuitem" ><span>Spraymaalit</span></a></li></ul></li><li role="none"  class="level1 nav-14-5 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/muut-kemialliset-tuotteet" role="menuitem" ><span>Muut kemialliset tuotteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-14-5-1 category-item first last  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/muut-kemialliset-tuotteet/polttoaineiden-ja-oljyn-lisaaineet" role="menuitem" ><span>Polttoaineiden ja öljyn lisäaineet</span></a></li></ul></li><li role="none"  class="level1 nav-14-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalauslaitteet-ja-pintakasittelylaitteet-seka-tarvikkeet" role="menuitem" ><span>Maalauslaitteet ja pintakäsittelylaitteet sekä tarvikkeet</span></a></li><li role="none"  class="level1 nav-14-7 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet" role="menuitem" ><span>Maalaustarvikkeet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-14-7-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/sekoituslapiot-laastivispilat" role="menuitem" ><span>Sekoituslapiot, laastivispilät</span></a></li><li role="none"  class="level2 nav-14-7-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/siveltimet-pensselit-ja-rajaimet" role="menuitem" ><span>Siveltimet, pensselit ja rajaimet</span></a></li><li role="none"  class="level2 nav-14-7-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/maalaustelat-maalaustelalaatikot-ja-varanahat" role="menuitem" ><span>Maalaustelat, maalaustelalaatikot ja varanahat</span></a></li><li role="none"  class="level2 nav-14-7-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/teraslastat-ja-kumilastat" role="menuitem" ><span>Teräslastat ja kumilastat</span></a></li><li role="none"  class="level2 nav-14-7-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/siklit-kaapimet-raapat" role="menuitem" ><span>Siklit,kaapimet,raapat</span></a></li><li role="none"  class="level2 nav-14-7-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/muut-maalaustarvikkeet" role="menuitem" ><span>Muut maalaustarvikkeet</span></a></li><li role="none"  class="level2 nav-14-7-7 category-item last  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/maalaustarvikkeet/terasharjat" role="menuitem" ><span>Teräsharjat</span></a></li></ul></li>
957<li role="none"  class="level1 nav-14-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/metalliteollisuusmaalit/korroosionestomaalit" role="menuitem" ><span>Korroosionestomaalit</span></a></li><li role="none"  class="level1 nav-14-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/metalliteollisuusmaalit/automaalit" role="menuitem" ><span>Automaalit</span></a></li><li role="none"  class="level1 nav-14-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/metalliteollisuusmaalit/ajoratamaalit" role="menuitem" ><span>Ajoratamaalit</span></a></li><li role="none"  class="level1 nav-14-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/metalliteollisuusmaalit/muut-teollisuusmaalit-pastat" role="menuitem" ><span>Muut teollisuusmaalit / pastat</span></a></li><li role="none"  class="level1 nav-14-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/metalliteollisuusmaalit/metalliteollisuusohenteet" role="menuitem" ><span>Metalliteollisuusohenteet</span></a></li><li role="none"  class="level1 nav-14-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/metalliteollisuusmaalit/pulverimaalit" role="menuitem" ><span>Pulverimaalit</span></a></li><li role="none"  class="level1 nav-14-14 category-item last  nav-item"><a href="https://www.hartman.fi/fi/maalit-ja-maalaustarvikkeet/puuteollisuusmaalit/puuteollisuusmaalit/puuteollisuusmaalit" role="menuitem" ><span>Puuteollisuusmaalit</span></a></li></ul></li><li role="none"  class="level0 nav-15 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/tyovaatteet" role="menuitem"  class="level-top" ><span>Työvaatteet</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-15-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyovaatteet/tyotakit" role="menuitem" ><span>Työtakit</span></a></li><li role="none"  class="level1 nav-15-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyovaatteet/muut-suojapuvut-ja-tyovaatteet" role="menuitem" ><span>Muut suojapuvut ja työvaatteet</span></a></li><li role="none"  class="level1 nav-15-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyovaatteet/sadepuvut" role="menuitem" ><span>Sadepuvut</span></a></li><li role="none"  class="level1 nav-15-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyovaatteet/umpisuojapuvut" role="menuitem" ><span>Umpisuojapuvut</span></a></li><li role="none"  class="level1 nav-15-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyovaatteet/tyohousut" role="menuitem" ><span>Työhousut</span></a></li></ul></li><li role="none"  class="level0 nav-16 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/terakset-ja-metallit" role="menuitem"  class="level-top" ><span>Teräkset ja metallit</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-16-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset" role="menuitem" ><span>Hiiliteräkset</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-16-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/terasputket-kierteistettavat" role="menuitem" ><span>Teräsputket, kierteistettävät</span></a></li><li role="none"  class="level2 nav-16-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/kiila-teras" role="menuitem" ><span>Kiila teräs</span></a></li><li role="none"  class="level2 nav-16-1-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/nelioterakset" role="menuitem" ><span>Neliöteräkset</span></a></li><li role="none"  class="level2 nav-16-1-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/kulmaterakset" role="menuitem" ><span>Kulmateräkset</span></a></li><li role="none"  class="level2 nav-16-1-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/pyoroterakset" role="menuitem" ><span>Pyöröteräkset</span></a></li><li role="none"  class="level2 nav-16-1-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/lattaterakset" role="menuitem" ><span>Lattateräkset</span></a></li><li role="none"  class="level2 nav-16-1-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/huonekalu-ohutseinaputket" role="menuitem" ><span>Huonekalu-, ohutseinäputket</span></a></li><li role="none"  class="level2 nav-16-1-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/putkipalkit" role="menuitem" ><span>Putkipalkit</span></a></li><li role="none"  class="level2 nav-16-1-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/kylmamuotoillut-terasprofiilit" role="menuitem" ><span>Kylmämuotoillut teräsprofiilit</span></a></li><li role="none"  class="level2 nav-16-1-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/u-i-teraspalkit" role="menuitem" ><span>U, i-teräspalkit</span></a></li><li role="none"  class="level2 nav-16-1-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/kuumasinkityt-teraslevyt" role="menuitem" ><span>Kuumasinkityt teräslevyt</span></a></li><li role="none"  class="level2 nav-16-1-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/rihla-nystyra-kulutuslevyt" role="menuitem" ><span>Rihla-, nystyrä-, kulutuslevyt</span></a></li><li role="none"  class="level2 nav-16-1-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/kylmavalssatut-teraslevyt" role="menuitem" ><span>Kylmävalssatut teräslevyt</span></a></li><li role="none"  class="level2 nav-16-1-14 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/hiiliterakset/kuumavalssatut-teraslevyt" role="menuitem" ><span>Kuumavalssatut teräslevyt</span></a></li></ul></li>
957<li role="none"  class="level1 nav-16-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset" role="menuitem" ><span>Ruostumattomat teräkset</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-16-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/saumattomat-ruostumattomat-put" role="menuitem" ><span>Saumattomat ruostumattomat put</span></a></li><li role="none"  class="level2 nav-16-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/haponkestavat-terastangot" role="menuitem" ><span>Haponkestävät terästangot</span></a></li><li role="none"  class="level2 nav-16-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/ruostumattomat-terastangot" role="menuitem" ><span>Ruostumattomat terästangot</span></a></li><li role="none"  class="level2 nav-16-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/kuumavals-haponk-teraslevyt" role="menuitem" ><span>Kuumavals. haponk.teräslevyt</span></a></li><li role="none"  class="level2 nav-16-2-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/kuumavals-ruost-teraslevyt" role="menuitem" ><span>Kuumavals. ruost. teräslevyt</span></a></li><li role="none"  class="level2 nav-16-2-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/kylmavalssatut-haponkestavat-t" role="menuitem" ><span>Kylmävalssatut haponkestävät t</span></a></li><li role="none"  class="level2 nav-16-2-7 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ruostumattomat-terakset/kylmavalssatut-ruostumattomat" role="menuitem" ><span>Kylmävalssatut ruostumattomat</span></a></li></ul></li><li role="none"  class="level1 nav-16-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/alumiinit" role="menuitem" ><span>Alumiinit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-16-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/alumiinit/lyijylevyt" role="menuitem" ><span>Lyijylevyt</span></a></li><li role="none"  class="level2 nav-16-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/alumiinit/alumiiniputket-tangot-prof" role="menuitem" ><span>Alumiiniputket, -tangot, -prof</span></a></li><li role="none"  class="level2 nav-16-3-3 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/alumiinit/alumiinilevyt-puolikovat" role="menuitem" ><span>Alumiinilevyt, puolikovat</span></a></li></ul></li><li role="none"  class="level1 nav-16-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ritilat-ja-verkot" role="menuitem" ><span>Ritilät ja verkot</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-16-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ritilat-ja-verkot/laattaverkot" role="menuitem" ><span>Laattaverkot</span></a></li><li role="none"  class="level2 nav-16-4-2 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/ritilat-ja-verkot/terasrakenneosat" role="menuitem" ><span>Teräsrakenneosat</span></a></li></ul></li><li role="none"  class="level1 nav-16-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyokalut/terakset-ja-metallit/kuluttajaterakset" role="menuitem" ><span>Kuluttajateräkset</span></a></li></ul></li><li role="none"  class="level0 nav-17 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/levytuotteet" role="menuitem"  class="level-top" ><span>Levytuotteet</span></a><ul class="level0 submenu">
957<li role="none"  class="level1 nav-17-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/liimapuulevyt" role="menuitem" ><span>Liimapuulevyt</span></a></li><li role="none"  class="level1 nav-17-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/levytuotteet/vanerit" role="menuitem" ><span>Vanerit</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-17-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/vanerit/koivuvanerit-ja-sekavanerit" role="menuitem" ><span>Koivuvanerit ja sekavanerit</span></a></li><li role="none"  class="level2 nav-17-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/vanerit/havuvanerit" role="menuitem" ><span>Havuvanerit</span></a></li><li role="none"  class="level2 nav-17-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/vanerit/erikoisvanerit-teak-vanerit" role="menuitem" ><span>Erikoisvanerit, teak-vanerit</span></a></li><li role="none"  class="level2 nav-17-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/vanerit/filmivanerit" role="menuitem" ><span>Filmivanerit</span></a></li><li role="none"  class="level2 nav-17-2-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/vanerit/muottivanerit-betonoimislevyt" role="menuitem" ><span>Muottivanerit, betonoimislevyt</span></a></li></ul></li><li role="none"  class="level1 nav-17-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/levytuotteet/kuitulevyt" role="menuitem" ><span>Kuitulevyt</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-17-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/kuitulevyt/mdf-levy-ja-hdf-levy" role="menuitem" ><span>MDF-levy ja HDF-levy</span></a></li><li role="none"  class="level2 nav-17-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/kuitulevyt/kovakuitulevy" role="menuitem" ><span>Kovakuitulevy</span></a></li><li role="none"  class="level2 nav-17-3-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/kuitulevyt/kovakuitulevyjalosteet" role="menuitem" ><span>Kovakuitulevyjalosteet</span></a></li><li role="none"  class="level2 nav-17-3-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/kuitulevyt/exterior-mdf" role="menuitem" ><span>Exterior MDF</span></a></li></ul></li><li role="none"  class="level1 nav-17-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/levytuotteet/lastulevyt" role="menuitem" ><span>Lastulevyt</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-17-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/lastulevyt/lastulevy-vakio" role="menuitem" ><span>Lastulevy vakio</span></a></li><li role="none"  class="level2 nav-17-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/lastulevyt/melamiinipintaiset-lastulevyt" role="menuitem" ><span>Melamiinipintaiset lastulevyt</span></a></li><li role="none"  class="level2 nav-17-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/lastulevyt/pontatut-lastulevyt" role="menuitem" ><span>Pontatut lastulevyt</span></a></li><li role="none"  class="level2 nav-17-4-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/lastulevyt/vedenkestavat-lastulevyt" role="menuitem" ><span>Vedenkestävät lastulevyt</span></a></li></ul></li><li role="none"  class="level1 nav-17-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/korkepainelaminaatit-ja-tyotasot" role="menuitem" ><span>Korkepainelaminaatit ja työtasot</span></a></li><li role="none"  class="level1 nav-17-6 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/levytuotteet/osb-levyt" role="menuitem" ><span>Osb levyt</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-17-6-1 category-item first last  nav-item"><a href="https://www.hartman.fi/fi/levytuotteet/osb-levyt/osb-levyt" role="menuitem" ><span>Osb levyt</span></a></li></ul></li></ul></li><li role="none"  class="level0 nav-18 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet" role="menuitem"  class="level-top" ><span>Pakkaustarvikkeet</span></a><ul class="level0 submenu">
957<li role="none"  class="level1 nav-18-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/teipit-tarrat" role="menuitem" ><span>Teipit, tarrat</span></a></li><li role="none"  class="level1 nav-18-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/muut-toimistkonetarvikkeet" role="menuitem" ><span>Muut toimistkonetarvikkeet</span></a></li><li role="none"  class="level1 nav-18-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/kylmavalssattu-paalausvanneteras" role="menuitem" ><span>Kylmävalssattu paalausvanneteräs</span></a></li><li role="none"  class="level1 nav-18-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/kalvot-muovia" role="menuitem" ><span>Kalvot, muovia</span></a></li><li role="none"  class="level1 nav-18-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/sidelangat-ja-vanteet-muovia" role="menuitem" ><span>Sidelangat ja vanteet muovia</span></a></li><li role="none"  class="level1 nav-18-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/muut-pakkausaineet-muovia" role="menuitem" ><span>Muut pakkausaineet, muovia</span></a></li><li role="none"  class="level1 nav-18-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/paperi-pinnoitettu-tai-kyllastetty" role="menuitem" ><span>Paperi, pinnoitettu tai kyllästetty</span></a></li><li role="none"  class="level1 nav-18-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/muut-pakkausaineet-paperia-pahvia" role="menuitem" ><span>Muut pakkausaineet, paperia, pahvia</span></a></li><li role="none"  class="level1 nav-18-9 category-item last  nav-item"><a href="https://www.hartman.fi/fi/pakkaustarvikkeet/muut-metallirasiat" role="menuitem" ><span>Muut metallirasiat</span></a></li></ul></li><li role="none"  class="level0 nav-19 category-item level-top nav-item parent"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito" role="menuitem"  class="level-top" ><span>Siivous ja puhtaanapito</span></a><ul class="level0 submenu"><li role="none"  class="level1 nav-19-1 category-item first  nav-item parent"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia" role="menuitem" ><span>Henkilöhygienia</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-1-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/henkilohygienia/nestesaippuat-ja-shampoot" role="menuitem" ><span>Nestesaippuat ja shampoot</span></a></li><li role="none"  class="level2 nav-19-1-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/saippua-annostelijat-ja-kasihuuhdeannostelijat" role="menuitem" ><span>Saippua-annostelijat ja käsihuuhdeannostelijat</span></a></li><li role="none"  class="level2 nav-19-1-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/muut-jalkojenhoitovalmisteet" role="menuitem" ><span>Muut jalkojenhoitovalmisteet,</span></a></li><li role="none"  class="level2 nav-19-1-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/kasihuuhteet" role="menuitem" ><span>Käsihuuhteet</span></a></li><li role="none"  class="level2 nav-19-1-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/saunasaippuat" role="menuitem" ><span>Saunasaippuat</span></a></li><li role="none"  class="level2 nav-19-1-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/muut-hiustenhoitovalineet" role="menuitem" ><span>Muut hiustenhoitovälineet</span></a></li><li role="none"  class="level2 nav-19-1-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/kasivoiteet-ja-pesuvoiteet" role="menuitem" ><span>
957Käsivoiteet ja pesuvoiteet</span></a></li><li role="none"  class="level2 nav-19-1-8 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/henkilohygienia/kasienpuhdistusaineet" role="menuitem" ><span>Käsienpuhdistusaineet</span></a></li></ul></li><li role="none"  class="level1 nav-19-2 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/hoivatuotteet" role="menuitem" ><span>Hoivatuotteet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-2-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/hoivatuotteet/muut-sailytysastiat-ja-valineet" role="menuitem" ><span>Muut säilytysastiat ja välineet</span></a></li><li role="none"  class="level2 nav-19-2-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/hoivatuotteet/suusuojat" role="menuitem" ><span>Suusuojat</span></a></li><li role="none"  class="level2 nav-19-2-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/hoivatuotteet/suoja-asusteet" role="menuitem" ><span>Suoja-asusteet</span></a></li><li role="none"  class="level2 nav-19-2-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/hoivatuotteet/ruokalaput-ja-esiliinat" role="menuitem" ><span>Ruokalaput ja esiliinat</span></a></li><li role="none"  class="level2 nav-19-2-5 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/hoivatuotteet/alustat" role="menuitem" ><span>Alustat</span></a></li></ul></li><li role="none"  class="level1 nav-19-3 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon" role="menuitem" ><span>Siivousvälineet ammattikäyttöön</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-3-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/pesusienet-ja-polyhuiskat" role="menuitem" ><span>Pesusienet ja pölyhuiskat</span></a></li><li role="none"  class="level2 nav-19-3-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/siivoussangot-ja-pesualtaat" role="menuitem" ><span>Siivoussangot ja pesualtaat</span></a></li><li role="none"  class="level2 nav-19-3-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/muut-siivoustarvikkeet" role="menuitem" ><span>Muut siivoustarvikkeet</span></a></li><li role="none"  class="level2 nav-19-3-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/ikkunapesuvalineet-ja-ikkunalastat" role="menuitem" ><span>Ikkunapesuvälineet ja ikkunalastat</span></a></li><li role="none"  class="level2 nav-19-3-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/lattiakuivaimet-ja-poytakuivaimet" role="menuitem" ><span>Lattiakuivaimet ja pöytäkuivaimet</span></a></li><li role="none"  class="level2 nav-19-3-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/lattiamopit-ja-kasimopit" role="menuitem" ><span>Lattiamopit ja käsimopit</span></a></li><li role="none"  class="level2 nav-19-3-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/siivousliinat-kuituliinat-ja-kertakayttopyyhkeet" role="menuitem" ><span>Siivousliinat, kuituliinat ja kertakäyttöpyyhkeet</span></a></li><li role="none"  class="level2 nav-19-3-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/siivousvaunut-ja-siivousvaunutarvikkeet" role="menuitem" ><span>Siivousvaunut ja siivousvaunutarvikkeet</span></a></li><li role="none"  class="level2 nav-19-3-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/laikat-hankauslevyt-ja-hankausliinat" role="menuitem" ><span>Laikat, hankauslevyt ja hankausliinat</span></a></li><li role="none"  class="level2 nav-19-3-10 category-item last  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivousvalineet-ammattikayttoon/annostelupumput-ja-muut-annosteluvalineet" role="menuitem" ><span>Annostelupumput ja muut annosteluvälineet</span></a></li></ul></li>
957<li role="none"  class="level1 nav-19-4 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/siivouskoneet" role="menuitem" ><span>Siivouskoneet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-4-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivouskoneet/marka-kuivaimurit-ja-vedenimurit" role="menuitem" ><span>Märkä-kuivaimurit ja vedenimurit</span></a></li><li role="none"  class="level2 nav-19-4-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/siivouskoneet/polynimurit-ja-varusteet-ammattikayttoon" role="menuitem" ><span>Pölynimurit ja varusteet ammattikäyttöön</span></a></li><li role="none"  class="level2 nav-19-4-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/siivouskoneet/painepesurit" role="menuitem" ><span>Painepesurit</span></a></li><li role="none"  class="level2 nav-19-4-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/siivouskoneet/lakaisukoneet" role="menuitem" ><span>Lakaisukoneet</span></a></li><li role="none"  class="level2 nav-19-4-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/siivouskoneet/polypussit-ja-suodattimet" role="menuitem" ><span>Pölypussit ja -suodattimet</span></a></li><li role="none"  class="level2 nav-19-4-6 category-item last  nav-item"><a href="https://www.hartman.fi/fi/tyoymparisto/siivous-ja-puhtaanapito/siivouskoneet/yhdistelmakoneet-ja-yhdistelmakoneenvarusteet" role="menuitem" ><span>
957Yhdistelmäkoneet ja yhdistelmäkoneenvarusteet</span></a></li></ul></li><li role="none"  class="level1 nav-19-5 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat" role="menuitem" ><span>Pehmopaperit ja annostelijat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-5-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/teollisuuspyyhket-ja-vetopyyhkeet" role="menuitem" ><span>Teollisuuspyyhket ja vetopyyhkeet</span></a></li><li role="none"  class="level2 nav-19-5-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/paperiannostelijat-ja-paperitelineet" role="menuitem" ><span>Paperiannostelijat ja paperitelineet</span></a></li><li role="none"  class="level2 nav-19-5-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/talouspaperit" role="menuitem" ><span>Talouspaperit</span></a></li><li role="none"  class="level2 nav-19-5-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/wc-paperit" role="menuitem" ><span>Wc-paperit</span></a></li><li role="none"  class="level2 nav-19-5-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/nenaliinat" role="menuitem" ><span>Nenäliinat</span></a></li><li role="none"  class="level2 nav-19-5-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/lautasliinat" role="menuitem" ><span>Lautasliinat</span></a></li><li role="none"  class="level2 nav-19-5-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/kasipyyhkeet" role="menuitem" ><span>Käsipyyhkeet</span></a></li><li role="none"  class="level2 nav-19-5-8 category-item last  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/pehmopaperit-ja-annostelijat/muut-paperipyyhkeet-ja-talouspaperit" role="menuitem" ><span>Muut paperipyyhkeet ja talouspaperit</span></a></li></ul></li><li role="none"  class="level1 nav-19-6 category-item  nav-item parent"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet" role="menuitem" ><span>Puhdistusaineet</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-6-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/tekstiilien-nestemaiset-pesuaineet" role="menuitem" ><span>Tekstiilien nestemäiset pesuaineet</span></a></li><li role="none"  class="level2 nav-19-6-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/erikoispuhdistusaineet" role="menuitem" ><span>Erikoispuhdistusaineet</span></a></li><li role="none"  class="level2 nav-19-6-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/desinfioivat-puhdistusaineet" role="menuitem" ><span>Desinfioivat puhdistusaineet</span></a></li><li role="none"  class="level2 nav-19-6-4 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/muut-tekstiilin-huoltovalineet" role="menuitem" ><span>Muut tekstiilin huoltovälineet</span></a></li><li role="none"  class="level2 nav-19-6-5 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/mantysuopa-ja-matonpesuaineet" role="menuitem" ><span>Mäntysuopa ja matonpesuaineet</span></a></li><li role="none"  class="level2 nav-19-6-6 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/textiilien-huuhteluaineet" role="menuitem" ><span>Textiilien huuhteluaineet</span></a></li><li role="none"  class="level2 nav-19-6-7 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/valkaisuaineet-ja-kloriitit" role="menuitem" ><span>Valkaisuaineet ja kloriitit</span></a></li><li role="none"  class="level2 nav-19-6-8 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/hoitavat-puhdistusaineet" role="menuitem" ><span>Hoitavat puhdistusaineet</span></a></li><li role="none"  class="level2 nav-19-6-9 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/yleispuhdistusaineet" role="menuitem" ><span>Yleispuhdistusaineet</span></a></li><li role="none"  class="level2 nav-19-6-10 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/saniteettipuhdistuaineet" role="menuitem" ><span>Saniteettipuhdistuaineet</span></a></li><li role="none"  class="level2 nav-19-6-11 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/tekstiilien-pesujauheet" role="menuitem" ><span>Tekstiilien pesujauheet</span></a></li>
957<li role="none"  class="level2 nav-19-6-12 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/hankausjauheet-ja-nesteet" role="menuitem" ><span>Hankausjauheet ja nesteet</span></a></li><li role="none"  class="level2 nav-19-6-13 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/astian-ikkunanpesuaineet" role="menuitem" ><span>Astian-, ikkunanpesuaineet</span></a></li><li role="none"  class="level2 nav-19-6-14 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/ilmanraikastajat" role="menuitem" ><span>Ilmanraikastajat</span></a></li><li role="none"  class="level2 nav-19-6-15 category-item last  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/puhdistusaineet/lattiavahat-vahanpoistoaineet" role="menuitem" ><span>Lattiavahat, vahanpoistoaineet</span></a></li></ul></li><li role="none"  class="level1 nav-19-7 category-item last  nav-item parent"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/harjat-1702563156" role="menuitem" ><span>Harjat</span></a><ul class="level1 submenu"><li role="none"  class="level2 nav-19-7-1 category-item first  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/harjat-1702563156/katuharjat-ja-lakaisuharjat" role="menuitem" ><span>Katuharjat ja lakaisuharjat</span></a></li><li role="none"  class="level2 nav-19-7-2 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/harjat-1702563156/harjanvarret-valinevarret-ja-moppikehykset" role="menuitem" ><span>Harjanvarret, välinevarret ja moppikehykset</span></a></li><li role="none"  class="level2 nav-19-7-3 category-item  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/harjat-1702563156/wc-harjat-tiskiharjat-pulloharjat-ja-pesuharjat" role="menuitem" ><span>WC-Harjat, tiskiharjat, pulloharjat ja pesuharjat</span></a></li><li role="none"  class="level2 nav-19-7-4 category-item last  nav-item"><a href="https://www.hartman.fi/fi/siivous-ja-puhtaanapito/harjat-1702563156/rikkalapiot-ja-lattiaharjat" role="menuitem" ><span>Rikkalapiot ja lattiaharjat</span></a></li></ul></li></ul></li>    
958</ul>        
959<div class="pages-mobile-wrapper">
960
961    <!-- Drilldown menu -->
962    <ul id="mobile-pages-menu" class="menu" role="menubar" data-drilldown data-options="autoHeight: true; parentLink: false; animationDuration: 200; backButton: false;">
963
964        <li class="level0  ambrands-menu-item"
965    data-ambrands-js="brands-menu-link">
966            <a href="https://www.hartman.fi/fi/tuotemerkki/"
967           class="level-top ambrands-link"
968           title="Tuotemerkit">
969            Tuotemerkit        </a>
970    </li>
971<li role="none"  class="level0 nav-1 first level-top nav-item"><a href="https://www.hartman.fi/fi/rautakauppa" role="menuitem"  class="level-top" ><span>Kuluttajille</span></a></li><li role="none"  class="level0 nav-2 level-top nav-item"><a href="https://www.hartman.fi/fi/ammattirakentajille" role="menuitem"  class="level-top" ><span>Ammattirakentajille</span></a></li><li role="none"  class="level0 nav-3 level-top nav-item"><a href="https://www.hartman.fi/fi/jalleenmyyjille" role="menuitem"  class="level-top" ><span>Jälleenmyyjille</span></a></li><li role="none"  class="level0 nav-4 level-top nav-item"><a href="https://www.hartman.fi/fi/teollisuus" role="menuitem"  class="level-top" ><span>Teollisuudelle</span></a></li><li role="none"  class="level0 nav-5 level-top nav-item"><a href="https://www.hartman.fi/fi/inspiraatio" role="menuitem"  class="level-top" ><span>Esitteet</span></a></li><li role="none"  class="level0 nav-6 level-top nav-item"><a href="https://www.hartman.fi/fi/historia" role="menuitem"  class="level-top" ><span>Historia</span></a></li><li role="none"  class="level0 nav-7 level-top nav-item"><a href="https://www.hartman.fi/fi/export" role="menuitem"  class="level-top" ><span>Vienti</span></a></li>        
972    </ul>
973</div>
974                    <ul class="mobile-language-switcher">
975                                                                            <li class="view-sv nav-item">
976                        <a href="#" data-post='{"action":"https:\/\/www.hartman.fi\/fi\/stores\/store\/redirect\/","data":{"___store":"sv","___from_store":"fi","uenc":"aHR0cHM6Ly93d3cuaGFydG1hbi5maS9zdi9lbmdsaXNo"}}' class="level-top">
977                            <i class="hartman-icon h-globe"></i>svenska                        </a>
978                    </li>
979                                                                                            <li class="view-fi nav-item">
980                        <a href="https://www.hartman.fi/fi/english" aria-label="icon">
981                            <i class="hartman-icon h-globe"></i>english                        </a>
982                    </li>
983                                                                <li class="view-sv nav-item">
984                        <a href="https://www.hartman.fi/sv/danish" aria-label="icon">
985                            <i class="hartman-icon h-globe"></i>danish                        </a>
986                    </li>
987                                                    </ul>
988
989    </div>
990
991</div>
992    
993    
994<script>
995    var LOCALE = 'fi\u002DFI';
996    var BASE_URL = 'https\u003A\u002F\u002Fwww.hartman.fi\u002Ffi\u002F';
997    var require = {
998        'baseUrl': 'https\u003A\u002F\u002Fwww.hartman.fi\u002Fstatic\u002Fversion1789641330\u002Ffrontend\u002FSolteq\u002Fhartman\u002Ffi_FI'
999    };</script>
vendor: 1 bytes, line 999
999
1000<script  type="text/javascript"  src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/requirejs/require.min.js"></script>
vendor: 1 bytes, line 1000
1000
1001<script  type="text/javascript"  src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/requirejs-min-resolver.min.js"></script>
vendor: 1 bytes, line 1001
1001
1002<script  type="text/javascript"  src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/mage/requirejs/mixins.min.js"></script>
vendor: 1 bytes, line 1002
1002
1003<script  type="text/javascript"  src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/requirejs-config.min.js"></script>
vendor: 1 bytes, line 1003
1003
1004<script  type="text/javascript"  src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Solteq_PageBuilderLazyLoading/js/resource/lazysizes/lazySizesConfig.min.js"></script>
vendor: 1 bytes, line 1004
1004
1005<script defer  type="text/javascript"  src="https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/Solteq_PageBuilderLazyLoading/js/resource/lazysizes/ls.attrchange.min.js"></script>
vendor: 1 bytes, line 1005
1005
1006<script defer  type="text/javascript"  src="https://cdnjs.cloudflare.com/ajax/libs/lazysizes/5.1.1/lazysizes.min.js"></script>
vendor: 1 bytes, line 1006
1006
1007<script defer id="CookieConsent" src="https://policy.app.cookieinformation.com/uc.js" data-culture="FI" type="text/javascript" data-gcm-enabled="false"></script>
vendor: 1 bytes, line 1007
1007
1008<script type="text/x-magento-init">
1009        {
1010            "*": {
1011                "Magento_PageCache/js/form-key-provider": {
1012                    "isPaginationCacheEnabled":
1013                        1                }
1014            }
1015        }
1016    </script>
vendor: 1 bytes, line 1016
1016
1017<script type="text/x-magento-init">
1018    {
1019        "*": {
1020            "Magento_PageBuilder/js/widget-initializer": {
1021                "config": {"[data-content-type=\"slider\"][data-appearance=\"default\"]":{"Solteq_PageBuilderSliderExtend\/js\/content-type\/slider\/appearance\/default\/widget":false},"[data-content-type=\"map\"]":{"Magento_PageBuilder\/js\/content-type\/map\/appearance\/default\/widget":false},"[data-content-type=\"row\"]":{"Magento_PageBuilder\/js\/content-type\/row\/appearance\/default\/widget":false},"[data-content-type=\"tabs\"]":{"Magento_PageBuilder\/js\/content-type\/tabs\/appearance\/default\/widget":false},"[data-content-type=\"slide\"]":{"Magento_PageBuilder\/js\/content-type\/slide\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-slide-button","showOverlay":"hover","dataRole":"slide"}},"[data-content-type=\"banner\"]":{"Magento_PageBuilder\/js\/content-type\/banner\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-banner-button","showOverlay":"hover","dataRole":"banner"}},"[data-content-type=\"buttons\"]":{"Magento_PageBuilder\/js\/content-type\/buttons\/appearance\/inline\/widget":false},"[data-content-type=\"products\"][data-appearance=\"carousel\"]":{"Magento_PageBuilder\/js\/content-type\/products\/appearance\/carousel\/widget":false},"[data-content-type=\"column-group\"]":{"Solteq_PageBuilderColumnsExtend\/js\/content-type\/column-group\/appearance\/default\/widget":false}},
1022                "breakpoints": {"desktop":{"label":"Desktop","stage":true,"default":true,"class":"desktop-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-desktop.svg","conditions":{"min-width":"1024px"},"options":{"products":{"default":{"slidesToShow":"5"}}}},"tablet":{"conditions":{"max-width":"1024px","min-width":"768px"},"options":{"products":{"default":{"slidesToShow":"4"},"continuous":{"slidesToShow":"3"}}}},"mobile":{"label":"Mobile","stage":true,"class":"mobile-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-mobile.svg","media":"only screen and (max-width: 768px)","conditions":{"max-width":"768px","min-width":"640px"},"options":{"products":{"default":{"slidesToShow":"3"}}}},"mobile-small":{"conditions":{"max-width":"640px"},"options":{"products":{"default":{"slidesToShow":"2"},"continuous":{"slidesToShow":"1"}}}}}            }
1023        }
1024    }
1025</script>
vendor: 1 bytes, line 1025
1025
1026<script type="text&#x2F;javascript">document.querySelector("#cookie-status").style.display = "none";</script>
vendor: 1 bytes, line 1026
1026
1027<script type="text/x-magento-init">
1028    {
1029        "*": {
1030            "cookieStatus": {}
1031        }
1032    }
1033</script>
vendor: 1 bytes, line 1033
1033
1034<script type="text/x-magento-init">
1035    {
1036        "*": {
1037            "mage/cookies": {
1038                "expires": null,
1039                "path": "\u002F",
1040                "domain": ".www.hartman.fi",
1041                "secure": true,
1042                "lifetime": "3600"
1043            }
1044        }
1045    }
1046</script>
vendor: 1 bytes, line 1046
1046
1047<script>
1048    window.cookiesConfig = window.cookiesConfig || {};
1049    window.cookiesConfig.secure = true;
1050</script>
vendor: 1 bytes, line 1050
1050
1051<script>    require.config({
1052        map: {
1053            '*': {
1054                wysiwygAdapter: 'mage/adminhtml/wysiwyg/tiny_mce/tinymceAdapter'
1055            }
1056        }
1057    });</script>
vendor: 1 bytes, line 1057
1057
1058<script type="text/x-magento-init">
1059    {
1060        "*": {
1061            "Magento_Ui/js/core/app": {
1062                "components": {
1063                    "company": {
1064                        "component": "Magento_Company/js/view/company",
1065                        "logoutUrl": "https://www.hartman.fi/fi/customer/account/logout/"
1066                    }
1067                }
1068            }
1069        }
1070    }
1071</script>
vendor: 1 bytes, line 1071
1071
1072<script>    require.config({
1073        paths: {
1074            googleMaps: 'https\u003A\u002F\u002Fmaps.googleapis.com\u002Fmaps\u002Fapi\u002Fjs\u003Fv\u003D3.53\u0026key\u003DAIzaSyBZn0g\u002DP_iuZYAuWbVeVm4wAczOFJQZBCg'
1075        },
1076        config: {
1077            'Magento_PageBuilder/js/utils/map': {
1078                style: '',
1079            },
1080            'Magento_PageBuilder/js/content-type/map/preview': {
1081                apiKey: 'AIzaSyBZn0g\u002DP_iuZYAuWbVeVm4wAczOFJQZBCg',
1082                apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fwww.hartman.fi\u002Ffi\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.'
1083            },
1084            'Magento_PageBuilder/js/form/element/map': {
1085                apiKey: 'AIzaSyBZn0g\u002DP_iuZYAuWbVeVm4wAczOFJQZBCg',
1086                apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fwww.hartman.fi\u002Ffi\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.'
1087            },
1088        }
1089    });</script>
vendor: 1 bytes, line 1089
1089
1090<script>
1091    require.config({
1092        shim: {
1093            'Magento_PageBuilder/js/utils/map': {
1094                deps: ['googleMaps']
1095            }
1096        }
1097    });</script>
vendor: 1 bytes, line 1097
1097
1098<script>
1099        require([
1100                'jquery',
1101                'Mirasvit_SearchAutocomplete/js/autocomplete',
1102                'Mirasvit_SearchAutocomplete/js/typeahead'
1103            ], function ($, autocomplete, typeahead) {
1104                var selector = 'input#search, input#mobile_search, .minisearch input[type="text"]';
1105
1106                $(document).ready(function () {
1107                    $('#search_mini_form').prop("minSearchLength", 10000);
1108
1109                    const $input = $(selector);
1110
1111                    $input.each(function (index, searchInput) {
1112                                                new autocomplete($(searchInput)).init({"query":"","priceFormat":{"pattern":"%s\u00a0\u20ac","precision":2,"requiredPrecision":2,"decimalSymbol":",","groupSymbol":"\u00a0","groupLength":3,"integerRequired":false},"minSearchLength":2,"url":"https:\/\/www.hartman.fi\/fi\/searchautocomplete\/ajax\/suggest\/","storeId":"3","delay":0,"isAjaxCartButton":false,"isShowCartButton":false,"isShowImage":true,"isShowPrice":true,"isShowSku":true,"isShowRating":true,"isShowDescription":true,"isShowStockStatus":false,"layout":"1column","popularTitle":"Suosituimmat haut","popularSearches":["Tapetit","Eristeet","Paneelit","Puutavara","Sis\u00e4maali","Vaneri"],"isTypeaheadEnabled":false,"typeaheadUrl":"https:\/\/www.hartman.fi\/fi\/searchautocomplete\/ajax\/typeahead\/","minSuggestLength":2,"currency":"EUR","limit":12,"customerGroupId":0,"filterPosition":"disable"});
1113                    });
1114                });
1115            }
1116        );
1117    </script>
vendor: 1 bytes, line 1117
1117
1118<script id="searchAutocompletePlaceholder" type="text/x-custom-template">
1119    <div class="mst-searchautocomplete__autocomplete">
1120        <div class="mst-searchautocomplete__spinner">
1121            <div class="spinner-item spinner-item-1"></div>
1122            <div class="spinner-item spinner-item-2"></div>
1123            <div class="spinner-item spinner-item-3"></div>
1124            <div class="spinner-item spinner-item-4"></div>
1125        </div>
1126
1127        <div class="mst-searchautocomplete__close">&times;</div>
1128    </div>
1129</script>
vendor: 1 bytes, line 1129
1129
1130<script id="searchAutocompleteWrapper" type="text/x-custom-template">
1131    <div class="mst-searchautocomplete__wrapper">
1132        <div class="mst-searchautocomplete__show-all" data-bind="visible: result().urlAll && result().totalItems > 0">
1133            <a data-bind="attr: { href: result().urlAll }">
1134                <span data-bind="text: result().textAll"></span>
1135            </a>
1136        </div>
1137        
1138        <div class="mst-searchautocomplete__results" data-bind="{
1139            visible: result().noResults == false,
1140            css: {
1141                __all: result().urlAll && result().totalItems > 0
1142            }
1143        }">
1144            <div data-bind="foreach: { data: result().indexes, as: 'index' }">
1145                <div data-bind="visible: index.totalItems, attr: {class: 'mst-searchautocomplete__index ' + index.identifier}">
1146                    <div class="mst-searchautocomplete__index-title">
1147                        <span data-bind="text: index.title"></span>
1148                        <span data-bind="visible: index.isShowTotals">
1149                            (<span data-bind="text: index.totalItems"></span>)
1150                        </span>
1151                    </div>
1152
1153                    <ul data-bind="foreach: { data: index.items, as: 'item' }">
1154                        <li data-bind="
1155                            template: { name: index.identifier, data: item },
1156                            attr: {class: 'mst-searchautocomplete__item ' + index.identifier},
1157                            event: { mouseover: $parents[1].onMouseOver, mouseout: $parents[1].onMouseOut, mousedown: $parents[1].onClick },
1158                            css: {_active: $data.isActive}">
1159                        </li>
1160                    </ul>
1161                </div>
1162            </div>
1163        </div>
1164
1165        <div class="mst-searchautocomplete__empty-result" data-bind="visible: result().noResults == true && !loading()">
1166            <span data-bind="text: result().textEmpty"></span>
1167        </div>
1168    </div>
1169</script>
vendor: 1 bytes, line 1169
1169
1170<script id="popular" type="text/x-custom-template">
1171    <a class="title" data-bind="text: query"></a>
1172</script>
vendor: 1 bytes, line 1172
1172
1173<script id="magento_search_query" type="text/x-custom-template">
1174    <a class="title" data-bind="text: query_text, attr: {href: url}, highlight"></a> <span class="num_results" data-bind="text: num_results"></span>
1175</script>
vendor: 1 bytes, line 1175
1175
1176<script id="magento_catalog_product" type="text/x-custom-template">
1177    <!-- ko if: (imageUrl && $parents[2].config.isShowImage) -->
1178    <a rel="noreferrer" data-bind="attr: {href: url}">
1179        <div class="mst-product-image-wrapper"><img alt="" data-bind="attr: {src: imageUrl}"/></div>
1180    </a>
1181    <!-- /ko -->
1182
1183    <div class="meta">
1184        <div class="title">
1185            <a rel="noreferrer" data-bind="html: name, attr: {href: url}, highlight"></a>
1186
1187            <!-- ko if: (sku && $parents[2].config.isShowSku) -->
1188            <span class="sku" data-bind="text: sku, highlight"></span>
1189            <!-- /ko -->
1190        </div>
1191
1192        <!-- ko if: (description && $parents[2].config.isShowDescription) -->
1193        <div class="description" data-bind="text: description, highlight"></div>
1194        <!-- /ko -->
1195
1196        <!-- ko if: (rating && $parents[2].config.isShowRating) -->
1197        <div>
1198            <div class="rating-summary">
1199                <div class="rating-result">
1200                    <span data-bind="style: { width: rating + '%' }"></span>
1201                </div>
1202            </div>
1203        </div>
1204        <!-- /ko -->
1205
1206        <!-- ko if: (stockStatus && $parents[2].config.isShowStockStatus) -->
1207        <span class="stock_status" data-bind="text: stockStatus, processStockStatus"></span>
1208        <!-- /ko -->
1209
1210        <!-- ko if: (addToCartUrl && $parents[2].config.isShowCartButton) -->
1211        <div class="to-cart">
1212            <a class="action primary mst__add_to_cart" data-bind="attr: { _href: addToCartUrl }">
1213                <span>Lisää ostoskoriin</span>
1214            </a>
1215        </div>
1216        <!-- /ko -->
1217    </div>
1218
1219    </script>
vendor: 1 bytes, line 1219
1219
1220<script id="magento_catalog_categoryproduct" type="text/x-custom-template">
1221    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1222</script>
vendor: 1 bytes, line 1222
1222
1223<script id="magento_catalog_category" type="text/x-custom-template">
1224    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1225</script>
vendor: 1 bytes, line 1225
1225
1226<script id="magento_cms_page" type="text/x-custom-template">
1227    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1228</script>
vendor: 1 bytes, line 1228
1228
1229<script id="magento_catalog_attribute" type="text/x-custom-template">
1230    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1231</script>
vendor: 1 bytes, line 1231
1231
1232<script id="magento_catalog_attribute_2" type="text/x-custom-template">
1233    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1234</script>
vendor: 1 bytes, line 1234
1234
1235<script id="magento_catalog_attribute_3" type="text/x-custom-template">
1236    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1237</script>
vendor: 1 bytes, line 1237
1237
1238<script id="magento_catalog_attribute_4" type="text/x-custom-template">
1239    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1240</script>
vendor: 1 bytes, line 1240
1240
1241<script id="magento_catalog_attribute_5" type="text/x-custom-template">
1242    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1243</script>
vendor: 1 bytes, line 1243
1243
1244<script id="mirasvit_kb_article" type="text/x-custom-template">
1245    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1246</script>
vendor: 1 bytes, line 1246
1246
1247<script id="external_wordpress_post" type="text/x-custom-template">
1248    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1249</script>
vendor: 1 bytes, line 1249
1249
1250<script id="amasty_blog_post" type="text/x-custom-template">
1251    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1252</script>
vendor: 1 bytes, line 1252
1252
1253<script id="amasty_faq_question" type="text/x-custom-template">
1254    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1255</script>
vendor: 1 bytes, line 1255
1255
1256<script id="magefan_blog_post" type="text/x-custom-template">
1257    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1258</script>
vendor: 1 bytes, line 1258
1258
1259<script id="mageplaza_blog_post" type="text/x-custom-template">
1260    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1261</script>
vendor: 1 bytes, line 1261
1261
1262<script id="aheadworks_blog_post" type="text/x-custom-template">
1263    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1264</script>
vendor: 1 bytes, line 1264
1264
1265<script id="mirasvit_blog_post" type="text/x-custom-template">
1266    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1267</script>
vendor: 1 bytes, line 1267
1267
1268<script id="mirasvit_gry_registry" type="text/x-custom-template">
1269    <a class="title" data-bind="text: title, attr: {href: url}, highlight"></a>
1270    <p data-bind="text: name, highlight"></p>
1271</script>
vendor: 1 bytes, line 1271
1271
1272<script id="ves_blog_post" type="text/x-custom-template">
1273    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1274</script>
vendor: 1 bytes, line 1274
1274
1275<script id="fishpig_glossary_word" type="text/x-custom-template">
1276    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1277</script>
vendor: 1 bytes, line 1277
1277
1278<script id="blackbird_contentmanager_content" type="text/x-custom-template">
1279    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1280</script>
vendor: 1 bytes, line 1280
1280
1281<script id="mirasvit_brand_page" type="text/x-custom-template">
1282    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a>
1283</script>
vendor: 1 bytes, line 1283
1283
1284<script type="text/x-magento-init">
1285    {
1286        "*": {
1287            "Magento_Ui/js/core/app": {
1288                "components": {
1289                    "price-display-notification": {
1290                        "component": "Solteq_RealTimePrices/js/price-display-notification",
1291                        "currentAction": "cms_page_view"
1292                    }
1293                }
1294            }
1295        }
1296    }
1297</script>
vendor: 1 bytes, line 1297
1297
1298<script type="text/x-magento-init">
1299    {
1300        "*": {
1301            "Magento_Ui/js/core/app": {
1302                "components": {
1303                    "store-filter-header": {
1304                        "component": "Solteq_StoreFilter/js/store-filter-header"
1305                    },
1306                    "store-filter-selection": {
1307                        "component": "Solteq_StoreFilter/js/store-filter-prompt",
1308                        "currentFilter": ""
1309                    }
1310                }
1311            }
1312        }
1313    }
1314
1315</script>
vendor: 1 bytes, line 1315
1315
1316<script type="text/javascript">
1317    //<![CDATA[
1318    requirejs(['jquery', 'Magento_Customer/js/customer-data'], function(jQuery, customerData) {
1319        jQuery(function($) {
1320            customerData.reload(['customer'], true);
1321        });
1322    });
1323    //]]>
1324</script>
vendor: 1 bytes, line 1324
1324
1325<script>
1326        window.checkout = {"shoppingCartUrl":"https:\/\/www.hartman.fi\/fi\/checkout\/cart\/","checkoutUrl":"https:\/\/www.hartman.fi\/fi\/checkout\/","updateItemQtyUrl":"https:\/\/www.hartman.fi\/fi\/checkout\/sidebar\/updateItemQty\/","removeItemUrl":"https:\/\/www.hartman.fi\/fi\/checkout\/sidebar\/removeItem\/","imageTemplate":"Magento_Catalog\/product\/image_with_borders","baseUrl":"https:\/\/www.hartman.fi\/fi\/","minicartMaxItemsVisible":5,"websiteId":"1","maxItemsToDisplay":10,"storeId":"3","storeGroupId":"1","customerLoginUrl":"https:\/\/www.hartman.fi\/fi\/customer\/account\/login\/referer\/aHR0cHM6Ly93d3cuaGFydG1hbi5maS9maS9lbmdsaXNo\/","isRedirectRequired":false,"autocomplete":"off","captcha":{"user_login":{"isCaseSensitive":false,"imageHeight":50,"imageSrc":"","refreshUrl":"https:\/\/www.hartman.fi\/fi\/captcha\/refresh\/","isRequired":false,"timestamp":1790918741}}};
1327    </script>
vendor: 1 bytes, line 1327
1327
1328<script type="text/x-magento-init">
1329    {
1330        "[data-block='minicart']": {
1331            "Magento_Ui/js/core/app": {"components":{"minicart_content":{"children":{"subtotal.container":{"children":{"subtotal":{"children":{"subtotal.totals":{"config":{"display_cart_subtotal_incl_tax":1,"display_cart_subtotal_excl_tax":0,"template":"Magento_Tax\/checkout\/minicart\/subtotal\/totals"},"component":"Magento_Tax\/js\/view\/checkout\/minicart\/subtotal\/totals","children":{"subtotal.totals.msrp":{"component":"Magento_Msrp\/js\/view\/checkout\/minicart\/subtotal\/totals","config":{"displayArea":"minicart-subtotal-hidden","template":"Magento_Msrp\/checkout\/minicart\/subtotal\/totals"}}}}},"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/subtotal"}}},"component":"uiComponent","config":{"displayArea":"subtotalContainer"}},"item.renderer":{"component":"Magento_Checkout\/js\/view\/cart-item-renderer","config":{"displayArea":"defaultRenderer","template":"Solteq_StoreFilter\/minicart\/item\/default"},"children":{"item.image":{"component":"Magento_Catalog\/js\/view\/image","config":{"template":"Magento_Catalog\/product\/image","displayArea":"itemImage"}},"checkout.cart.item.price.sidebar":{"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/item\/price","displayArea":"priceSidebar"}}}},"extra_info":{"component":"uiComponent","config":{"displayArea":"extraInfo"}},"promotion":{"component":"uiComponent","config":{"displayArea":"promotion"}}},"config":{"itemRenderer":{"default":"defaultRenderer","simple":"defaultRenderer","virtual":"defaultRenderer"},"template":"Magento_Checkout\/minicart\/content"},"component":"Magento_Checkout\/js\/view\/minicart"}},"types":[]}        },
1332        "*": {
1333            "Magento_Ui/js/block-loader": "https://www.hartman.fi/static/version1789641330/frontend/Solteq/hartman/fi_FI/images/loader-1.gif"
1334        }
1335    }
1336    </script>
vendor: 1 bytes, line 1336
1336
1337<script type="text/javascript">
1338        //<![CDATA[
1339        requirejs(['jquery'], function(jQuery) {
1340            jQuery(function($) {
1341                // If header is in mobile mode, remove "display: block". See #10.
1342                $(document).on('dropdowndialogcreate', function(event) {
1343                    if ($('#header-container').hasClass('header-mobile'))
1344                    {
1345                        $('#header-cart').css('display', '');
1346                    }
1347                });
1348                $(document).on('dropdowndialogbeforeclose', function(event) {
1349                    $('#header-cart').data('mage-dropdownDialog').opener = $(document.body); // See #5
1350                });
1351            });
1352        }); //end: requirejs
1353        //]]>
1354    </script>
vendor: 1 bytes, line 1354
1354
1355<script type="text/x-magento-init">
1356{"[data-role=compare-products-link]": {"Magento_Ui/js/core/app": {"components":{"compareProducts":{"component":"Magento_Catalog\/js\/view\/compare-products"}}}}}
1357</script>
vendor: 1 bytes, line 1357
1357
1358<script type="text/javascript">
1359//<![CDATA[
1360
1361requirejs(['jquery', 'smartheader', 'stickyheader', 'dropdownDialog'], function(jQuery, smartheader, stickyheader, dropdownDialog) {
1362
1363    var theHeaderContainer = jQuery('#header-container');
1364
1365        
1366        //alert('header tpl, before smartheader');
1367
1368        theHeaderContainer.smartheader({ mobileHeaderThreshold: 1024 });
1369
1370    
1371    jQuery(function($) {
1372
1373        //console.log('header tpl, on(ready), ater smartheader');
1374        //alert('header tpl, on(ready), ater smartheader');
1375
1376        
1377            // Skip Links
1378            var skipContents = $('.skip-content');
1379            var skipLinks = $('.skip-link');
1380
1381            skipLinks.on('click', function (event) {
1382
1383                // In case skip link is "a" tag
1384                event.preventDefault();
1385
1386                var self = $(this);
1387                var target = self.data('skiptarget');
1388
1389                // Get target element
1390                var elem = $(target);
1391
1392                // Check if stub is open
1393                var isSkipContentOpen = elem.hasClass('skip-active') ? 1 : 0;
1394
1395                // Hide all stubs
1396                skipLinks.removeClass('skip-active');
1397                skipContents.removeClass('skip-active');
1398
1399                // Toggle stubs
1400                if (isSkipContentOpen) {
1401                    self.removeClass('skip-active');
1402                } else {
1403                    self.addClass('skip-active');
1404                    elem.addClass('skip-active');
1405                }
1406            });
1407
1408        
1409        
1410    }); //end: on document ready
1411
1412}); //end: requirejs
1413
1414    // TODO: move this below to it's own file.
1415    requirejs(['jquery'], function(jQuery) {
1416        jQuery(document).ready(function () {
1417            // This uses specific class names for compatibility with Magento Page Builder.
1418            // It assumes there's two elements: an opener container and a content container.
1419            // Opener container should have a class "accordion-title" and "accordion-for-X", the content container should have classes "accordion-content" and "accordion-for-X-content".
1420            // The X should be a distinguishing identifier for the accordion content.
1421            const accordionOpeners = jQuery(".accordion-title");
1422            const accordionContents = jQuery(".accordion-content");
1423            if(accordionOpeners.length > 0 && accordionContents.length > 0) {
1424                accordionOpeners.on('click', function() {
1425                    const classList = jQuery(this).prop("classList");
1426
1427                    for (var i = 0; i < classList.length; i++) {
1428                        const isAccordionContentClass = classList[i].indexOf("accordion-for-") === 0;
1429                        // If this class name is the one indicating the accordion content.
1430                        if (isAccordionContentClass) {
1431                            const isAlreadyOpen = jQuery(this).hasClass('opened');
1432                            accordionOpeners.removeClass('opened');
1433                            accordionContents.removeClass('opened');
1434
1435                            // If container wasn't already open. If it was, we just close it.
1436                            if(!isAlreadyOpen) {
1437                                jQuery(this).addClass('opened');
1438                                jQuery('.' + classList[i] + '-content').addClass('opened');
1439                            }
1440                            // End loop.
1441                            i = classList.length;
1442                        }
1443                    }
1444                });
1445            }
1446        });
1447    });
1448//]]>
1449
1450</script>
vendor: 1 bytes, line 1450
1450
1451<script type="text/x-magento-init">
1452    {
1453        "*": {
1454            "Magento_Ui/js/core/app": {
1455                "components": {
1456                        "messages": {
1457                            "component": "Magento_Theme/js/view/messages"
1458                        }
1459                    }
1460                }
1461            }
1462    }
1463</script>
vendor: 1 bytes, line 1463
1463
1464<script>window.authenticationPopup = {"autocomplete":"off","customerRegisterUrl":"https:\/\/www.hartman.fi\/fi\/customer\/account\/create\/","customerForgotPasswordUrl":"https:\/\/www.hartman.fi\/fi\/customer\/account\/forgotpassword\/","baseUrl":"https:\/\/www.hartman.fi\/fi\/","customerLoginUrl":"https:\/\/www.hartman.fi\/fi\/customer\/ajax\/login\/"}</script>
vendor: 1 bytes, line 1464
1464
1465<script type="text/x-magento-init">
1466        {
1467            "#authenticationPopup": {
1468                "Magento_Ui/js/core/app": {"components":{"authenticationPopup":{"component":"Magento_Customer\/js\/view\/authentication-popup","children":{"messages":{"component":"Magento_Ui\/js\/view\/messages","displayArea":"messages"},"captcha":{"component":"Magento_Captcha\/js\/view\/checkout\/loginCaptcha","displayArea":"additional-login-form-fields","formId":"user_login","configSource":"checkout"}}}}}            },
1469            "*": {
1470                "Magento_Ui/js/block-loader": "https\u003A\u002F\u002Fwww.hartman.fi\u002Fstatic\u002Fversion1789641330\u002Ffrontend\u002FSolteq\u002Fhartman\u002Ffi_FI\u002Fimages\u002Floader\u002D1.gif"
1471                            }
1472        }
1473    </script>
vendor: 1 bytes, line 1473
1473
1474<script type="text/x-magento-init">
1475    {
1476        "*": {
1477            "Magento_Customer/js/section-config": {
1478                "sections": {"stores\/store\/switch":["*"],"stores\/store\/switchrequest":["*"],"directory\/currency\/switch":["*"],"*":["messages","company","customer","account_user","show_default_prices","realprices","store_filter"],"customer\/account\/logout":["*","recently_viewed_product","recently_compared_product","persistent"],"customer\/account\/loginpost":["*"],"customer\/account\/createpost":["*"],"customer\/account\/editpost":["*"],"customer\/ajax\/login":["checkout-data","cart","captcha"],"catalog\/product_compare\/add":["compare-products","wp_ga4"],"catalog\/product_compare\/remove":["compare-products"],"catalog\/product_compare\/clear":["compare-products"],"sales\/guest\/reorder":["cart","amasty-storepickup-data","amasty-selected-pickup-info"],"sales\/order\/reorder":["cart","amasty-storepickup-data","amasty-selected-pickup-info"],"rest\/v1\/requisition_lists":["requisition"],"requisition_list\/requisition\/delete":["requisition"],"requisition_list\/item\/addtocart":["cart"],"checkout\/cart\/add":["cart","directory-data","amasty-storepickup-data","amasty-selected-pickup-info","wp_ga4"],"checkout\/cart\/delete":["cart","amasty-storepickup-data","amasty-selected-pickup-info","wp_ga4"],"checkout\/cart\/updatepost":["cart","amasty-storepickup-data","wp_ga4"],"checkout\/cart\/updateitemoptions":["cart","amasty-storepickup-data","wp_ga4"],"checkout\/cart\/couponpost":["cart"],"checkout\/cart\/estimatepost":["cart","amasty-storepickup-data"],"checkout\/cart\/estimateupdatepost":["cart","amasty-storepickup-data"],"checkout\/onepage\/saveorder":["cart","checkout-data","last-ordered-items","amasty-deliverydate","amasty-storepickup-data","amasty-selected-pickup-info"],"checkout\/sidebar\/removeitem":["cart","amasty-storepickup-data","wp_ga4"],"checkout\/sidebar\/updateitemqty":["cart","amasty-storepickup-data","wp_ga4"],"rest\/*\/v1\/carts\/*\/payment-information":["cart","last-ordered-items","captcha","instant-purchase","amasty-deliverydate","wp_ga4"],"rest\/*\/v1\/guest-carts\/*\/payment-information":["cart","captcha","amasty-deliverydate","wp_ga4"],"rest\/*\/v1\/guest-carts\/*\/selected-payment-method":["cart","checkout-data"],"rest\/*\/v1\/carts\/*\/selected-payment-method":["cart","checkout-data","instant-purchase"],"customer_order\/cart\/updatefaileditemoptions":["cart"],"checkout\/cart\/updatefaileditemoptions":["cart"],"customer_order\/cart\/advancedadd":["cart"],"checkout\/cart\/advancedadd":["cart"],"checkout\/cart\/removeallfailed":["cart"],"checkout\/cart\/removefailed":["cart"],"customer_order\/cart\/addfaileditems":["cart"],"checkout\/cart\/addfaileditems":["cart"],"customer_order\/sku\/uploadfile":["cart"],"wishlist\/index\/add":["wishlist","wp_ga4"],"wishlist\/index\/remove":["wishlist"],"wishlist\/index\/updateitemoptions":["wishlist"],"wishlist\/index\/update":["wishlist"],"wishlist\/index\/cart":["wishlist","cart","wp_ga4"],"wishlist\/index\/fromcart":["wishlist","cart"],"wishlist\/index\/allcart":["wishlist","cart","wp_ga4"],"wishlist\/shared\/allcart":["wishlist","cart"],"wishlist\/shared\/cart":["cart"],"giftregistry\/index\/cart":["cart"],"giftregistry\/view\/addtocart":["cart"],"company\/company\/select":["customer-companies","cart","cart-data","checkout-data","negotiable_quote","purchase_order"],"rest\/*\/v1\/carts\/*\/po-payment-information":["cart","checkout-data","last-ordered-items"],"purchaseorder\/purchaseorder\/success":["cart","checkout-data","last-ordered-items"],"customer\/address\/*":["instant-purchase"],"customer\/account\/*":["instant-purchase"],"vault\/cards\/deleteaction":["instant-purchase"],"multishipping\/checkout\/overviewpost":["cart","amasty-storepickup-data","amasty-selected-pickup-info"],"wishlist\/index\/copyitem":["wishlist"],"wishlist\/index\/copyitems":["wishlist"],"wishlist\/index\/deletewishlist":["wishlist","multiplewishlist"],"wishlist\/index\/createwishlist":["multiplewishlist"],"wishlist\/index\/editwishlist":["multiplewishlist"],"wishlist\/index\/moveitem":["wishlist"],"wishlist\/index\/moveitems":["wishlist"],"wishlist\/search\/addtocart":["cart","wishlist"],"persistent\/index\/unsetcookie":["persistent"],"quickorder\/sku\/uploadfile\/":["cart"],"review\/product\/post":["review"],"paymentservicespaypal\/smartbuttons\/placeorder":["cart","checkout-data"],"paymentservicespaypal\/smartbuttons\/cancel":["cart","checkout-data"],"paypal\/express\/placeorder":["amasty-deliverydate","amasty-storepickup-data","amasty-selected-pickup-info"],"paypal\/payflowexpress\/placeorder":["amasty-deliverydate","amasty-storepickup-data","amasty-selected-pickup-info"],"paypal\/express\/onauthorization":["amasty-storepickup-data","amasty-selected-pickup-info"],"amasty_cart\/cart\/add":["amasty-storepickup-data","amasty-selected-pickup-info"],"braintree\/paypal\/placeorder":["amasty-storepickup-data","amasty-selected-pickup-info"],"authorizenet\/directpost_payment\/place":["amasty-storepickup-data","amasty-selected-pickup-info"],"checkout\/cart\/configure":["wp_ga4"],"rest\/*\/v1\/guest-carts\/*\/shipping-information":["wp_ga4"],"rest\/*\/v1\/carts\/*\/shipping-information":["wp_ga4"]},
1479                "clientSideSections": ["checkout-data","cart-data","amasty-deliverydate","amasty-selected-pickup-info"],
1480                "baseUrls": ["https:\/\/www.hartman.fi\/fi\/"],
1481                "sectionNames": ["messages","customer","compare-products","last-ordered-items","requisition","cart","directory-data","captcha","wishlist","company","company_authorization","customer-companies","negotiable_quote","purchase_order","instant-purchase","loggedAsCustomer","multiplewishlist","persistent","review","payments","amasty-storepickup-data","account_user","show_default_prices","realprices","store_filter","wp_ga4","recently_viewed_product","recently_compared_product","product_data_storage"]            }
1482        }
1483    }
1484</script>
vendor: 1 bytes, line 1484
1484
1485<script type="text/x-magento-init">
1486    {
1487        "*": {
1488            "Magento_Customer/js/customer-data": {
1489                "sectionLoadUrl": "https\u003A\u002F\u002Fwww.hartman.fi\u002Ffi\u002Fcustomer\u002Fsection\u002Fload\u002F",
1490                "expirableSectionLifetime": 60,
1491                "expirableSectionNames": ["cart","persistent","amasty-storepickup-data"],
1492                "cookieLifeTime": "3600",
1493                "cookieDomain": "",
1494                "updateSessionUrl": "https\u003A\u002F\u002Fwww.hartman.fi\u002Ffi\u002Fcustomer\u002Faccount\u002FupdateSession\u002F",
1495                "isLoggedIn": ""
1496            }
1497        }
1498    }
1499</script>
vendor: 1 bytes, line 1499
1499
1500<script type="text/x-magento-init">
1501    {
1502        "*": {
1503            "Magento_Customer/js/invalidation-processor": {
1504                "invalidationRules": {
1505                    "website-rule": {
1506                        "Magento_Customer/js/invalidation-rules/website-rule": {
1507                            "scopeConfig": {
1508                                "websiteId": "1"
1509                            }
1510                        }
1511                    }
1512                }
1513            }
1514        }
1515    }
1516</script>
vendor: 1 bytes, line 1516
1516
1517<script type="text/x-magento-init">
1518    {
1519        "body": {
1520            "pageCache": {"url":"https:\/\/www.hartman.fi\/fi\/page_cache\/block\/render\/page_id\/17\/","handles":["default","cms_page_view","cms_page_view_id_english"],"originalRequest":{"route":"cms","controller":"page","action":"view","uri":"\/fi\/english"},"versionCookieName":"private_content_version"}        }
1521    }
1522</script>
vendor: 1 bytes, line 1522
1522
1523<script type="text/x-magento-init">
1524{
1525    "*": {
1526        "Magento_Banner/js/model/banner":
1527            {"sectionLoadUrl":"https:\/\/www.hartman.fi\/fi\/banner\/ajax\/load\/","cacheTtl":30000}        }
1528}
1529</script>
vendor: 1 bytes, line 1529
1529
1530<script>
1531    var feedId = getUrlParam('ff'),
1532        product = getUrlParam('fp'),
1533        currentDate = new Date(),
1534        session = getCookie('feed_session');
1535
1536    if (!session) {
1537        session = '' + Math.floor(currentDate.getTime() / 1000) + Math.floor(Math.random() * 10000001);
1538    }
1539
1540    if (session && feedId > 0 && product > 0) {
1541        setCookie('feed_session', session, {expires: 365, path: '/'});
1542        setCookie('feed_id', feedId, 365);
1543
1544        var xhr = new XMLHttpRequest(),
1545            baseUrl = 'https://www.hartman.fi/fi/',
1546            url = BASE_URL + '?rnd=' + Math.floor(Math.random() * 10000001) + "&feed=" + feedId + "&session=" + session + "&product=" + product;
1547
1548        xhr.open('GET', url, true);
1549        xhr.setRequestHeader('Content-Type', 'application/json');
1550        xhr.send();
1551    }
1552
1553    function getUrlParam(name) {
1554        let results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
1555
1556        if (results === null) {
1557            return '';
1558        } else {
1559            return results[1] || 0;
1560        }
1561    }
1562
1563    function getCookie(cookieName) {
1564        var name = cookieName + "=",
1565            decodedCookie = decodeURIComponent(document.cookie),
1566            cookieArray = decodedCookie.split(';');
1567
1568        for (var i = 0; i < cookieArray.length; i++) {
1569            var cookie = cookieArray[i].trim();
1570            if (cookie.indexOf(name) === 0) {
1571                return cookie.substring(name.length, cookie.length);
1572            }
1573        }
1574
1575        return null;
1576    }
1577
1578    function setCookie(cookieName, cookieValue, expirationDays) {
1579        var d = new Date();
1580        d.setTime(d.getTime() + (expirationDays * 24 * 60 * 60 * 1000));
1581        var expires = "expires=" + d.toUTCString();
1582        document.cookie = cookieName + "=" + cookieValue + ";" + expires + ";path=/";
1583    }
1584</script>
vendor: 1 bytes, line 1584
1584
1585<script type="text/x-magento-init">
1586        {
1587            "*": {
1588                "Magento_Ui/js/core/app": {
1589                    "components": {
1590                        "storage-manager": {
1591                            "component": "Magento_Catalog/js/storage-manager",
1592                            "appendTo": "",
1593                            "storagesConfiguration" : {"recently_viewed_product":{"requestConfig":{"syncUrl":"https:\/\/www.hartman.fi\/fi\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"recently_compared_product":{"requestConfig":{"syncUrl":"https:\/\/www.hartman.fi\/fi\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"product_data_storage":{"updateRequestConfig":{"url":"https:\/\/www.hartman.fi\/fi\/rest\/fi\/V1\/products-render-info"},"requestConfig":{"syncUrl":"https:\/\/www.hartman.fi\/fi\/catalog\/product\/frontend_action_synchronize\/"},"allowToSendRequest":null}}                        }
1594                    }
1595                }
1596            }
1597        }
1598</script>
vendor: 1 bytes, line 1598
1598
1599<script type="text/javascript">
1600    require([
1601        'jquery',
1602        'foundation',
1603        'domReady!'
1604    ], function ($) {
1605
1606        // Init foundation
1607        $(document).foundation();
1608
1609    });
1610</script>
vendor: 1 bytes, line 1610
1610
1611<script type="text/javascript">
1612//<![CDATA[
1613
1614requirejs([
1615    'jquery',
1616    'foundation'
1617], function(jQuery) {
1618
1619    // Init foundation
1620    jQuery(document).foundation();
1621
1622        
1623        var gridItemsEqualHeightApplied = false;
1624        function setGridItemsEqualHeight()
1625        {
1626            var bottomMinSpace = 20; // Minimum space below the button at the bottom of the item
1627            var gridItemMaxHeight = 0;
1628            var gridItemMaxPaddingBottom = 0;
1629            var $listContainer = jQuery('.category-products-grid');
1630            var $listItems = $listContainer.children('ol').children();
1631            var centered = $listContainer.hasClass('centered');
1632            var $row = jQuery();
1633
1634            $listItems.each(function() {
1635
1636                var $item = jQuery(this);
1637                var $actionsBlock = $item.find('.actions');
1638
1639                // Check if first item in a row
1640                if ($item.css("clear") == "left")
1641                {
1642                    // If row not empty, apply the max values to all items in a row
1643                    if ($row.length)
1644                    {
1645                        $row.css({
1646                            "height": gridItemMaxHeight + "px", 
1647                            "padding-bottom": gridItemMaxPaddingBottom + "px"
1648                        });
1649
1650                        // Reset the row collection and reset the max values
1651                        $row = jQuery();
1652                        gridItemMaxHeight = 0;
1653                        gridItemMaxPaddingBottom = 0;
1654                    }
1655                }
1656                $row = $row.add($item);
1657
1658                $item.css("height", "auto");                 gridItemMaxHeight = Math.max(gridItemMaxHeight, $item.height());
1659
1660                // Use constant bottomMinSpace as bottom offset for the actions container
1661                $actionsBlock.css("bottom", bottomMinSpace + "px");
1662
1663                // Align button to the center
1664                if (centered)
1665                {
1666                    var objectWidth = $actionsBlock.width();
1667                    var availableWidth = $item.width();
1668                    var space = availableWidth - objectWidth;
1669                    var leftOffset = ~~(space / 2);
1670                    $actionsBlock.css("padding-left", leftOffset + "px");                 }
1671
1672                // Set bottom padding wich equals to: actions container height + bottomMinSpace
1673                var currentPaddingBottom = bottomMinSpace + $actionsBlock.innerHeight();
1674                gridItemMaxPaddingBottom = Math.max(gridItemMaxPaddingBottom, currentPaddingBottom);
1675
1676                $item.css("padding-bottom", currentPaddingBottom + "px"); // TODO: possibly redundant. Padding will be applied for the entire row.
1677
1678            });
1679
1680            // Apply the max values to all items in the last row
1681            if ($row.length)
1682            {
1683                $row.css({
1684                    "height": gridItemMaxHeight + "px", 
1685                    "padding-bottom": gridItemMaxPaddingBottom + "px"
1686                });
1687            }
1688            
1689            gridItemsEqualHeightApplied = true;
1690
1691        }
1692
1693    
1694
1695
1696    jQuery(function($) {
1697
1698
1699
1700        // Products grid: equal height of items
1701        
1702            $(document).on('last-swatch-found', function(e) {
1703                setGridItemsEqualHeight();
1704                $(document).off('last-swatch-found');
1705                e.stopPropagation();
1706            });
1707
1708            setGridItemsEqualHeight();
1709            
1710        
1711
1712
1713                        
1714                        $('.category-products-grid').on('mouseenter', '.item', function() {
1715                $(this).find(".display-onhover").fadeIn(400, "easeOutCubic");
1716            }).on('mouseleave', '.item', function() {
1717                $(this).find(".display-onhover").stop(true).hide();
1718            });
1719        
1720        
1721
1722
1723                $('.items-grid, .products-list').on('mouseenter', '.product-item-img', function() {
1724            $(this).find(".alt-img").fadeIn(400, "easeOutCubic");
1725        }).on('mouseleave', '.product-item-img', function() {
1726            $(this).find(".alt-img").stop(true).fadeOut(400, "easeOutCubic");
1727        });
1728
1729
1730
1731                $('.fade-on-hover').on('mouseenter', function() {
1732            $(this).animate({opacity: 0.75}, 300, 'easeInOutCubic');
1733        }).on('mouseleave', function() {
1734            $(this).stop(true).animate({opacity: 1}, 300, 'easeInOutCubic');
1735        });
1736
1737
1738
1739        // Drop-down
1740        var ddBlockSelector = '.dropdown-block-trigger'; // '.dropdown-block';
1741        var ddOpenTimeout;
1742        var dMenuPosTimeout;
1743        var DD_DELAY_IN = 200;
1744        var DD_DELAY_OUT = 0;
1745        var DD_ANIMATION_IN = 0;
1746        var DD_ANIMATION_OUT = 0;
1747
1748        $(document).on('mouseenter touchstart', ddBlockSelector, function(e) {
1749
1750            var dd = $(this);
1751            var ddHeading = dd.children('.dropdown-heading');
1752            var ddContent = dd.children('.dropdown-content');
1753
1754            // If dd is not opened yet (or not initialized yet)
1755            var isDdOpened = dd.data('ddOpened');
1756            if (isDdOpened === false || isDdOpened === undefined)
1757            {
1758                // Clear old position of dd menu
1759                ddContent.css("left", "");
1760                ddContent.css("right", "");
1761
1762                // Show dd menu
1763                clearTimeout(ddOpenTimeout);
1764                ddOpenTimeout = setTimeout(function() {
1765                    
1766                    dd.addClass('open');
1767
1768                    // Set dd open flag
1769                    dd.data('ddOpened', true);
1770                    
1771                }, DD_DELAY_IN);
1772
1773                ddContent.stop(true, true).delay(DD_DELAY_IN).fadeIn(DD_ANIMATION_IN, "easeOutCubic");
1774                
1775                // Set new position of dd menu.
1776                // This code is delayed the same amount of time as dd animation.
1777                clearTimeout(dMenuPosTimeout);
1778                dMenuPosTimeout = setTimeout(function() {
1779
1780                    if (ddContent.offset().left < 0)
1781                    {
1782                        var space = dd.offset().left; // Space available on the left of dd
1783                        ddContent.css("left", (-1)*space);
1784                        ddContent.css("right", "auto");
1785                    }
1786                
1787                }, DD_DELAY_IN);
1788
1789            } // end: dd is not opened yet
1790
1791        }).on('mouseleave', ddBlockSelector, function(e) {
1792
1793            var dd = $(this);
1794            var ddContent = dd.children('.dropdown-content');
1795
1796            clearTimeout(ddOpenTimeout); // Clear, to close dd on mouseleave
1797            ddContent.stop(true, true).delay(DD_DELAY_OUT).fadeOut(DD_ANIMATION_OUT, "easeInCubic");
1798            if (ddContent.is(":hidden"))
1799            {
1800                ddContent.hide();
1801            }
1802            dd.removeClass('open');
1803
1804            // Clear dd open flag
1805            dd.data('ddOpened', false);
1806
1807            // After hiding, clear the click event flag
1808            dd.data('ddClickIntercepted', false);
1809
1810        }).on('click', ddBlockSelector, function(e) {
1811
1812            var dd = $(this);
1813            var ddHeading = dd.children('.dropdown-heading');
1814            var ddContent = dd.children('.dropdown-content');
1815
1816            // Only if the heading was clicked
1817            if ($.contains(ddHeading[0], e.target) || ddHeading.is(e.target))
1818            {
1819                // Only after the first click already happened, the second click can close the dropdown
1820                if (dd.data('ddClickIntercepted'))
1821                {
1822                    if (dd.hasClass('open'))
1823                    {
1824                        clearTimeout(ddOpenTimeout); // Clear, to close dd on mouseleave
1825                        ddContent.stop(true, true).delay(DD_DELAY_OUT).fadeOut(DD_ANIMATION_OUT, "easeInCubic");
1826                        if (ddContent.is(":hidden"))
1827                        {
1828                            ddContent.hide();
1829                        }
1830                        dd.removeClass('open');
1831
1832                        // Clear dd open flag
1833                        dd.data('ddOpened', false);
1834
1835                        // After hiding, clear the click event flag
1836                        dd.data('ddClickIntercepted', false);
1837                    }
1838                }
1839                else 
1840                {
1841                    // Set the click event flag
1842                    dd.data('ddClickIntercepted', true);
1843                }
1844            }
1845
1846        });
1847
1848
1849
1850                var windowScroll_t;
1851        $(window).scroll(function(){
1852            
1853            clearTimeout(windowScroll_t);
1854            windowScroll_t = setTimeout(function() {
1855                                        
1856                if ($(this).scrollTop() > 100)
1857                {
1858                    $('#scroll-to-top').fadeIn();
1859                }
1860                else
1861                {
1862                    $('#scroll-to-top').fadeOut();
1863                }
1864            
1865            }, 500);
1866            
1867        });
1868        
1869        $('#scroll-to-top').click(function(){
1870            $("html, body").animate({scrollTop: 0}, 600, "easeOutCubic");
1871            return false;
1872        });
1873
1874
1875
1876                var dResize = {
1877
1878            winWidth : 0
1879            , winHeight : 0
1880            , windowResizeTimeout : null
1881
1882            , init : function()
1883            {
1884                dResize.winWidth = $(window).width();
1885                dResize.winHeight = $(window).height();
1886                dResize.windowResizeTimeout;
1887
1888                $(window).on('resize', function(e) {
1889                    clearTimeout(dResize.windowResizeTimeout);
1890                    dResize.windowResizeTimeout = setTimeout(function() {
1891                        dResize.onEventResize(e);
1892                    }, 50);
1893                });
1894            }
1895
1896            , onEventResize : function(e)
1897            {
1898                //Prevent from executing the code in IE when the window wasn't actually resized
1899                var winNewWidth = $(window).width();
1900                var winNewHeight = $(window).height();
1901
1902                //Code in this condition will be executed only if window was actually resized
1903                if (dResize.winWidth != winNewWidth || dResize.winHeight != winNewHeight)
1904                {
1905                    //Trigger deferred resize event
1906                    $(window).trigger("themeResize", e);
1907
1908                    //Additional code executed on deferred resize
1909                    dResize.onEventDeferredResize();
1910                }
1911
1912                //Update window size variables
1913                dResize.winWidth = winNewWidth;
1914                dResize.winHeight = winNewHeight;
1915            }
1916
1917            , onEventDeferredResize : function() //Additional code, execute after window was actually resized
1918            {
1919
1920                //Products grid: equal height of items
1921                
1922                    setGridItemsEqualHeight();
1923
1924                
1925            }
1926
1927        }; //end: dResize
1928
1929        dResize.init();
1930
1931
1932
1933    }); //end: on document ready
1934
1935
1936
1937    jQuery(window).on('load',function() {
1938
1939                
1940            setGridItemsEqualHeight();
1941
1942        
1943    }); //end: on load
1944
1945
1946
1947}); //end: requirejs
1948
1949
1950
1951requirejs(['jquery', 'enquire'], function(jQuery, enquire) {
1952
1953    jQuery(function($) {
1954
1955        // Collapsible block
1956        // This plugin requires a specific markup structure. The plugin expects a set of elements that it
1957        // will use as the toggle link. It then hides all immediately following siblings and toggles the sibling's
1958        // visibility when the toggle link is clicked.
1959        //
1960        // Example markup:
1961        // <div class="block">
1962        //     <div class="block-title">Trigger</div>
1963        //     <div class="block-content">Content that should show when </div>
1964        // </div>
1965        //
1966        // JS: jQuery('.block-title').toggleSingle();
1967        //
1968        // Options:
1969        //     destruct: defaults to false, but if true, the plugin will remove itself, display content, and remove event handlers
1970
1971        jQuery.fn.toggleSingle = function (options) {
1972
1973            var settings = $.extend({
1974                destruct: false
1975            }, options);
1976
1977            return this.each(function () {
1978                if (!settings.destruct) {
1979                    $(this).on('click', function () {
1980                        $(this)
1981                            .next()
1982                            .toggleClass('no-display')
1983                            .parent()
1984                            .toggleClass('active');
1985                    });
1986
1987                    // Hide the content
1988                    $this = $(this);
1989                    if (!$this.parent().hasClass('active'))
1990                    {
1991                        $this.next().addClass('no-display');
1992                    }
1993                }
1994                else
1995                {
1996                    // Remove event handler so that the toggle link can no longer be used
1997                    $(this).off('click');
1998
1999                    // Remove all classes that were added by this plugin
2000                    $(this)
2001                        .next()
2002                        .removeClass('no-display')
2003                        .parent()
2004                        .removeClass('active');
2005                }
2006
2007            });
2008
2009        } // end: toggleSingle
2010
2011        // Collapsible block - with delegated event
2012        // Modification of the standard collapsible block plugin. It has a delegated click event attached to block's container.
2013        // It is required for some blocks inside "additional sidebar" (currently: wishlist and compare)
2014        // which are created/modified dynamically by Magento's JavaScript code.
2015
2016        jQuery.fn.toggleMultiBlocks = function (options) {
2017
2018            var settings = $.extend({
2019                destruct: false,
2020                blockHeadingSelector: '.block-title'
2021            }, options);
2022
2023            return this.each(function () {
2024
2025                // Container of blocks
2026                var $sidebar = $(this);
2027
2028                // All blocks inside the container
2029                var $blockHeadings = $sidebar.find(settings.blockHeadingSelector);
2030
2031                if (!settings.destruct)
2032                {
2033                    $sidebar.on('click', settings.blockHeadingSelector, function(e) {
2034                        $(this)
2035                            .next().toggleClass('no-display')
2036                            .parent().toggleClass('active');
2037                    });
2038
2039                    // Hide the content in all blocks
2040                    $blockHeadings.each(function () {
2041                        var heading = $(this);
2042                        if (!heading.parent().hasClass('active'))
2043                        {
2044                            heading.next().addClass('no-display');
2045                            // Here we may need to add that class to the next sibling
2046                            // if block's content consists of more elements than just one:
2047                            // .next().addClass('no-display')
2048                        }
2049                        else
2050                        {
2051                            heading.next().removeClass('no-display');
2052                        }
2053                    });
2054                }
2055                else
2056                {
2057                    // Remove event handler so that the toggle link can no longer be used
2058                    $sidebar.off('click');
2059
2060                    // Remove all classes that were added by this plugin
2061                    $blockHeadings
2062                        .next().removeClass('no-display')
2063                        .parent().removeClass('active');
2064                }
2065
2066            });
2067
2068        } // end: toggleMultiBlocks
2069
2070        var breakpointScreenM = 768; // The same value as Magento's breakpoint @screen__m
2071
2072        // Blocks collapsing on smaller viewports
2073        enquire.register('(max-width: ' + (breakpointScreenM - 1) + 'px)', {
2074            setup: function () {
2075                this.toggleElements = $(
2076                    '.mobile-collapsible .block-title'
2077                );
2078                this.delayedToggleElements = $(
2079                    '.sidebar'
2080                );
2081            },
2082            match: function () {
2083                this.toggleElements.toggleSingle();
2084                this.delayedToggleElements.toggleMultiBlocks({blockHeadingSelector: '.block:not(#layered-filter-block) .block-title'});
2085            },
2086            unmatch: function () {
2087                this.toggleElements.toggleSingle({destruct: true});
2088                this.delayedToggleElements.toggleMultiBlocks({destruct: true, blockHeadingSelector: '.block:not(#layered-filter-block) .block-title'});
2089            }
2090        });
2091
2092        // Blocks collapsing on all viewports.
2093        // For backward compatibility exclude blocks which have both classes: "collapsible" and "mobile-collapsible" 
2094        $('.collapsible:not(.mobile-collapsible) .block-title').toggleSingle();
2095
2096    }); //end: on document ready
2097
2098}); //end: requirejs
2099
2100
2101
2102//]]>
2103</script>
vendor: 1 bytes, line 2103
2103
2104<script>
2105    require(['jquery', 'Magento_Customer/js/customer-data', 'domReady!'],
2106        function ($, customerData) {
2107            $(document).ready(() => {
2108                if (window.dataLayer) {
2109                    let account_user = customerData.get('account_user');
2110                    let hasPushed = false;
2111                    account_user.subscribe((updatedCustomer) => {
2112                        if (!hasPushed) {
2113                            window.dataLayer.push({'hartman_customer_type': updatedCustomer.customer_group});
2114                        }
2115                        hasPushed = true;
2116                    }, this);
2117                }
2118            });
2119        });
2120</script>
vendor: 1 bytes, line 2120
2120
2121<script>
2122        require(['jquery','weltpixel_ga4_persistentLayer','weltpixel_ga4_gtm', 'Magento_Customer/js/customer-data'],
2123            function ($, wpGa4PersDl ,wpGa4gtm, customerData) {
2124                $( document ).ajaxComplete(function( event, xhr, settings ) {
2125                    if (settings.url.search('/customer\/section\/load/') > 0) {
2126                        var response = xhr.responseJSON;
2127                        if (response.wp_ga4) {
2128                            var dataLayerData = $.parseJSON(response.wp_ga4.datalayer);
2129                            for (index in dataLayerData) {
2130                                window.dataLayer.push({ecommerce: null});
2131                                window.dataLayer.push(dataLayerData[index]);
2132                            }
2133                        }
2134                    }
2135                });
2136                var wpPersDlOptions = {'storageExpiryTime' : 30 };
2137                var wpGtmOptions = {
2138                    'enabled' : 0,
2139                    'persDataLayer' : wpGa4PersDl
2140                };
2141                wpGa4PersDl.init(wpPersDlOptions);
2142                wpGa4gtm.trackPromotion(wpGtmOptions);
2143            });
2144    </script>
vendor: 1 bytes, line 2144
2144
2145<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-bb307877636d68d4978","applicationID":"1086880230","transactionName":"YVNSYhdXDRcEABBQC1gZcVURXwwKSgAJSktGV1dTSkAKARI=","queueTime":0,"applicationTime":1271,"atts":"TRRFFF9NHkhHAkYDH0tL","errorBeacon":"bam.nr-data.net","agent":""}</script>
2145</body>
2146</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.