{"id":2887,"date":"2026-06-09T08:02:29","date_gmt":"2026-06-09T08:02:29","guid":{"rendered":"https:\/\/www.kourulle.com\/?page_id=2887"},"modified":"2026-06-09T08:02:45","modified_gmt":"2026-06-09T08:02:45","slug":"tiilikaton-huoltolaskuri","status":"publish","type":"page","link":"http:\/\/www.kourulle.com\/en\/tiilikaton-huoltolaskuri\/","title":{"rendered":"Laskuri"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"2887\" class=\"elementor elementor-2887\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c32db38 e-flex e-con-boxed e-con e-parent\" data-id=\"c32db38\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ab21d38 e-con-full e-flex e-con e-child\" data-id=\"ab21d38\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5ed6c67 elementor-widget elementor-widget-html\" data-id=\"5ed6c67\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@graph\": [\n    {\n      \"@type\": \"RoofingContractor\",\n      \"@id\": \"https:\/\/www.kourulle.com\/#organization\",\n      \"name\": \"Kourullecom Oy\",\n      \"url\": \"https:\/\/www.kourulle.com\/\",\n      \"logo\": \"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/imgi_27_Kourulle-valk.-logo-1-600x81-1.png\",\n      \"image\": \"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/imgi_48_5R6A9732-scaled-1.jpg\",\n      \"telephone\": \"+358 40 729 5738\",\n      \"email\": \"asiakaspalvelu@kourulle.com\",\n      \"taxID\": \"3205833-8\",\n      \"sameAs\": [\n        \"https:\/\/www.facebook.com\/p\/Kourullecom-100067462683285\/\",\n        \"https:\/\/www.instagram.com\/kourullecom\/\",\n        \"https:\/\/www.youtube.com\/@Kourullecom\"\n      ],\n      \"areaServed\": [\n        { \"@type\": \"AdministrativeArea\", \"name\": \"Uusimaa\" },\n        { \"@type\": \"AdministrativeArea\", \"name\": \"Pirkanmaa\" },\n        { \"@type\": \"AdministrativeArea\", \"name\": \"Varsinais-Suomi\" },\n        { \"@type\": \"AdministrativeArea\", \"name\": \"Kanta-H\u00e4me\" },\n        { \"@type\": \"City\", \"name\": \"Oulu\" },\n        { \"@type\": \"City\", \"name\": \"Kouvola\" },\n        { \"@type\": \"City\", \"name\": \"Kuopio\" },\n        { \"@type\": \"City\", \"name\": \"Pori\" },\n        { \"@type\": \"City\", \"name\": \"Lahti\" },\n        { \"@type\": \"City\", \"name\": \"Kokkola\" },\n        { \"@type\": \"City\", \"name\": \"Jyv\u00e4skyl\u00e4\" }\n      ]\n    },\n    {\n      \"@type\": \"Service\",\n      \"@id\": \"https:\/\/www.kourulle.com\/tiilikaton-huolto\/#service\",\n      \"name\": \"Tiilikaton huolto ja tarkastus\",\n      \"description\": \"Ammattimainen tiilikaton huolto avaimet k\u00e4teen -periaatteella: tarkastus, puhdistus, korjaukset ja suojak\u00e4sittely.\",\n      \"provider\": {\n        \"@id\": \"https:\/\/www.kourulle.com\/#organization\"\n      },\n      \"url\": \"https:\/\/www.kourulle.com\/tiilikaton-huolto\/\",\n      \"offers\": [\n        {\n          \"@type\": \"AggregateOffer\",\n          \"name\": \"Vuosihuolto\",\n          \"lowPrice\": \"400.00\",\n          \"highPrice\": \"600.00\",\n          \"priceCurrency\": \"EUR\"\n        },\n        {\n          \"@type\": \"AggregateOffer\",\n          \"name\": \"Laaja huolto\",\n          \"lowPrice\": \"1000.00\",\n          \"highPrice\": \"2500.00\",\n          \"priceCurrency\": \"EUR\"\n        }\n      ]\n    }\n  ]\n}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2204c52 elementor-widget elementor-widget-heading\" data-id=\"2204c52\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Tiilikaton huoltolaskuri<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f1553ac e-flex e-con-boxed e-con e-parent\" data-id=\"f1553ac\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-094f8f8 e-con-full e-flex e-con e-child\" data-id=\"094f8f8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-9db7a32 e-con-full e-flex e-con e-child\" data-id=\"9db7a32\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c4769e1 elementor-widget elementor-widget-html\" data-id=\"c4769e1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t    <div class=\"khl-wrapper\" id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba\"\r\n         data-ajax-url=\"https:\/\/www.kourulle.com\/wp-admin\/admin-ajax.php\"\r\n         data-nonce=\"bdd14def73\">\r\n        <div class=\"khl-card\">\r\n            <div class=\"khl-header\">\r\n                <span class=\"khl-eyebrow\">Arviolaskuri<\/span>\r\n                <h2 class=\"khl-title\">Tiilikaton huollon hinta-arvio<\/h2>\r\n                <p class=\"khl-subtitle\">T\u00e4yt\u00e4 tiedot ja saat henkil\u00f6kohtaisen hinta-arvion s\u00e4hk\u00f6postiisi alle minuutissa.<\/p>\r\n            <\/div>\r\n\r\n            <form class=\"khl-form\" onsubmit=\"return false;\">\r\n\r\n                <!-- Kattoneli\u00f6t -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-nelia\">\r\n                        <span class=\"khl-label\">Kattoneli\u00f6t<\/span>\r\n                        <span class=\"khl-help\">Arvio katon pinta-alasta m\u00b2<\/span>\r\n                    <\/label>\r\n                    <div class=\"khl-input-with-unit\">\r\n                        <input type=\"number\" min=\"0\" step=\"1\" id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-nelia\" data-khl=\"nelia\" value=\"120\" \/>\r\n                        <span class=\"khl-unit\">m\u00b2<\/span>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <!-- Kattokaltevuus -->\r\n                <div class=\"khl-field\">\r\n                    <label>\r\n                        <span class=\"khl-label\">Kattokaltevuus<\/span>\r\n                        <span class=\"khl-help\">Mit\u00e4 jyrkempi katto, sit\u00e4 ty\u00f6l\u00e4\u00e4mpi puhdistaa<\/span>\r\n                    <\/label>\r\n                    <div class=\"khl-slopes\" role=\"radiogroup\">\r\n                        <label class=\"khl-slope\">\r\n                            <input type=\"radio\" name=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-kaltevuus\" data-khl=\"kaltevuus\" value=\"1.0\" checked \/>\r\n                            <span class=\"khl-slope-card\">\r\n                                <svg class=\"khl-slope-svg\" viewBox=\"0 0 100 60\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\">\r\n                                    <line x1=\"6\" y1=\"52\" x2=\"94\" y2=\"52\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" opacity=\".35\"\/>\r\n                                    <path d=\"M16 52 L50 39.6 L84 52\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n                                <\/svg>\r\n                                <span class=\"khl-slope-label\">Loiva<\/span>\r\n                            <\/span>\r\n                        <\/label>\r\n                        <label class=\"khl-slope\">\r\n                            <input type=\"radio\" name=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-kaltevuus\" data-khl=\"kaltevuus\" value=\"1.15\" \/>\r\n                            <span class=\"khl-slope-card\">\r\n                                <svg class=\"khl-slope-svg\" viewBox=\"0 0 100 60\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\">\r\n                                    <line x1=\"6\" y1=\"52\" x2=\"94\" y2=\"52\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" opacity=\".35\"\/>\r\n                                    <path d=\"M16 52 L50 32.4 L84 52\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n                                <\/svg>\r\n                                <span class=\"khl-slope-label\">Keskijyrkk\u00e4<\/span>\r\n                            <\/span>\r\n                        <\/label>\r\n                        <label class=\"khl-slope\">\r\n                            <input type=\"radio\" name=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-kaltevuus\" data-khl=\"kaltevuus\" value=\"1.3\" \/>\r\n                            <span class=\"khl-slope-card\">\r\n                                <svg class=\"khl-slope-svg\" viewBox=\"0 0 100 60\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\">\r\n                                    <line x1=\"6\" y1=\"52\" x2=\"94\" y2=\"52\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" opacity=\".35\"\/>\r\n                                    <path d=\"M16 52 L50 23.7 L84 52\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n                                <\/svg>\r\n                                <span class=\"khl-slope-label\">Jyrkk\u00e4<\/span>\r\n                            <\/span>\r\n                        <\/label>\r\n                        <label class=\"khl-slope\">\r\n                            <input type=\"radio\" name=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-kaltevuus\" data-khl=\"kaltevuus\" value=\"1.4\" \/>\r\n                            <span class=\"khl-slope-card\">\r\n                                <svg class=\"khl-slope-svg\" viewBox=\"0 0 100 60\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\">\r\n                                    <line x1=\"6\" y1=\"52\" x2=\"94\" y2=\"52\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" opacity=\".35\"\/>\r\n                                    <path d=\"M16 52 L50 11.5 L84 52\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n                                <\/svg>\r\n                                <span class=\"khl-slope-label\">Yli 45\u00b0<\/span>\r\n                            <\/span>\r\n                        <\/label>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <!-- Kasvusto: varjopuoli -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-varjo\">\r\n                        <span class=\"khl-label\">Sammaleen \/ kasvuston m\u00e4\u00e4r\u00e4 \u2014 varjopuoli<\/span>\r\n                        <span class=\"khl-help\">Pohjoinen \/ varjoinen puoli katosta<\/span>\r\n                    <\/label>\r\n                    <select id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-varjo\" data-khl=\"varjo\">\r\n                        <option value=\"0.0\">Ei kasvustoa<\/option>\r\n                        <option value=\"0.6\">Pient\u00e4 alkavaa kasvustoa<\/option>\r\n                        <option value=\"1.2\" selected>Jonkin verran kasvustoa<\/option>\r\n                        <option value=\"1.3\">Keskiverto m\u00e4\u00e4r\u00e4 kasvustoa<\/option>\r\n                        <option value=\"1.4\">Reilu m\u00e4\u00e4r\u00e4 kasvustoa<\/option>\r\n                        <option value=\"1.6\">Kokonaan kasvuston peitossa<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n\r\n                <!-- Kasvusto: aurinkopuoli -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-aurinko\">\r\n                        <span class=\"khl-label\">Sammaleen \/ kasvuston m\u00e4\u00e4r\u00e4 \u2014 aurinkopuoli<\/span>\r\n                        <span class=\"khl-help\">Etel\u00e4inen \/ aurinkoinen puoli katosta<\/span>\r\n                    <\/label>\r\n                    <select id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-aurinko\" data-khl=\"aurinko\">\r\n                        <option value=\"0.0\">Ei kasvustoa<\/option>\r\n                        <option value=\"0.6\" selected>Pient\u00e4 alkavaa kasvustoa<\/option>\r\n                        <option value=\"1.2\">Jonkin verran kasvustoa<\/option>\r\n                        <option value=\"1.3\">Keskiverto m\u00e4\u00e4r\u00e4 kasvustoa<\/option>\r\n                        <option value=\"1.4\">Reilu m\u00e4\u00e4r\u00e4 kasvustoa<\/option>\r\n                        <option value=\"1.6\">Kokonaan kasvuston peitossa<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n\r\n                <!-- Rikkin\u00e4iset tiilet -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-tiilet\">\r\n                        <span class=\"khl-label\">Rikkin\u00e4isten tiilien arvioitu m\u00e4\u00e4r\u00e4<\/span>\r\n                        <span class=\"khl-help\">J\u00e4t\u00e4 0, jos et tied\u00e4 \u2014 tarkistetaan paikan p\u00e4\u00e4ll\u00e4<\/span>\r\n                    <\/label>\r\n                    <div class=\"khl-input-with-unit\">\r\n                        <input type=\"number\" min=\"0\" step=\"1\" id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-tiilet\" data-khl=\"tiilet\" value=\"0\" \/>\r\n                        <span class=\"khl-unit\">kpl<\/span>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <!-- Aurinkopaneelien pesu -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-paneelit\">\r\n                        <span class=\"khl-label\">Aurinkopaneelien pesu<\/span>\r\n                        <span class=\"khl-help\">15 \u20ac \/ paneeli. J\u00e4t\u00e4 0, jos et halua paneelien pesua.<\/span>\r\n                    <\/label>\r\n                    <div class=\"khl-input-with-unit\">\r\n                        <input type=\"number\" min=\"0\" step=\"1\" id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-paneelit\" data-khl=\"paneelit\" value=\"0\" \/>\r\n                        <span class=\"khl-unit\">kpl<\/span>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <!-- Kerrokset -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-kerrokset\">\r\n                        <span class=\"khl-label\">Talon kerrosten m\u00e4\u00e4r\u00e4<\/span>\r\n                        <span class=\"khl-help\">Korkeammat kohteet vaativat enemm\u00e4n turvav\u00e4lineit\u00e4<\/span>\r\n                    <\/label>\r\n                    <select id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-kerrokset\" data-khl=\"kerrokset\">\r\n                        <option value=\"1\" selected>1 kerros<\/option>\r\n                        <option value=\"2\">2 kerrosta<\/option>\r\n                        <option value=\"3\">3 kerrosta<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n\r\n                <!-- Pihalis\u00e4 -->\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-piha\">\r\n                        <span class=\"khl-label\">\r\n                            Pihan haastavuus siivoukselle\r\n                            <span class=\"khl-tooltip\" tabindex=\"0\" aria-label=\"Esimerkkej\u00e4\">\r\n                                <span class=\"khl-tooltip-icon\">?<\/span>\r\n                                <span class=\"khl-tooltip-body\">\r\n                                    <strong>Helppo:<\/strong> Nurmikkopiha, ei ulkokalusteita.<br><br>\r\n                                    <strong>Keskivaikea:<\/strong> Esim. terassi, joka pit\u00e4\u00e4 suojata katolta tippuvalta sammaleelta, tai sorapintainen piha.<br><br>\r\n                                    <strong>Haastava:<\/strong> Esim. kallioinen tontti JA soraa JA terassi JA suojattavia ulkokalusteita.\r\n                                <\/span>\r\n                            <\/span>\r\n                        <\/span>\r\n                        <span class=\"khl-help\">Putoavan kasvuston siivous pihalta ty\u00f6n j\u00e4lkeen<\/span>\r\n                    <\/label>\r\n                    <select id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-piha\" data-khl=\"piha\">\r\n                        <option value=\"pieni\" selected>Helppo<\/option>\r\n                        <option value=\"keski\">Keskivaikea<\/option>\r\n                        <option value=\"suuri\">Haastava<\/option>\r\n                    <\/select>\r\n                <\/div>\r\n\r\n            <\/form>\r\n\r\n            <!-- Live hinta-arvio (n\u00e4kyy heti) -->\r\n            <div class=\"khl-price-block\" data-khl-price-block>\r\n                <div class=\"khl-result-row khl-result-main\">\r\n                    <span class=\"khl-result-label\">Arvioitu kokonaishinta<\/span>\r\n                    <span class=\"khl-result-value\" data-khl-out=\"total\">0 \u20ac<\/span>\r\n                <\/div>\r\n                <div class=\"khl-result-row khl-result-sub\">\r\n                    <span class=\"khl-result-label\">\r\n                        Kotitalousv\u00e4hennyksen j\u00e4lkeen\r\n                        <span class=\"khl-badge\">\u221235 % ty\u00f6n osuudesta<\/span>\r\n                    <\/span>\r\n                    <span class=\"khl-result-value-sub\" data-khl-out=\"afterTax\">0 \u20ac<\/span>\r\n                <\/div>\r\n                <p class=\"khl-disclaimer\">Hinta-arvio on suuntaa-antava. Lopullinen tarjous vahvistetaan kohdek\u00e4ynnill\u00e4, joka on aina maksuton.<\/p>\r\n                <button type=\"button\" class=\"khl-cta-btn\" data-khl-open-contact>\r\n                    Pyyd\u00e4 tarjous s\u00e4hk\u00f6postiin \u2192\r\n                <\/button>\r\n            <\/div>\r\n\r\n            <!-- Yhteystiedot (piilossa kunnes CTA klikattu) -->\r\n            <div class=\"khl-contact-section\" data-khl-contact hidden>\r\n                <div class=\"khl-contact-header\">\r\n                    <span class=\"khl-lock-icon\" aria-hidden=\"true\">\r\n                        <svg width=\"18\" height=\"14\" viewBox=\"0 0 18 14\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                            <path d=\"M2 1H16C16.5523 1 17 1.44772 17 2V12C17 12.5523 16.5523 13 16 13H2C1.44772 13 1 12.5523 1 12V2C1 1.44772 1.44772 1 2 1Z\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linejoin=\"round\"\/>\r\n                            <path d=\"M1.5 2L9 8L16.5 2\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n                        <\/svg>\r\n                    <\/span>\r\n                    <div>\r\n                        <h3 class=\"khl-contact-title\">L\u00e4het\u00e4mme tarjouksen s\u00e4hk\u00f6postiisi<\/h3>\r\n                        <p class=\"khl-contact-sub\">Olemme sinuun yhteydess\u00e4 viimeist\u00e4\u00e4n seuraavana arkip\u00e4iv\u00e4n\u00e4 ja sovimme maksuttoman kohdek\u00e4ynnin.<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-nimi\">\r\n                        <span class=\"khl-label\">Nimi <span class=\"khl-required\">*<\/span><\/span>\r\n                    <\/label>\r\n                    <input type=\"text\" required id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-nimi\" data-khl=\"nimi\" autocomplete=\"name\" \/>\r\n                <\/div>\r\n\r\n                <div class=\"khl-field khl-field-grid\">\r\n                    <div>\r\n                        <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-email\">\r\n                            <span class=\"khl-label\">S\u00e4hk\u00f6posti <span class=\"khl-required\">*<\/span><\/span>\r\n                        <\/label>\r\n                        <input type=\"email\" required id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-email\" data-khl=\"email\" autocomplete=\"email\" placeholder=\"nimi@esimerkki.fi\" \/>\r\n                    <\/div>\r\n                    <div>\r\n                        <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-puhelin\">\r\n                            <span class=\"khl-label\">Puhelin <span class=\"khl-required\">*<\/span><\/span>\r\n                        <\/label>\r\n                        <input type=\"tel\" required id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-puhelin\" data-khl=\"puhelin\" autocomplete=\"tel\" placeholder=\"040 123 4567\" \/>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"khl-field\">\r\n                    <label for=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-postinro\">\r\n                        <span class=\"khl-label\">Postinumero <span class=\"khl-required\">*<\/span><\/span>\r\n                        <span class=\"khl-help\">Auttaa meit\u00e4 arvioimaan k\u00e4yntimme aikataulun<\/span>\r\n                    <\/label>\r\n                    <input type=\"text\" required inputmode=\"numeric\" maxlength=\"10\" id=\"khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba-postinro\" data-khl=\"postinro\" autocomplete=\"postal-code\" placeholder=\"00100\" \/>\r\n                <\/div>\r\n\r\n                <button type=\"button\" class=\"khl-submit\" data-khl-submit>\r\n                    <span class=\"khl-submit-label\">L\u00e4het\u00e4 tarjouspyynt\u00f6<\/span>\r\n                    <span class=\"khl-submit-spinner\" aria-hidden=\"true\"><\/span>\r\n                <\/button>\r\n\r\n                <p class=\"khl-privacy\">\r\n                    L\u00e4hett\u00e4m\u00e4ll\u00e4 lomakkeen hyv\u00e4ksyt, ett\u00e4 k\u00e4sittelemme tietojasi\r\n                    tarjousta varten <a href=\"\/tietosuojaseloste\/\" target=\"_blank\" rel=\"noopener\">tietosuojaselosteen<\/a> mukaisesti.\r\n                <\/p>\r\n                <div class=\"khl-error\" data-khl-error role=\"alert\"><\/div>\r\n            <\/div>\r\n\r\n            <!-- Kiitossivu -->\r\n            <div class=\"khl-success-block\" data-khl-success hidden>\r\n                <div class=\"khl-success-icon\" aria-hidden=\"true\">\r\n                    <svg width=\"40\" height=\"40\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                        <circle cx=\"16\" cy=\"16\" r=\"15\" stroke=\"currentColor\" stroke-width=\"2\"\/>\r\n                        <path d=\"M9 16L14 21L23 12\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n                    <\/svg>\r\n                <\/div>\r\n                <h3 class=\"khl-success-title\">Kiitos! Tarjous on matkalla.<\/h3>\r\n                <p class=\"khl-success-sub\">L\u00e4hetimme hinta-arvion s\u00e4hk\u00f6postiisi. Olemme sinuun yhteydess\u00e4 viimeist\u00e4\u00e4n seuraavana arkip\u00e4iv\u00e4n\u00e4.<\/p>\r\n                <a href=\"\/tilaa-puhdistus\/\" class=\"khl-cta\">Tilaa maksuton arviok\u00e4ynti \u2192<\/a>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <style>\r\n        \/* ===== Kourulle Hintalaskuri ===== *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba.khl-wrapper {\r\n            --khl-bg: #f7f5f2;\r\n            --khl-card: #ffffff;\r\n            --khl-ink: #1f1a18;\r\n            --khl-ink-soft: #524845;\r\n            --khl-muted: #8f8784;\r\n            --khl-accent: #D52C1B;\r\n            --khl-accent-dark: #A81F11;\r\n            --khl-accent-soft: #fce8e5;\r\n            --khl-line: #e7e3df;\r\n            --khl-highlight: #1f1a18;\r\n            --khl-error: #8c1810;\r\n            --khl-radius: 14px;\r\n            --khl-shadow: 0 1px 2px rgba(31,26,24,.04), 0 12px 40px -12px rgba(213,44,27,.22);\r\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Inter\", system-ui, sans-serif;\r\n            color: var(--khl-ink);\r\n            max-width: 720px;\r\n            margin: 2rem auto;\r\n            box-sizing: border-box;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba.khl-wrapper *,\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba.khl-wrapper *::before,\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba.khl-wrapper *::after {\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-card {\r\n            background: var(--khl-card);\r\n            border: 1px solid var(--khl-line);\r\n            border-radius: var(--khl-radius);\r\n            box-shadow: var(--khl-shadow);\r\n            overflow: hidden;\r\n        }\r\n\r\n        \/* Header *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-header {\r\n            padding: 2rem 2rem 1.25rem;\r\n            background: linear-gradient(135deg, var(--khl-accent) 0%, var(--khl-accent-dark) 100%);\r\n            color: #fff;\r\n            position: relative;\r\n            overflow: hidden;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-header::before {\r\n            content: \"\";\r\n            position: absolute;\r\n            inset: 0;\r\n            background-image:\r\n                radial-gradient(circle at 80% 20%, rgba(255,255,255,.12), transparent 40%),\r\n                radial-gradient(circle at 10% 90%, rgba(255,255,255,.06), transparent 50%);\r\n            pointer-events: none;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-eyebrow {\r\n            display: inline-block;\r\n            font-size: .72rem;\r\n            letter-spacing: .14em;\r\n            text-transform: uppercase;\r\n            color: rgba(255,255,255,.75);\r\n            font-weight: 600;\r\n            position: relative;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-title {\r\n            font-size: 1.65rem;\r\n            line-height: 1.2;\r\n            margin: .35rem 0 .5rem;\r\n            font-weight: 700;\r\n            color: #fff;\r\n            position: relative;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-subtitle {\r\n            font-size: .95rem;\r\n            margin: 0;\r\n            color: rgba(255,255,255,.85);\r\n            position: relative;\r\n            line-height: 1.5;\r\n        }\r\n\r\n        \/* Form *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-form {\r\n            padding: 1.5rem 2rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-field {\r\n            margin-bottom: 1.35rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-field-grid {\r\n            display: grid;\r\n            grid-template-columns: 1fr 1fr;\r\n            gap: 1rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-field > label {\r\n            display: block;\r\n            margin-bottom: .5rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-label {\r\n            display: block;\r\n            font-weight: 600;\r\n            font-size: .95rem;\r\n            color: var(--khl-ink);\r\n            margin-bottom: .15rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-help {\r\n            display: block;\r\n            font-size: .8rem;\r\n            color: var(--khl-muted);\r\n            font-weight: 400;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-required {\r\n            color: var(--khl-accent);\r\n            font-weight: 700;\r\n        }\r\n\r\n        \/* Inputs *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba input[type=\"number\"],\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba input[type=\"text\"],\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba input[type=\"email\"],\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba input[type=\"tel\"],\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba select {\r\n            width: 100%;\r\n            padding: .7rem .85rem;\r\n            border: 1px solid var(--khl-line);\r\n            border-radius: 10px;\r\n            font-size: 1rem;\r\n            line-height: 1.4;\r\n            font-family: inherit;\r\n            color: var(--khl-ink);\r\n            background: #fafaf7;\r\n            transition: border-color .15s, box-shadow .15s, background .15s;\r\n            -webkit-appearance: none;\r\n            appearance: none;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba select {\r\n            height: auto;\r\n            min-height: 2.85rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba input:focus,\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba select:focus {\r\n            outline: none;\r\n            border-color: var(--khl-accent);\r\n            background: #fff;\r\n            box-shadow: 0 0 0 3px rgba(213,44,27,.12);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba input.khl-invalid {\r\n            border-color: var(--khl-error);\r\n            box-shadow: 0 0 0 3px rgba(140,24,16,.1);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba select {\r\n            background-image: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23D52C1B' stroke-width='2' d='M1 1l5 5 5-5'\/%3E%3C\/svg%3E\");\r\n            background-repeat: no-repeat;\r\n            background-position: right 1rem center;\r\n            padding-right: 2.5rem;\r\n        }\r\n\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-input-with-unit {\r\n            position: relative;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-unit {\r\n            position: absolute;\r\n            right: 1rem;\r\n            top: 50%;\r\n            transform: translateY(-50%);\r\n            color: var(--khl-muted);\r\n            font-size: .9rem;\r\n            pointer-events: none;\r\n            font-weight: 500;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-input-with-unit input {\r\n            padding-right: 2.5rem;\r\n        }\r\n\r\n        \/* Chips *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-options {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\r\n            gap: .5rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-chip { position: relative; cursor: pointer; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-chip input { position: absolute; opacity: 0; pointer-events: none; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-chip span {\r\n            display: block; text-align: center; padding: .65rem .5rem;\r\n            border: 1px solid var(--khl-line); background: #fafaf7;\r\n            border-radius: 10px; font-size: .88rem; font-weight: 500;\r\n            color: var(--khl-ink-soft); transition: all .15s;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-chip:hover span { border-color: var(--khl-accent); color: var(--khl-accent); }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-chip input:checked + span {\r\n            background: var(--khl-accent); border-color: var(--khl-accent); color: #fff;\r\n            box-shadow: 0 4px 12px -4px rgba(213,44,27,.4);\r\n        }\r\n\r\n        \/* Kattokaltevuus-kortit *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slopes {\r\n            display: grid;\r\n            grid-template-columns: repeat(4, 1fr);\r\n            gap: .6rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope {\r\n            position: relative; cursor: pointer;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope input {\r\n            position: absolute; opacity: 0; pointer-events: none;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope-card {\r\n            display: flex;\r\n            flex-direction: column;\r\n            align-items: center;\r\n            justify-content: flex-end;\r\n            gap: .25rem;\r\n            padding: .85rem .4rem .8rem;\r\n            min-height: 110px;\r\n            border: 1.5px solid var(--khl-line);\r\n            background: #fafaf7;\r\n            border-radius: 12px;\r\n            transition: all .15s;\r\n            color: var(--khl-ink-soft);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope-svg {\r\n            width: 100%;\r\n            max-width: 88px;\r\n            height: 50px;\r\n            flex-shrink: 0;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope-label {\r\n            font-size: .85rem;\r\n            font-weight: 700;\r\n            color: var(--khl-ink);\r\n            margin-top: .15rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope:hover .khl-slope-card {\r\n            border-color: var(--khl-accent);\r\n            color: var(--khl-accent);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope:hover .khl-slope-label {\r\n            color: var(--khl-accent);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope input:checked + .khl-slope-card {\r\n            border-color: var(--khl-accent);\r\n            background: var(--khl-accent-soft);\r\n            color: var(--khl-accent);\r\n            box-shadow: 0 4px 12px -4px rgba(213,44,27,.25);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope input:checked + .khl-slope-card .khl-slope-label {\r\n            color: var(--khl-accent-dark);\r\n        }\r\n\r\n        \/* Tooltip *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip { display: inline-flex; position: relative; margin-left: .35rem; vertical-align: middle; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip-icon {\r\n            display: inline-flex; align-items: center; justify-content: center;\r\n            width: 17px; height: 17px; border-radius: 50%;\r\n            background: var(--khl-accent); color: #fff;\r\n            font-size: .7rem; font-weight: 700; cursor: help;\r\n            transition: transform .15s, background .15s;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:hover .khl-tooltip-icon,\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:focus .khl-tooltip-icon {\r\n            background: var(--khl-accent-dark); transform: scale(1.08);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip-body {\r\n            position: absolute; left: 50%; bottom: calc(100% + 10px);\r\n            transform: translateX(-50%) translateY(4px);\r\n            min-width: 260px; max-width: 300px;\r\n            padding: .85rem 1rem; background: var(--khl-ink); color: #fff;\r\n            font-size: .8rem; font-weight: 400; line-height: 1.45;\r\n            border-radius: 8px; box-shadow: 0 10px 30px -8px rgba(0,0,0,.35);\r\n            opacity: 0; visibility: hidden; pointer-events: none;\r\n            transition: opacity .18s, transform .18s, visibility .18s; z-index: 10;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip-body strong { color: #ffb4ad; font-weight: 700; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip-body::after {\r\n            content: \"\"; position: absolute; top: 100%; left: 50%;\r\n            transform: translateX(-50%); border: 6px solid transparent;\r\n            border-top-color: var(--khl-ink);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:hover .khl-tooltip-body,\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:focus-within .khl-tooltip-body,\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:focus .khl-tooltip-body {\r\n            opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); pointer-events: auto;\r\n        }\r\n\r\n        \/* Contact section *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-contact-section {\r\n            background: linear-gradient(180deg, var(--khl-accent-soft) 0%, #fafaf7 100%);\r\n            border-top: 1px solid var(--khl-line);\r\n            padding: 1.75rem 2rem;\r\n            animation: khl-slide-down .35s ease-out;\r\n        }\r\n        @keyframes khl-slide-down {\r\n            from { opacity: 0; transform: translateY(-8px); }\r\n            to { opacity: 1; transform: translateY(0); }\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-contact-header {\r\n            display: flex; gap: .85rem; align-items: flex-start;\r\n            margin-bottom: 1.25rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-lock-icon {\r\n            flex-shrink: 0;\r\n            display: inline-flex; align-items: center; justify-content: center;\r\n            width: 36px; height: 36px;\r\n            background: var(--khl-accent); color: #fff;\r\n            border-radius: 9px;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-contact-title {\r\n            margin: 0 0 .15rem; font-size: 1.05rem; font-weight: 700;\r\n            color: var(--khl-accent-dark);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-contact-sub {\r\n            margin: 0; font-size: .85rem; color: var(--khl-ink-soft); line-height: 1.45;\r\n        }\r\n\r\n        \/* Submit button *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-submit {\r\n            width: 100%;\r\n            display: inline-flex; align-items: center; justify-content: center; gap: .5rem;\r\n            background: var(--khl-accent); color: #fff !important;\r\n            border: none; padding: 1rem 1.4rem; border-radius: 10px;\r\n            font-weight: 700; font-size: 1rem; font-family: inherit;\r\n            cursor: pointer; margin-top: .5rem;\r\n            transition: all .15s;\r\n            box-shadow: 0 4px 12px -4px rgba(213,44,27,.5);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-submit:hover:not(:disabled) {\r\n            background: var(--khl-accent-dark);\r\n            transform: translateY(-1px);\r\n            box-shadow: 0 6px 18px -4px rgba(213,44,27,.55);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-submit:disabled { opacity: .65; cursor: not-allowed; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-submit-spinner {\r\n            display: none; width: 16px; height: 16px;\r\n            border: 2px solid rgba(255,255,255,.4);\r\n            border-top-color: #fff; border-radius: 50%;\r\n            animation: khl-spin .7s linear infinite;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-submit.is-loading .khl-submit-spinner { display: inline-block; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-submit.is-loading .khl-submit-label { opacity: .8; }\r\n        @keyframes khl-spin { to { transform: rotate(360deg); } }\r\n\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-privacy {\r\n            margin: .85rem 0 0; font-size: .75rem; color: var(--khl-muted); line-height: 1.5; text-align: center;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-privacy a { color: var(--khl-accent); text-decoration: underline; }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-error {\r\n            margin-top: .75rem; padding: .65rem .85rem;\r\n            background: #fde7e5; color: var(--khl-error);\r\n            border: 1px solid #f5c2bd; border-radius: 8px;\r\n            font-size: .85rem; display: none;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-error.is-visible { display: block; }\r\n\r\n        \/* Live hinta-arvio *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-price-block {\r\n            background: linear-gradient(180deg, #fafaf7 0%, #f3f1ea 100%);\r\n            border-top: 1px solid var(--khl-line);\r\n            padding: 1.5rem 2rem 1.75rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-row {\r\n            display: flex; justify-content: space-between; align-items: baseline; gap: 1rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-main {\r\n            padding-bottom: .65rem; margin-bottom: .65rem;\r\n            border-bottom: 1px dashed var(--khl-line);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-main .khl-result-label {\r\n            font-size: .95rem; font-weight: 600; color: var(--khl-ink-soft);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-value {\r\n            font-size: 2rem; font-weight: 700; color: var(--khl-accent-dark);\r\n            font-variant-numeric: tabular-nums; letter-spacing: -.02em;\r\n            transition: color .2s;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-value.khl-flash {\r\n            animation: khl-flash .35s ease-out;\r\n        }\r\n        @keyframes khl-flash {\r\n            0% { transform: scale(1); }\r\n            50% { transform: scale(1.04); color: var(--khl-accent); }\r\n            100% { transform: scale(1); }\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-sub .khl-result-label {\r\n            display: flex; align-items: center; gap: .5rem; flex-wrap: wrap;\r\n            font-size: .88rem; color: var(--khl-ink-soft); font-weight: 500;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-value-sub {\r\n            font-size: 1.25rem; font-weight: 700; color: var(--khl-accent);\r\n            font-variant-numeric: tabular-nums;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-badge {\r\n            display: inline-block; padding: .15rem .5rem;\r\n            background: var(--khl-accent-soft); color: var(--khl-accent-dark);\r\n            font-size: .68rem; letter-spacing: .04em; font-weight: 700;\r\n            border-radius: 999px; text-transform: uppercase;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-disclaimer {\r\n            margin: 1rem 0 1.25rem; font-size: .78rem; color: var(--khl-muted); line-height: 1.5;\r\n        }\r\n\r\n        \/* Primary CTA *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-cta-btn {\r\n            width: 100%;\r\n            display: inline-flex; align-items: center; justify-content: center; gap: .4rem;\r\n            background: var(--khl-accent); color: #fff;\r\n            border: none; padding: 1rem 1.4rem; border-radius: 10px;\r\n            font-weight: 700; font-size: 1rem; font-family: inherit;\r\n            cursor: pointer;\r\n            transition: all .15s;\r\n            box-shadow: 0 4px 12px -4px rgba(213,44,27,.5);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-cta-btn:hover {\r\n            background: var(--khl-accent-dark); transform: translateY(-1px);\r\n            box-shadow: 0 6px 18px -4px rgba(213,44,27,.55);\r\n        }\r\n\r\n        \/* Success block *\/\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-success-block {\r\n            text-align: center;\r\n            background: linear-gradient(180deg, var(--khl-accent-soft) 0%, #fafaf7 100%);\r\n            border-top: 1px solid var(--khl-line);\r\n            padding: 2rem 2rem 2rem;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-success-icon {\r\n            color: var(--khl-accent); margin-bottom: .75rem;\r\n            display: inline-block;\r\n            animation: khl-pop .4s cubic-bezier(.34,1.56,.64,1) both;\r\n        }\r\n        @keyframes khl-pop { from { transform: scale(.6); opacity: 0; } to { transform: scale(1); opacity: 1; } }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-success-title {\r\n            margin: 0 0 .4rem; font-size: 1.3rem; font-weight: 700; color: var(--khl-accent-dark);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-success-sub {\r\n            margin: 0 0 1.25rem; font-size: .92rem; color: var(--khl-ink-soft); line-height: 1.5;\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-cta {\r\n            display: inline-flex; align-items: center; gap: .4rem;\r\n            background: var(--khl-accent); color: #fff !important;\r\n            text-decoration: none; padding: .85rem 1.4rem;\r\n            border-radius: 10px; font-weight: 600; font-size: .95rem;\r\n            transition: all .15s; box-shadow: 0 4px 12px -4px rgba(213,44,27,.5);\r\n        }\r\n        #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-cta:hover {\r\n            background: var(--khl-accent-dark); transform: translateY(-1px);\r\n            box-shadow: 0 6px 18px -4px rgba(213,44,27,.55);\r\n        }\r\n\r\n        @media (max-width: 600px) {\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-header,\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-form,\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-price-block,\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-success-block {\r\n                padding-left: 1.25rem; padding-right: 1.25rem;\r\n            }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-contact-section { padding: 1.25rem; }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-title { font-size: 1.4rem; }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-value { font-size: 1.65rem; }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-field-grid { grid-template-columns: 1fr; }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-result-row { flex-direction: column; align-items: flex-start; gap: .25rem; }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip-body { min-width: 220px; max-width: 240px; left: auto; right: -10px; transform: translateY(4px); }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:hover .khl-tooltip-body,\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:focus-within .khl-tooltip-body,\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip:focus .khl-tooltip-body { transform: translateY(0); }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-tooltip-body::after { left: auto; right: 14px; transform: none; }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slopes { grid-template-columns: repeat(2, 1fr); }\r\n            #khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba .khl-slope-card { min-height: 100px; }\r\n        }\r\n    <\/style>\r\n\r\n    <script>\r\n    (function () {\r\n        var root = document.getElementById('khl-025ce6d4-b8c1-4ddf-8c2c-f66c706d7fba');\r\n        if (!root) return;\r\n\r\n        var ajaxUrl = root.dataset.ajaxUrl;\r\n        var nonce   = root.dataset.nonce;\r\n        var CFG     = {\"perushinta\":300,\"rikkinaisen_tiilen_hinta\":20,\"aurinkopaneeli_hinta\":15,\"kerroslisa_per_kerros\":50,\"pihalisa_pieni\":0,\"pihalisa_keskiverto\":80,\"pihalisa_suuri\":160,\"neliohinta_alle_100\":7,\"neliohinta_100_149\":6,\"neliohinta_150_199\":5,\"neliohinta_200_299\":4.5,\"neliohinta_yli_300\":4,\"kotitalousvahennys_pct\":35,\"tyon_osuus_pct\":80};\r\n\r\n        function getVal(name) {\r\n            var el = root.querySelector('[data-khl=\"' + name + '\"]');\r\n            if (!el) return '';\r\n            if (el.tagName === 'SELECT') return el.value;\r\n            return el.value;\r\n        }\r\n        function getRadio(name) {\r\n            var els = root.querySelectorAll('[data-khl=\"' + name + '\"]');\r\n            for (var i = 0; i < els.length; i++) if (els[i].checked) return els[i].value;\r\n            return '1.0';\r\n        }\r\n        function setError(msg) {\r\n            var el = root.querySelector('[data-khl-error]');\r\n            if (!el) return;\r\n            if (msg) { el.textContent = msg; el.classList.add('is-visible'); }\r\n            else { el.textContent = ''; el.classList.remove('is-visible'); }\r\n        }\r\n        function neliohinta(m2) {\r\n            if (m2 < 100)  return CFG.neliohinta_alle_100;\r\n            if (m2 < 150)  return CFG.neliohinta_100_149;\r\n            if (m2 < 200)  return CFG.neliohinta_150_199;\r\n            if (m2 < 300)  return CFG.neliohinta_200_299;\r\n            return CFG.neliohinta_yli_300;\r\n        }\r\n        function pihaPrice(key) {\r\n            if (key === 'keski') return CFG.pihalisa_keskiverto;\r\n            if (key === 'suuri') return CFG.pihalisa_suuri;\r\n            return CFG.pihalisa_pieni;\r\n        }\r\n        function fmt(n) {\r\n            return Math.round(n).toLocaleString('fi-FI') + ' \u20ac';\r\n        }\r\n\r\n        var totalEl    = root.querySelector('[data-khl-out=\"total\"]');\r\n        var afterTaxEl = root.querySelector('[data-khl-out=\"afterTax\"]');\r\n        var flashTimer;\r\n\r\n        function calc() {\r\n            var m2        = parseFloat(getVal('nelia')) || 0;\r\n            var kaltevuus = parseFloat(getRadio('kaltevuus')) || 1.0;\r\n            var varjo     = parseFloat(getVal('varjo')) || 0;\r\n            var aurinko   = parseFloat(getVal('aurinko')) || 0;\r\n            var tiilet    = parseFloat(getVal('tiilet')) || 0;\r\n            var paneelit  = parseFloat(getVal('paneelit')) || 0;\r\n            var kerrokset = parseInt(getVal('kerrokset'), 10) || 1;\r\n            var piha      = getVal('piha');\r\n\r\n            var kk    = (varjo + aurinko) \/ 2;\r\n            var nh    = neliohinta(m2);\r\n            var total = CFG.perushinta\r\n                      + m2 * nh * kaltevuus * kk\r\n                      + tiilet * CFG.rikkinaisen_tiilen_hinta\r\n                      + paneelit * CFG.aurinkopaneeli_hinta\r\n                      + Math.max(0, kerrokset - 1) * CFG.kerroslisa_per_kerros\r\n                      + pihaPrice(piha);\r\n            if (!isFinite(total) || total < 0) total = 0;\r\n\r\n            var afterTax = total - (total * (CFG.tyon_osuus_pct \/ 100)) * (CFG.kotitalousvahennys_pct \/ 100);\r\n\r\n            totalEl.textContent    = fmt(total);\r\n            afterTaxEl.textContent = fmt(afterTax);\r\n\r\n            \/\/ Flash-animaatio\r\n            totalEl.classList.remove('khl-flash');\r\n            void totalEl.offsetWidth; \/\/ pakota reflow\r\n            totalEl.classList.add('khl-flash');\r\n            clearTimeout(flashTimer);\r\n            flashTimer = setTimeout(function () { totalEl.classList.remove('khl-flash'); }, 400);\r\n        }\r\n\r\n        \/\/ Live-laskenta\r\n        root.addEventListener('input',  calc);\r\n        root.addEventListener('change', calc);\r\n        calc();\r\n\r\n        \/\/ CTA: avaa yhteystiedot\r\n        var openBtn     = root.querySelector('[data-khl-open-contact]');\r\n        var contactBlk  = root.querySelector('[data-khl-contact]');\r\n        var priceBlk    = root.querySelector('[data-khl-price-block]');\r\n        var successBlk  = root.querySelector('[data-khl-success]');\r\n        var formBlk     = root.querySelector('.khl-form');\r\n\r\n        openBtn.addEventListener('click', function () {\r\n            contactBlk.hidden = false;\r\n            contactBlk.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n            var emailEl = root.querySelector('[data-khl=\"email\"]');\r\n            setTimeout(function () { if (emailEl) emailEl.focus({ preventScroll: true }); }, 350);\r\n            openBtn.disabled = true;\r\n            openBtn.style.opacity = '.6';\r\n            openBtn.style.cursor = 'default';\r\n        });\r\n\r\n        \/\/ Submit\r\n        var btn = root.querySelector('[data-khl-submit]');\r\n        btn.addEventListener('click', function () {\r\n            setError('');\r\n\r\n            \/\/ Nollaa virhetilat\r\n            root.querySelectorAll('.khl-invalid').forEach(function (el) { el.classList.remove('khl-invalid'); });\r\n\r\n            var requiredFields = [\r\n                { name: 'nimi',     label: 'nimi' },\r\n                { name: 'email',    label: 's\u00e4hk\u00f6posti' },\r\n                { name: 'puhelin',  label: 'puhelin' },\r\n                { name: 'postinro', label: 'postinumero' }\r\n            ];\r\n\r\n            var firstInvalid = null;\r\n            var missing = [];\r\n\r\n            requiredFields.forEach(function (f) {\r\n                var el = root.querySelector('[data-khl=\"' + f.name + '\"]');\r\n                if (!el) return;\r\n                if (!el.value || !el.value.trim()) {\r\n                    el.classList.add('khl-invalid');\r\n                    missing.push(f.label);\r\n                    if (!firstInvalid) firstInvalid = el;\r\n                }\r\n            });\r\n\r\n            if (missing.length) {\r\n                setError('T\u00e4yt\u00e4 pakolliset kent\u00e4t: ' + missing.join(', ') + '.');\r\n                if (firstInvalid) firstInvalid.focus();\r\n                return;\r\n            }\r\n\r\n            \/\/ S\u00e4hk\u00f6postin muoto\r\n            var emailEl = root.querySelector('[data-khl=\"email\"]');\r\n            var email   = emailEl.value.trim();\r\n            if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email)) {\r\n                emailEl.classList.add('khl-invalid');\r\n                setError('Sy\u00f6t\u00e4 kelvollinen s\u00e4hk\u00f6postiosoite.');\r\n                emailEl.focus();\r\n                return;\r\n            }\r\n\r\n            \/\/ Kattoneli\u00f6t (ei yhteystieto mutta silti pakollinen laskennalle)\r\n            var neliaEl = root.querySelector('[data-khl=\"nelia\"]');\r\n            var nelia   = parseFloat(neliaEl.value);\r\n            if (!isFinite(nelia) || nelia <= 0) {\r\n                neliaEl.classList.add('khl-invalid');\r\n                setError('Tarkista katon pinta-ala.');\r\n                return;\r\n            }\r\n\r\n            var data = new FormData();\r\n            data.append('action',    'kourulle_hl_submit');\r\n            data.append('nonce',     nonce);\r\n            data.append('email',     email);\r\n            data.append('nimi',      getVal('nimi'));\r\n            data.append('puhelin',   getVal('puhelin'));\r\n            data.append('postinro',  getVal('postinro'));\r\n            data.append('nelia',     getVal('nelia'));\r\n            data.append('kaltevuus', getRadio('kaltevuus'));\r\n            data.append('varjo',     getVal('varjo'));\r\n            data.append('aurinko',   getVal('aurinko'));\r\n            data.append('tiilet',    getVal('tiilet'));\r\n            data.append('paneelit',  getVal('paneelit'));\r\n            data.append('kerrokset', getVal('kerrokset'));\r\n            data.append('piha',      getVal('piha'));\r\n            data.append('variant',   'A_price_visible');\r\n            data.append('page_url',  window.location.href);\r\n\r\n            btn.disabled = true;\r\n            btn.classList.add('is-loading');\r\n\r\n            fetch(ajaxUrl, { method: 'POST', body: data, credentials: 'same-origin' })\r\n                .then(function (r) { return r.json(); })\r\n                .then(function (res) {\r\n                    if (res && res.success) {\r\n                        \/\/ GTM \/ GA4 event\r\n                        window.dataLayer = window.dataLayer || [];\r\n                        window.dataLayer.push({\r\n                            event: 'kourulle_quote_request',\r\n                            variant: 'A_price_visible',\r\n                            value: res.data.total,\r\n                            currency: 'EUR',\r\n                            price_after_tax: res.data.after_tax,\r\n                            page_url: window.location.href\r\n                        });\r\n\r\n                        formBlk.style.display    = 'none';\r\n                        priceBlk.style.display   = 'none';\r\n                        contactBlk.style.display = 'none';\r\n                        successBlk.hidden = false;\r\n                        successBlk.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n                    } else {\r\n                        var msg = (res && res.data && res.data.message) || 'L\u00e4hetys ep\u00e4onnistui. Yrit\u00e4 uudelleen.';\r\n                        setError(msg);\r\n                    }\r\n                })\r\n                .catch(function () {\r\n                    setError('Verkkovirhe. Tarkista yhteys ja yrit\u00e4 uudelleen.');\r\n                })\r\n                .finally(function () {\r\n                    btn.disabled = false;\r\n                    btn.classList.remove('is-loading');\r\n                });\r\n        });\r\n    })();\r\n    <\/script>\r\n    \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8ea5353 e-con-full e-flex e-con e-child\" data-id=\"8ea5353\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-05d3b97 e-con-full e-flex e-con e-child\" data-id=\"05d3b97\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;sticky&quot;:&quot;top&quot;,&quot;sticky_offset&quot;:116,&quot;sticky_parent&quot;:&quot;yes&quot;,&quot;sticky_on&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;],&quot;sticky_effects_offset&quot;:0,&quot;sticky_anchor_link_offset&quot;:0}\">\n\t\t<div class=\"elementor-element elementor-element-4846185 e-flex e-con-boxed e-con e-child\" data-id=\"4846185\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-584c25d elementor-widget elementor-widget-image\" data-id=\"584c25d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"800\" src=\"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp\" class=\"attachment-large size-large wp-image-580\" alt=\"\" srcset=\"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp 800w, https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png-300x300.webp 300w, https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png-100x100.webp 100w, https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png-600x600.webp 600w, https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png-150x150.webp 150w, https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png-768x768.webp 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9ccb9b0 elementor-widget elementor-widget-heading\" data-id=\"9ccb9b0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Jopa 6kk koronta maksuaikaa<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ca39c90 elementor-widget elementor-widget-text-editor\" data-id=\"ca39c90\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Hae luottop\u00e4\u00e4t\u00f6s tiilikaton huoltoon, k\u00e4tev\u00e4sti OP rahoituksen kautta.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d72d21 elementor-align-left elementor-mobile-align-center elementor-widget elementor-widget-button\" data-id=\"9d72d21\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm elementor-animation-shrink\" href=\"https:\/\/eficode.pohjola-finance.fi\/kertaluotto-uusi\/kourullecom\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Hae luottop\u00e4\u00e4t\u00f6s<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8cad2c1 e-con-full e-flex e-con e-child\" data-id=\"8cad2c1\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a5441a5 elementor-widget elementor-widget-heading\" data-id=\"a5441a5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Kotitalousv\u00e4hennys<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-30c64e3 elementor-widget elementor-widget-text-editor\" data-id=\"30c64e3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Tiilikaton huolto oikeuttaa kotitalousv\u00e4hennykseen. V\u00e4hennys on 35% ty\u00f6n osuudesta.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8f3bb7f e-con-full e-flex e-con e-child\" data-id=\"8f3bb7f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Tiilikaton huoltolaskuri Jopa 6kk koronta maksuaikaa Hae luottop\u00e4\u00e4t\u00f6s tiilikaton huoltoon, k\u00e4tev\u00e4sti OP rahoituksen kautta. Hae luottop\u00e4\u00e4t\u00f6s Kotitalousv\u00e4hennys Tiilikaton huolto oikeuttaa [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-2887","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Tiilikaton huoltolaskuri | Kourulle.com<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.kourulle.com\/en\/tiilikaton-huoltolaskuri\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tiilikaton huoltolaskuri | Kourulle.com\" \/>\n<meta property=\"og:description\" content=\"Tiilikaton huoltolaskuri Jopa 6kk koronta maksuaikaa Hae luottop\u00e4\u00e4t\u00f6s tiilikaton huoltoon, k\u00e4tev\u00e4sti OP rahoituksen kautta. Hae luottop\u00e4\u00e4t\u00f6s Kotitalousv\u00e4hennys Tiilikaton huolto oikeuttaa [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.kourulle.com\/en\/tiilikaton-huoltolaskuri\/\" \/>\n<meta property=\"og:site_name\" content=\"Kourulle\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-09T08:02:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/\",\"url\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/\",\"name\":\"Tiilikaton huoltolaskuri | Kourulle.com\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.kourulle.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/OP_Financial_Group.svg_.png.webp\",\"datePublished\":\"2026-06-09T08:02:29+00:00\",\"dateModified\":\"2026-06-09T08:02:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.kourulle.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/OP_Financial_Group.svg_.png.webp\",\"contentUrl\":\"https:\\\/\\\/www.kourulle.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/OP_Financial_Group.svg_.png.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/tiilikaton-huoltolaskuri\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Etusivu\",\"item\":\"https:\\\/\\\/www.kourulle.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Laskuri\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.kourulle.com\\\/#website\",\"url\":\"https:\\\/\\\/www.kourulle.com\\\/\",\"name\":\"Kourulle\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.kourulle.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tiilikaton huoltolaskuri | Kourulle.com","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.kourulle.com\/en\/tiilikaton-huoltolaskuri\/","og_locale":"en_US","og_type":"article","og_title":"Tiilikaton huoltolaskuri | Kourulle.com","og_description":"Tiilikaton huoltolaskuri Jopa 6kk koronta maksuaikaa Hae luottop\u00e4\u00e4t\u00f6s tiilikaton huoltoon, k\u00e4tev\u00e4sti OP rahoituksen kautta. Hae luottop\u00e4\u00e4t\u00f6s Kotitalousv\u00e4hennys Tiilikaton huolto oikeuttaa [&hellip;]","og_url":"https:\/\/www.kourulle.com\/en\/tiilikaton-huoltolaskuri\/","og_site_name":"Kourulle","article_modified_time":"2026-06-09T08:02:45+00:00","og_image":[{"width":800,"height":800,"url":"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp","type":"image\/webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/","url":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/","name":"Tiilikaton huoltolaskuri | Kourulle.com","isPartOf":{"@id":"https:\/\/www.kourulle.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/#primaryimage"},"image":{"@id":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/#primaryimage"},"thumbnailUrl":"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp","datePublished":"2026-06-09T08:02:29+00:00","dateModified":"2026-06-09T08:02:45+00:00","breadcrumb":{"@id":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/#primaryimage","url":"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp","contentUrl":"https:\/\/www.kourulle.com\/wp-content\/uploads\/2026\/02\/OP_Financial_Group.svg_.png.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/www.kourulle.com\/tiilikaton-huoltolaskuri\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Etusivu","item":"https:\/\/www.kourulle.com\/"},{"@type":"ListItem","position":2,"name":"Laskuri"}]},{"@type":"WebSite","@id":"https:\/\/www.kourulle.com\/#website","url":"https:\/\/www.kourulle.com\/","name":"To the bench","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.kourulle.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/pages\/2887","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/comments?post=2887"}],"version-history":[{"count":4,"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/pages\/2887\/revisions"}],"predecessor-version":[{"id":2891,"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/pages\/2887\/revisions\/2891"}],"wp:attachment":[{"href":"http:\/\/www.kourulle.com\/en\/wp-json\/wp\/v2\/media?parent=2887"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}