{"id":26337,"date":"2026-10-16T14:24:45","date_gmt":"2026-10-16T11:24:45","guid":{"rendered":"https:\/\/y4works.fi\/?page_id=26337"},"modified":"2026-10-29T12:55:08","modified_gmt":"2026-10-29T09:55:08","slug":"tekoalykartoitus","status":"publish","type":"page","link":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/","title":{"rendered":"Teko\u00e4lykartoitus"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"26337\" class=\"elementor elementor-26337\" data-elementor-post-type=\"page\">\n\t\t\t\t<section class=\"elementor-element elementor-element-272067ba e-con e-atomic-element e-flexbox-base e-default-section y4-osio-vaalea e-31da6584-e153 \" data-id=\"272067ba\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"272067ba\" data-e-type=\"e-flexbox\" data-id=\"272067ba\">\n    <div class=\"elementor-element elementor-element-68bb6aa9 e-con e-atomic-element e-flexbox-base e-default-div y4-sisaltoalue e-510ca8c2-df9a \" data-id=\"68bb6aa9\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"68bb6aa9\" data-e-type=\"e-flexbox\" data-id=\"68bb6aa9\">\n    \t\t\t<p class=\"y4-tunniste e-paragraph-base e-default-p\" data-interaction-id=\"3560368c\" data-e-type=\"widget\" data-id=\"3560368c\">Teko\u00e4lykartoitus<\/p>\n\t\t\t\t\t<h1 data-interaction-id=\"7473e2be\" class=\"y4-h1 e-3a14cf9a-5615 e-heading-base e-default-h1\" data-e-type=\"widget\" data-id=\"7473e2be\">Teko\u00e4lykartoitus: miss\u00e4 yrityksesi menee teko\u00e4lyn kanssa?<\/h1>\n\t\t\t\t\t<p class=\"y4-ingressi e-740f94f4-75f0 e-paragraph-base e-default-p\" data-interaction-id=\"20f8b40a\" data-e-type=\"widget\" data-id=\"20f8b40a\">Vastaa kymmeneen kysymykseen ja saat teko\u00e4lyvalmiusindeksin, osa-aluekohtaisen tuloksen ja ehdotuksen seuraavista askeleista. Testi ei vaadi yhteystietoja, vaan saat tulokset heti. Kokeile ja selvit\u00e4 tasosi.<\/p>\n\t\t\n<\/div>\n\n<\/section>\n<div class=\"elementor-element elementor-element-c8677a7 e-flex e-con-boxed e-con e-parent\" data-id=\"c8677a7\" 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-25a5be9 elementor-widget elementor-widget-html\" data-id=\"25a5be9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- Y4 Teko\u00e4lyvalmiuskartoitus: upotus Elementorin HTML-widgettiin -->\n<div id=\"y4-kartoitus\">\n<iframe id=\"y4-kartoitus-frame\" title=\"Teko\u00e4lyvalmiuskartoitus\" style=\"display:block;width:100%;height:640px;border:0;\" srcdoc=\"&lt;!DOCTYPE html&gt;\n&lt;html lang=&quot;fi&quot;&gt;\n&lt;head&gt;\n&lt;meta charset=&quot;UTF-8&quot;&gt;\n&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&gt;\n&lt;title&gt;Teko\u00e4lyvalmiuskartoitus \u00b7 Y4 Works&lt;\/title&gt;\n&lt;meta name=&quot;description&quot; content=&quot;Kymmenen kysymyst\u00e4, kolme minuuttia. Selvit\u00e4, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.&quot;&gt;\n&lt;link rel=&quot;preconnect&quot; href=&quot;https:\/\/fonts.googleapis.com&quot;&gt;\n&lt;link rel=&quot;preconnect&quot; href=&quot;https:\/\/fonts.gstatic.com&quot; crossorigin&gt;\n&lt;link href=&quot;https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700;800;900&amp;display=swap&quot; rel=&quot;stylesheet&quot;&gt;\n&lt;style&gt;\n  \/* ---------- Y4 Works -br\u00e4ndimuuttujat ---------- *\/\n  :root {\n    --tumma: #24272F;\n    --kerma: #E6E3D9;\n    --valkoinen: #FFFFFF;\n    --viher: #95AFA0;          \/* ainoa lis\u00e4v\u00e4ri t\u00e4ss\u00e4 materiaalissa *\/\n    --viher-tumma: #6F8C7C;\n    --tumma-60: rgba(36, 39, 47, 0.6);\n    --tumma-40: rgba(36, 39, 47, 0.4);\n    --tumma-15: rgba(36, 39, 47, 0.15);\n    --tumma-08: rgba(36, 39, 47, 0.08);\n    --font: &#x27;Inter&#x27;, Arial, Helvetica, sans-serif;\n    --radius: 4px;\n    --max: 760px;\n  }\n\n  * { box-sizing: border-box; }\n  html { -webkit-text-size-adjust: 100%; }\n  body {\n    margin: 0;\n    font-family: var(--font);\n    background: var(--kerma);\n    color: var(--tumma);\n    line-height: 1.5;\n    -webkit-font-smoothing: antialiased;\n  }\n  button { font-family: inherit; cursor: pointer; }\n  a { color: inherit; }\n\n  .y4-app { max-width: var(--max); margin: 0 auto; padding: 24px 20px 40px; }\n  @media (min-width: 640px) { .y4-app { padding: 40px 32px 56px; } }\n\n  \/* ---------- Typografia ---------- *\/\n  .label {\n    font-weight: 700; font-size: 11px; text-transform: uppercase;\n    letter-spacing: 0.1em; color: var(--tumma-60); margin: 0;\n  }\n  .label--dark { color: var(--viher); }\n  h1, h2, h3 { margin: 0; font-weight: 900; text-transform: uppercase; letter-spacing: -0.02em; line-height: 1.05; }\n  h1 { font-size: clamp(30px, 6vw, 46px); }\n  h2 { font-size: clamp(24px, 4.5vw, 32px); }\n  h3 { font-size: clamp(18px, 3.5vw, 22px); }\n  .ingressi { font-weight: 300; font-size: clamp(17px, 2.6vw, 20px); line-height: 1.45; margin: 0; }\n  p { margin: 0; }\n  .body { font-size: 15px; line-height: 1.6; }\n  .body + .body { margin-top: 12px; }\n\n  \/* ---------- Header ---------- *\/\n  .y4-header {\n    display: flex; align-items: center; justify-content: space-between;\n    padding-bottom: 20px; margin-bottom: 28px;\n    border-bottom: 1px solid var(--tumma-15);\n  }\n  .y4-logo { display: block; height: 26px; width: auto; }\n  .y4-logo svg { height: 100%; width: auto; display: block; }\n  .y4-header .label { text-align: right; }\n\n  \/* ---------- Kortit ---------- *\/\n  .card {\n    background: var(--valkoinen);\n    border-radius: var(--radius);\n    padding: 28px 24px;\n    position: relative; overflow: hidden;\n  }\n  @media (min-width: 640px) { .card { padding: 44px 48px; } }\n  .card--dark { background: var(--tumma); color: var(--kerma); }\n\n  \/* Y4-kulma: 24.3\u00b0, parallelogrammi koristeena *\/\n  .card::after {\n    content: &quot;&quot;; position: absolute; right: -36px; top: -30px;\n    width: 96px; height: 150px;\n    background: var(--kerma); opacity: 0.6;\n    transform: skewX(-24.3deg);\n    pointer-events: none;\n  }\n  .card--dark::after { background: var(--valkoinen); opacity: 0.05; }\n  .card &gt; * { position: relative; z-index: 1; }\n\n  .stack &gt; * + * { margin-top: 20px; }\n  .stack--tight &gt; * + * { margin-top: 12px; }\n\n  \/* ---------- Painikkeet ---------- *\/\n  .btn {\n    display: inline-flex; align-items: center; gap: 12px;\n    background: var(--tumma); color: var(--valkoinen);\n    border: 2px solid var(--tumma); border-radius: var(--radius);\n    padding: 14px 22px; font-weight: 700; font-size: 14px;\n    text-transform: uppercase; letter-spacing: 0.06em;\n    text-decoration: none; transition: background .15s, color .15s, transform .1s;\n  }\n  .btn:hover { background: var(--viher-tumma); border-color: var(--viher-tumma); }\n  .btn:active { transform: translateY(1px); }\n  .btn svg { width: 16px; height: 16px; }\n  .btn--light { background: var(--kerma); color: var(--tumma); border-color: var(--kerma); }\n  .btn--light:hover { background: var(--valkoinen); border-color: var(--valkoinen); }\n  .btn--ghost {\n    background: transparent; color: var(--tumma-60); border-color: transparent; padding: 10px 0;\n  }\n  .btn--ghost:hover { background: transparent; color: var(--tumma); border-color: transparent; }\n\n  .meta { display: flex; gap: 24px; flex-wrap: wrap; }\n  .meta .label { color: var(--tumma-40); }\n\n  \/* ---------- Eteneminen ---------- *\/\n  .progress { margin-bottom: 20px; }\n  .progress__top { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 8px; }\n  .progress__bar { height: 3px; background: var(--tumma-15); position: relative; overflow: hidden; }\n  .progress__fill { position: absolute; left: 0; top: 0; bottom: 0; background: var(--tumma); transition: width .5s cubic-bezier(.2,.8,.2,1); }\n\n  \/* ---------- Vastausvaihtoehdot ---------- *\/\n  .choices { display: grid; gap: 8px; margin-top: 28px; }\n  .choice {\n    display: grid; grid-template-columns: 40px 1fr; align-items: center; gap: 16px;\n    width: 100%; text-align: left;\n    background: var(--valkoinen); color: var(--tumma);\n    border: 1.5px solid var(--tumma-15); border-radius: var(--radius);\n    padding: 14px 16px; font-size: 15px; font-weight: 500; line-height: 1.4;\n    transition: border-color .15s, background .15s;\n  }\n  .choice:hover { border-color: var(--tumma); background: var(--kerma); }\n  .choice:focus-visible, .btn:focus-visible { outline: 3px solid var(--viher); outline-offset: 2px; }\n  .choice.is-selected { border-color: var(--tumma); background: var(--tumma); color: var(--valkoinen); }\n  .choice__key {\n    width: 40px; height: 40px; display: grid; place-items: center;\n    background: var(--kerma); color: var(--tumma); font-weight: 800; font-size: 14px;\n    border-radius: var(--radius);\n  }\n  .choice.is-selected .choice__key { background: var(--viher); color: var(--tumma); }\n\n  .nav { display: flex; justify-content: space-between; align-items: center; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--tumma-08); }\n\n  \/* ---------- Tulokset ---------- *\/\n  .result-hero { display: grid; gap: 28px; align-items: center; }\n  @media (min-width: 640px) { .result-hero { grid-template-columns: 180px 1fr; gap: 40px; } }\n  .gauge { width: 160px; height: 160px; position: relative; }\n  .gauge svg { width: 100%; height: 100%; transform: rotate(-90deg); }\n  .gauge circle { fill: none; stroke-width: 10; }\n  .gauge .gauge__track { stroke: rgba(230,227,217,0.15); }\n  .gauge .gauge__fill { stroke: var(--viher); stroke-linecap: butt; stroke-dasharray: 0 1000; transition: stroke-dasharray 1.2s cubic-bezier(.2,.8,.2,1); }\n  .gauge__num {\n    position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;\n    white-space: nowrap;\n    font-weight: 900; font-size: 40px; letter-spacing: -0.04em; color: var(--valkoinen);\n  }\n  .gauge__num small { font-size: 18px; font-weight: 700; letter-spacing: 0; margin-left: 2px; align-self: center; }\n\n  .bars { display: grid; gap: 10px; margin-top: 8px; }\n  .bar { display: grid; grid-template-columns: 120px 1fr 28px; align-items: center; gap: 12px; font-size: 13px; }\n  @media (max-width: 480px) { .bar { grid-template-columns: 96px 1fr 24px; font-size: 12px; } }\n  .bar__name { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }\n  .bar__track { height: 8px; background: var(--tumma-08); position: relative; }\n  .bar__fill { position: absolute; left: 0; top: 0; bottom: 0; background: var(--tumma); transition: width .8s cubic-bezier(.2,.8,.2,1); }\n  .bar__fill.is-low { background: var(--tumma-40); }\n  .bar__fill.is-high { background: var(--viher-tumma); }\n  .bar__val { font-weight: 700; color: var(--tumma-60); text-align: right; font-variant-numeric: tabular-nums; }\n\n  .split { display: grid; gap: 24px; }\n  @media (min-width: 640px) { .split { grid-template-columns: 1fr 1fr; gap: 40px; } }\n  .split ul { margin: 8px 0 0; padding: 0; list-style: none; }\n  .split li { padding: 8px 0; border-top: 1px solid var(--tumma-08); font-size: 15px; }\n  .split li strong { font-weight: 700; }\n\n  .cta-box { border-top: 3px solid var(--viher); padding-top: 24px; }\n\n  \/* ---------- Yhteystietolomake ---------- *\/\n  .lead { border-top: 1px solid var(--tumma-15); padding-top: 24px; }\n  .lead__grid { display: grid; gap: 14px; }\n  @media (min-width: 640px) { .lead__grid { grid-template-columns: 1fr 1fr; } }\n  .field { display: grid; gap: 6px; }\n  .field span { font-size: 13px; font-weight: 600; }\n  .field input {\n    font: inherit; font-size: 15px; color: var(--tumma);\n    background: var(--valkoinen); border: 1.5px solid var(--tumma-15); border-radius: var(--radius);\n    padding: 12px 14px; width: 100%;\n  }\n  .field input:focus { outline: 3px solid var(--viher); outline-offset: 1px; border-color: var(--tumma); }\n  .consent { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; font-size: 13px; line-height: 1.5; color: var(--tumma-60); }\n  .consent input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--tumma); }\n  .consent a { color: var(--tumma); }\n  .hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }\n  .lead__msg { font-size: 14px; font-weight: 600; }\n  .lead__msg.is-error { color: #9B3B2E; }\n\n  .footer { margin-top: 28px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }\n  .footer .label { color: var(--tumma-40); }\n  .footer a { text-decoration: none; }\n\n  \/* ---------- Siirtym\u00e4t ---------- *\/\n  .view { animation: fadeUp .35s ease both; }\n  @keyframes fadeUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }\n  @media (prefers-reduced-motion: reduce) { .view, .progress__fill, .bar__fill, .gauge__fill { animation: none; transition: none; } }\n  .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }\n\n  \/* Upotus y4works.fi-sivulle *\/\n  .y4-header, .footer { display: none; }\n&lt;\/style&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n\n&lt;div class=&quot;y4-app&quot; id=&quot;app&quot;&gt;\n  &lt;header class=&quot;y4-header&quot;&gt;\n    &lt;a class=&quot;y4-logo&quot; href=&quot;https:\/\/y4works.fi&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; aria-label=&quot;Y4 Works&quot;&gt;\n      &lt;svg viewBox=&quot;0 0 1012 609&quot; xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot; aria-hidden=&quot;true&quot;&gt;\n        &lt;path fill=&quot;#24272F&quot; d=&quot;M0,0 L137,304 L304,304 L167,608 L333,608 L608,0 L442,0 L304,304 L167,0 Z M761,0 L556,456 L859,456 L859,608 L1011,608 L1011,304 L790,304 L927,0 Z&quot;\/&gt;\n      &lt;\/svg&gt;\n    &lt;\/a&gt;\n    &lt;p class=&quot;label&quot;&gt;Teko\u00e4lyvalmiuskartoitus&lt;\/p&gt;\n  &lt;\/header&gt;\n\n  &lt;main id=&quot;view&quot; aria-live=&quot;polite&quot;&gt;&lt;\/main&gt;\n\n  &lt;footer class=&quot;footer&quot;&gt;\n    &lt;p class=&quot;label&quot;&gt;\u00a9 Y4 Works&lt;\/p&gt;\n    &lt;p class=&quot;label&quot;&gt;&lt;a href=&quot;https:\/\/y4works.fi&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;y4works.fi&lt;\/a&gt;&lt;\/p&gt;\n  &lt;\/footer&gt;\n&lt;\/div&gt;\n\n&lt;script&gt;\n\/* =====================================================================\n   ASETUKSET \u2014 muokkaa n\u00e4it\u00e4, muuta koodia ei tarvitse koskea\n   ===================================================================== *\/\nconst CONFIG = {\n  \/* Mihin &quot;Varaa keskustelu&quot; -painike johtaa. Vaihda esim. kalenterivarauslinkkiin *\/\n  \/* tai yhteydenottosivuun. Jos j\u00e4t\u00e4t tyhj\u00e4ksi, painiketta ei n\u00e4ytet\u00e4. *\/\n  ctaUrl: &quot;https:\/\/calendar.app.google\/A4cJHSVz1f2bxoqs7&quot;,\n  ctaLabel: &quot;Varaa 30 min keskustelu&quot;,\n  \/* Avataanko CTA-linkki uuteen v\u00e4lilehteen (iframe-upotuksessa yleens\u00e4 kyll\u00e4) *\/\n  ctaNewTab: true,\n\n  \/* Minne vastaukset tallennetaan: Google Apps Script -verkkosovelluksen osoite *\/\n  \/* (muotoa https:\/\/script.google.com\/macros\/s\/...\/exec). Ohje: upotusohje, kohta 4. *\/\n  \/* Jos j\u00e4t\u00e4t tyhj\u00e4ksi, mit\u00e4\u00e4n ei tallenneta eik\u00e4 yhteystietolomaketta n\u00e4ytet\u00e4. *\/\n  saveUrl: &quot;https:\/\/script.google.com\/macros\/s\/AKfycbw0BCMN0R0OweTEFjmdgjnhJSfJJuUwhaEI-xAfmFnrU32T1jMbO4rr2q_eb8i5PpPTyQ\/exec&quot;,\n  \/* Tietosuojaselosteen osoite, johon yhteystietolomake linkitt\u00e4\u00e4 *\/\n  privacyUrl: &quot;https:\/\/y4works.fi\/fi\/tietosuoja\/&quot;,\n};\n\n\/* ---------- Kysymykset ---------- *\/\nconst QUESTIONS = [\n  { id: 1, category: &quot;Strategia&quot;, question: &quot;Onko organisaatiollanne teko\u00e4lystrategia, siis suunnitelma siit\u00e4 mihin teko\u00e4ly\u00e4 k\u00e4ytet\u00e4\u00e4n ja miksi?&quot;,\n    choices: [&quot;Ei ole&quot;, &quot;Asiasta on keskusteltu&quot;, &quot;Kirjattu suunnitelma on&quot;, &quot;Se on osa liiketoimintastrategiaa&quot;] },\n  { id: 2, category: &quot;Pelis\u00e4\u00e4nn\u00f6t&quot;, question: &quot;Onko teill\u00e4 ohjeistus teko\u00e4lyn k\u00e4yt\u00f6st\u00e4 (AI policy)?&quot;,\n    choices: [&quot;Ei ole&quot;, &quot;Valmisteilla&quot;, &quot;Perusohjeet on&quot;, &quot;Kattava ohjeistus, my\u00f6s tietoturva ja etiikka&quot;] },\n  { id: 3, category: &quot;Osaaminen&quot;, question: &quot;Kuinka suuri osa henkil\u00f6st\u00f6st\u00e4 on saanut teko\u00e4lykoulutusta?&quot;,\n    choices: [&quot;Alle 10 %&quot;, &quot;10\u201330 %&quot;, &quot;30\u201370 %&quot;, &quot;Yli 70 %&quot;] },\n  { id: 4, category: &quot;Ty\u00f6kalut&quot;, question: &quot;Mit\u00e4 teko\u00e4lyty\u00f6kaluja organisaatiossa k\u00e4ytet\u00e4\u00e4n virallisesti?&quot;,\n    choices: [&quot;Ei mit\u00e4\u00e4n&quot;, &quot;Vain ilmaisia kuluttajaversioita&quot;, &quot;Maksullisia yritysversioita (esim. Copilot, ChatGPT Team, Claude)&quot;, &quot;Omia r\u00e4\u00e4t\u00e4l\u00f6ityj\u00e4 ratkaisuja tai integraatioita&quot;] },\n  { id: 5, category: &quot;Data&quot;, question: &quot;Millaisessa kunnossa datanne on teko\u00e4lyn kannalta?&quot;,\n    choices: [&quot;Hajallaan eri paikoissa&quot;, &quot;Osin digitaalista, siiloissa&quot;, &quot;Keskitetty ja j\u00e4sennelty&quot;, &quot;Rakennettu teko\u00e4lyk\u00e4ytt\u00f6\u00e4 varten&quot;] },\n  { id: 6, category: &quot;Kokeilut&quot;, question: &quot;Kuinka aktiivisesti teill\u00e4 kokeillaan uusia teko\u00e4lyratkaisuja?&quot;,\n    choices: [&quot;Ei kokeilla&quot;, &quot;Yksitt\u00e4iset ty\u00f6ntekij\u00e4t omin p\u00e4in&quot;, &quot;Suunnitelmallisesti osastoittain&quot;, &quot;Jatkuvasti ja koko organisaatiossa&quot;] },\n  { id: 7, category: &quot;Budjetti&quot;, question: &quot;Onko teko\u00e4lylle varattu omaa budjettia?&quot;,\n    choices: [&quot;Ei&quot;, &quot;Harkinnassa&quot;, &quot;Pieni kokeilubudjetti&quot;, &quot;Investointisuunnitelma on&quot;] },\n  { id: 8, category: &quot;Prosessit&quot;, question: &quot;Onko teko\u00e4ly osa nykyisi\u00e4 ty\u00f6nkulkuja?&quot;,\n    choices: [&quot;Ei miss\u00e4\u00e4n&quot;, &quot;Muutamassa yksitt\u00e4isess\u00e4 teht\u00e4v\u00e4ss\u00e4&quot;, &quot;Useissa keskeisiss\u00e4 prosesseissa&quot;, &quot;L\u00e4pi koko organisaation arjen&quot;] },\n  { id: 9, category: &quot;Johto&quot;, question: &quot;Miten johto suhtautuu teko\u00e4lyyn?&quot;,\n    choices: [&quot;Ep\u00e4illen tai v\u00e4ltellen&quot;, &quot;Seuraa sivusta&quot;, &quot;Kannustaa kokeiluihin&quot;, &quot;Pit\u00e4\u00e4 sit\u00e4 kilpailuedun ehtona&quot;] },\n  { id: 10, category: &quot;Asiakasarvo&quot;, question: &quot;K\u00e4yt\u00e4ttek\u00f6 teko\u00e4ly\u00e4 jo asiakkaille n\u00e4kyv\u00e4n arvon tuottamiseen?&quot;,\n    choices: [&quot;Emme viel\u00e4&quot;, &quot;Pilotteja suunnitellaan&quot;, &quot;Rajatusti, l\u00e4hinn\u00e4 sis\u00e4isesti&quot;, &quot;Se on osa palvelutarjoomaamme&quot;] },\n];\nconst KEYS = [&quot;A&quot;, &quot;B&quot;, &quot;C&quot;, &quot;D&quot;];\nconst MAX_POINTS = QUESTIONS.length * 3;\n\n\/* ---------- Tulostekstit ---------- *\/\nconst LEVELS = [\n  { max: 14, name: &quot;Alkuvaihe&quot;,\n    summary: &quot;Teko\u00e4ly ei viel\u00e4 ole organisaationne johtamisen asia. Yksitt\u00e4isi\u00e4 kokeiluja voi olla, mutta niit\u00e4 ei ohjaa yhteinen suunta eik\u00e4 pelis\u00e4\u00e4nn\u00f6t. T\u00e4ss\u00e4 vaiheessa t\u00e4rkein askel ei ole ty\u00f6kalun valinta vaan p\u00e4\u00e4t\u00f6s siit\u00e4, mihin teko\u00e4ly\u00e4 halutaan k\u00e4ytt\u00e4\u00e4 ja kuka asian omistaa.&quot;,\n    path: &quot;Teko\u00e4lystrategia ja pelis\u00e4\u00e4nn\u00f6t&quot;,\n    pathText: &quot;Aloittakaa johdon kanssa: mitk\u00e4 ovat ne kaksi tai kolme k\u00e4ytt\u00f6kohdetta, joissa hy\u00f6ty on suurin, ja mill\u00e4 pelis\u00e4\u00e4nn\u00f6ill\u00e4 koko henkil\u00f6st\u00f6 saa k\u00e4ytt\u00e4\u00e4 ty\u00f6kaluja. Kun suunta ja rajat ovat selvill\u00e4, kokeilut alkavat tuottaa jotain, jota voi mitata.&quot; },\n  { max: 25, name: &quot;Perusta kunnossa&quot;,\n    summary: &quot;Teill\u00e4 on jo ymm\u00e4rrys teko\u00e4lyst\u00e4 ja ensimm\u00e4iset asiat paikoillaan. K\u00e4ytt\u00f6 on kuitenkin ep\u00e4tasaista: osa porukasta hy\u00f6tyy, osa ei ole aloittanutkaan, ja teko\u00e4ly on harvoin osa varsinaisia prosesseja. Seuraava askel on vied\u00e4 osaaminen koko henkil\u00f6st\u00f6lle ja valita ne ty\u00f6nkulut, joissa hy\u00f6ty n\u00e4kyy tunteina ja euroina.&quot;,\n    path: &quot;Koulutus ja k\u00e4ytt\u00f6\u00f6notto&quot;,\n    pathText: &quot;Kouluttakaa koko henkil\u00f6st\u00f6 samalle tasolle ja valitkaa yksi tai kaksi toistuvaa prosessia, joissa teko\u00e4ly otetaan k\u00e4ytt\u00f6\u00f6n kunnolla. Mitatkaa hy\u00f6ty ennen ja j\u00e4lkeen. N\u00e4in kokeiluista tulee toimintatapa.&quot; },\n  { max: 30, name: &quot;Edell\u00e4k\u00e4vij\u00e4&quot;,\n    summary: &quot;Teko\u00e4ly on teill\u00e4 osa arkea ja johto pit\u00e4\u00e4 sit\u00e4 kilpailuedun asiana. T\u00e4ss\u00e4 vaiheessa kysymys ei ole en\u00e4\u00e4 siit\u00e4, aloitetaanko, vaan siit\u00e4 miten pysytte edell\u00e4: mit\u00e4 automatisoidaan seuraavaksi, miten rakennettu pysyy hallinnassa ja mist\u00e4 uudet mahdollisuudet huomataan ajoissa.&quot;,\n    path: &quot;Agentit ja jatkuva kehitys&quot;,\n    pathText: &quot;Seuraavaksi kannattaa katsoa ty\u00f6nkulkuja, joissa teko\u00e4ly voi tehd\u00e4 ty\u00f6t\u00e4 itsen\u00e4isesti, ei vain avustaa. Samalla tarvitaan joku, joka seuraa kehityst\u00e4 ja pit\u00e4\u00e4 ty\u00f6kalusalkun, pelis\u00e4\u00e4nn\u00f6t ja osaamisen ajan tasalla, koska ala muuttuu kuukausittain.&quot; },\n];\n\n\/* Kehitysehdotus kullekin osa-alueelle, kun vastaus oli A tai B *\/\nconst ADVICE = {\n  1: &quot;Kirjatkaa yl\u00f6s, mihin teko\u00e4ly\u00e4 halutaan k\u00e4ytt\u00e4\u00e4 ja miksi. Yksi sivu riitt\u00e4\u00e4, kun se on johdon yhdess\u00e4 hyv\u00e4ksym\u00e4.&quot;,\n  2: &quot;Tehk\u00e4\u00e4 pelis\u00e4\u00e4nn\u00f6t: mit\u00e4 tietoa ty\u00f6kaluihin saa sy\u00f6tt\u00e4\u00e4, mit\u00e4 ei, ja mitk\u00e4 ty\u00f6kalut ovat sallittuja. Ilman niit\u00e4 k\u00e4ytt\u00f6 on jo nyt hallitsematonta.&quot;,\n  3: &quot;Kouluttakaa koko henkil\u00f6st\u00f6, ei vain innokkaimpia. Osaamisero on yleisin syy siihen, ett\u00e4 ty\u00f6kalut j\u00e4\u00e4v\u00e4t k\u00e4ytt\u00e4m\u00e4tt\u00e4.&quot;,\n  4: &quot;Siirtyk\u00e4\u00e4 ilmaisista kuluttajaversioista yritysversioihin. Ero on ennen kaikkea tietoturvassa ja siin\u00e4, minne kirjoittamanne teksti p\u00e4\u00e4tyy.&quot;,\n  5: &quot;Valitkaa yksi tietol\u00e4hde, jonka saatte kuntoon ensin. Teko\u00e4ly on vain niin hyv\u00e4 kuin data, jota sille annetaan.&quot;,\n  6: &quot;Tehk\u00e4\u00e4 kokeiluista suunnitelmallisia: kuka kokeilee, mit\u00e4, ja milloin tulokset katsotaan yhdess\u00e4.&quot;,\n  7: &quot;Varatkaa pieni kokeilubudjetti. Muutaman tuhannen euron raami tuo p\u00e4\u00e4t\u00f6kset p\u00f6yd\u00e4lle ja tekee kokeiluista mitattavia.&quot;,\n  8: &quot;Poimikaa yksi toistuva prosessi, joka sy\u00f6 aikaa, ja viek\u00e4\u00e4 teko\u00e4ly siihen kunnolla. Yksi onnistunut ty\u00f6nkulku opettaa enemm\u00e4n kuin kymmenen irrallista testi\u00e4.&quot;,\n  9: &quot;Teko\u00e4lyn hy\u00f6dynt\u00e4minen on johtamiskysymys. Jos johto seuraa sivusta, muu organisaatio tekee samoin.&quot;,\n  10: &quot;Miettik\u00e4\u00e4, mit\u00e4 teko\u00e4ly voisi muuttaa asiakkaanne saamassa palvelussa, ei vain omassa ty\u00f6ss\u00e4nne.&quot;,\n};\n\n\/* ---------- Tila ---------- *\/\nfunction newId() {\n  if (window.crypto &amp;&amp; crypto.randomUUID) return crypto.randomUUID();\n  return Date.now().toString(36) + Math.random().toString(36).slice(2, 10);\n}\nfunction freshState() { return { started: false, index: 0, answers: {}, finished: false, id: newId(), saved: false, leadSent: false }; }\nlet state = freshState();\nconst view = document.getElementById(&quot;view&quot;);\n\nconst icons = {\n  arrow: &#x27;&lt;svg viewBox=&quot;0 0 24 24&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2.2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M5 12h14M13 6l6 6-6 6&quot;\/&gt;&lt;\/svg&gt;&#x27;,\n  back: &#x27;&lt;svg viewBox=&quot;0 0 24 24&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2.2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M19 12H5M11 18l-6-6 6-6&quot;\/&gt;&lt;\/svg&gt;&#x27;,\n  reset: &#x27;&lt;svg viewBox=&quot;0 0 24 24&quot; fill=&quot;none&quot; stroke=&quot;currentColor&quot; stroke-width=&quot;2.2&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M3 12a9 9 0 1 0 3-6.7L3 8&quot;\/&gt;&lt;path d=&quot;M3 3v5h5&quot;\/&gt;&lt;\/svg&gt;&#x27;,\n};\n\nfunction esc(s) { return String(s).replace(\/[&amp;&lt;&gt;&quot;&#x27;]\/g, c =&gt; ({ &quot;&amp;&quot;: &quot;&amp;amp;&quot;, &quot;&lt;&quot;: &quot;&amp;lt;&quot;, &quot;&gt;&quot;: &quot;&amp;gt;&quot;, &#x27;&quot;&#x27;: &quot;&amp;quot;&quot;, &quot;&#x27;&quot;: &quot;&amp;#39;&quot; }[c])); }\n\nfunction totalPoints() {\n  return Object.values(state.answers).reduce((a, b) =&gt; a + b, 0);\n}\n\n\/* ---------- N\u00e4kym\u00e4t ---------- *\/\nfunction renderStart() {\n  view.innerHTML = `\n    &lt;section class=&quot;view card stack&quot;&gt;\n      &lt;p class=&quot;label&quot;&gt;Kymmenen kysymyst\u00e4 \u00b7 noin 3 minuuttia&lt;\/p&gt;\n      &lt;h1&gt;Miss\u00e4 organisaationne menee teko\u00e4lyn kanssa?&lt;\/h1&gt;\n      &lt;p class=&quot;ingressi&quot;&gt;Vastaa kymmeneen kysymykseen strategiasta, osaamisesta, ty\u00f6kaluista ja johtamisesta. Saat heti valmiusindeksin, osa-aluekohtaisen kuvan ja ehdotuksen siit\u00e4, mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.&lt;\/p&gt;\n      &lt;div&gt;\n        &lt;button class=&quot;btn&quot; id=&quot;start&quot;&gt;Aloita kartoitus ${icons.arrow}&lt;\/button&gt;\n      &lt;\/div&gt;\n      &lt;div class=&quot;meta&quot;&gt;\n        &lt;p class=&quot;label&quot;&gt;Ei rekister\u00f6itymist\u00e4&lt;\/p&gt;\n        ${CONFIG.saveUrl ? &quot;&quot; : &#x27;&lt;p class=&quot;label&quot;&gt;Vastauksia ei tallenneta&lt;\/p&gt;&#x27;}\n      &lt;\/div&gt;\n      ${CONFIG.saveUrl ? &#x27;&lt;p class=&quot;body&quot; style=&quot;font-size:13px; color:var(--tumma-60); max-width:520px;&quot;&gt;Vastaukset tallennetaan nimett\u00f6min\u00e4 ja niist\u00e4 kootaan yhteenveto. Yksitt\u00e4isen organisaation vastauksia ei n\u00e4ytet\u00e4 kenellek\u00e4\u00e4n.&lt;\/p&gt;&#x27; : &quot;&quot;}\n    &lt;\/section&gt;`;\n  document.getElementById(&quot;start&quot;).addEventListener(&quot;click&quot;, () =&gt; { state.started = true; render(); });\n}\n\nfunction renderQuestion() {\n  const q = QUESTIONS[state.index];\n  const n = state.index + 1;\n  const pct = Math.round((state.index \/ QUESTIONS.length) * 100);\n  const selected = state.answers[q.id];\n  view.innerHTML = `\n    &lt;section class=&quot;view&quot;&gt;\n      &lt;div class=&quot;progress&quot;&gt;\n        &lt;div class=&quot;progress__top&quot;&gt;\n          &lt;p class=&quot;label&quot;&gt;Kysymys ${n} \/ ${QUESTIONS.length}&lt;\/p&gt;\n          &lt;p class=&quot;label&quot;&gt;${pct} %&lt;\/p&gt;\n        &lt;\/div&gt;\n        &lt;div class=&quot;progress__bar&quot; role=&quot;progressbar&quot; aria-valuenow=&quot;${pct}&quot; aria-valuemin=&quot;0&quot; aria-valuemax=&quot;100&quot;&gt;&lt;div class=&quot;progress__fill&quot; style=&quot;width:${pct}%&quot;&gt;&lt;\/div&gt;&lt;\/div&gt;\n      &lt;\/div&gt;\n      &lt;div class=&quot;card&quot;&gt;\n        &lt;p class=&quot;label&quot;&gt;${esc(q.category)}&lt;\/p&gt;\n        &lt;h2 style=&quot;margin-top:10px; text-transform:none; letter-spacing:-0.01em; font-weight:800; font-size:clamp(20px,3.6vw,26px);&quot;&gt;${esc(q.question)}&lt;\/h2&gt;\n        &lt;div class=&quot;choices&quot; role=&quot;group&quot; aria-label=&quot;Vastausvaihtoehdot&quot;&gt;\n          ${q.choices.map((c, i) =&gt; `\n            &lt;button class=&quot;choice ${selected === i ? &quot;is-selected&quot; : &quot;&quot;}&quot; data-i=&quot;${i}&quot;&gt;\n              &lt;span class=&quot;choice__key&quot; aria-hidden=&quot;true&quot;&gt;${KEYS[i]}&lt;\/span&gt;\n              &lt;span&gt;${esc(c)}&lt;\/span&gt;\n            &lt;\/button&gt;`).join(&quot;&quot;)}\n        &lt;\/div&gt;\n        &lt;div class=&quot;nav&quot;&gt;\n          ${state.index &gt; 0 ? `&lt;button class=&quot;btn btn--ghost&quot; id=&quot;back&quot;&gt;${icons.back} Edellinen&lt;\/button&gt;` : &quot;&lt;span&gt;&lt;\/span&gt;&quot;}\n          &lt;p class=&quot;label&quot;&gt;Valitse vaihtoehto jatkaaksesi&lt;\/p&gt;\n        &lt;\/div&gt;\n      &lt;\/div&gt;\n    &lt;\/section&gt;`;\n  view.querySelectorAll(&quot;.choice&quot;).forEach(b =&gt; b.addEventListener(&quot;click&quot;, () =&gt; {\n    state.answers[q.id] = Number(b.dataset.i);\n    b.classList.add(&quot;is-selected&quot;);\n    setTimeout(() =&gt; {\n      if (state.index === QUESTIONS.length - 1) { state.finished = true; saveAnswers(); } else state.index++;\n      render();\n    }, 180);\n  }));\n  const back = document.getElementById(&quot;back&quot;);\n  if (back) back.addEventListener(&quot;click&quot;, () =&gt; { state.index--; render(); });\n}\n\nfunction renderResult() {\n  const pts = totalPoints();\n  const idx = Math.round((pts \/ MAX_POINTS) * 100);\n  const level = LEVELS.find(l =&gt; pts &lt;= l.max);\n  const scored = QUESTIONS.map(q =&gt; ({ ...q, score: state.answers[q.id] ?? 0 }));\n  const strong = scored.filter(s =&gt; s.score &gt;= 2).sort((a, b) =&gt; b.score - a.score);\n  const weak = scored.filter(s =&gt; s.score &lt;= 1).sort((a, b) =&gt; a.score - b.score);\n  const advice = weak.slice(0, 2);\n  const circumference = 2 * Math.PI * 70;\n\n  const strongText = strong.length\n    ? `Vahvimmillaan olette osa-alueilla ${strong.slice(0, 3).map(s =&gt; s.category.toLowerCase()).join(&quot;, &quot;)}.`\n    : &quot;Yht\u00e4\u00e4n osa-aluetta ei viel\u00e4 ole saatu kunnolla k\u00e4yntiin, mik\u00e4 on tavallinen l\u00e4ht\u00f6tilanne.&quot;;\n  const weakText = weak.length\n    ? `Eniten kehitett\u00e4v\u00e4\u00e4 on kohdissa ${weak.slice(0, 3).map(s =&gt; s.category.toLowerCase()).join(&quot;, &quot;)}.`\n    : &quot;Yksik\u00e4\u00e4n osa-alue ei j\u00e4\u00e4 j\u00e4lkeen muista.&quot;;\n\n  const ctaHtml = CONFIG.ctaUrl\n    ? `&lt;a class=&quot;btn&quot; href=&quot;${esc(CONFIG.ctaUrl)}&quot; ${CONFIG.ctaNewTab ? &#x27;target=&quot;_blank&quot; rel=&quot;noopener&quot;&#x27; : &quot;&quot;}&gt;${esc(CONFIG.ctaLabel)} ${icons.arrow}&lt;\/a&gt;`\n    : &quot;&quot;;\n\n  view.innerHTML = `\n    &lt;section class=&quot;view stack&quot;&gt;\n      &lt;div class=&quot;card card--dark&quot;&gt;\n        &lt;div class=&quot;result-hero&quot;&gt;\n          &lt;div class=&quot;gauge&quot; role=&quot;img&quot; aria-label=&quot;Teko\u00e4lyvalmiusindeksi ${idx} prosenttia&quot;&gt;\n            &lt;svg viewBox=&quot;0 0 160 160&quot;&gt;\n              &lt;circle class=&quot;gauge__track&quot; cx=&quot;80&quot; cy=&quot;80&quot; r=&quot;70&quot;\/&gt;\n              &lt;circle class=&quot;gauge__fill&quot; id=&quot;gaugeFill&quot; cx=&quot;80&quot; cy=&quot;80&quot; r=&quot;70&quot; style=&quot;stroke-dasharray:0 ${circumference}&quot;\/&gt;\n            &lt;\/svg&gt;\n            &lt;div class=&quot;gauge__num&quot;&gt;${idx}&lt;small&gt;%&lt;\/small&gt;&lt;\/div&gt;\n          &lt;\/div&gt;\n          &lt;div class=&quot;stack stack--tight&quot;&gt;\n            &lt;p class=&quot;label label--dark&quot;&gt;Teko\u00e4lyvalmiusindeksi \u00b7 ${pts} \/ ${MAX_POINTS} pistett\u00e4&lt;\/p&gt;\n            &lt;h1&gt;${esc(level.name)}&lt;\/h1&gt;\n            &lt;p class=&quot;ingressi&quot;&gt;${esc(level.summary)}&lt;\/p&gt;\n          &lt;\/div&gt;\n        &lt;\/div&gt;\n      &lt;\/div&gt;\n\n      &lt;div class=&quot;card stack&quot;&gt;\n        &lt;div&gt;\n          &lt;p class=&quot;label&quot;&gt;Osa-alueet&lt;\/p&gt;\n          &lt;h3 style=&quot;margin-top:8px;&quot;&gt;Mist\u00e4 pisteet muodostuvat&lt;\/h3&gt;\n        &lt;\/div&gt;\n        &lt;div class=&quot;bars&quot;&gt;\n          ${scored.map(s =&gt; `\n            &lt;div class=&quot;bar&quot;&gt;\n              &lt;span class=&quot;bar__name&quot;&gt;${esc(s.category)}&lt;\/span&gt;\n              &lt;div class=&quot;bar__track&quot;&gt;&lt;div class=&quot;bar__fill ${s.score &lt;= 1 ? &quot;is-low&quot; : s.score === 3 ? &quot;is-high&quot; : &quot;&quot;}&quot; data-w=&quot;${(s.score \/ 3) * 100}&quot; style=&quot;width:0&quot;&gt;&lt;\/div&gt;&lt;\/div&gt;\n              &lt;span class=&quot;bar__val&quot;&gt;${s.score}\/3&lt;\/span&gt;\n            &lt;\/div&gt;`).join(&quot;&quot;)}\n        &lt;\/div&gt;\n        &lt;p class=&quot;body&quot;&gt;${esc(strongText)} ${esc(weakText)}&lt;\/p&gt;\n      &lt;\/div&gt;\n\n      ${advice.length ? `\n      &lt;div class=&quot;card stack&quot;&gt;\n        &lt;div&gt;\n          &lt;p class=&quot;label&quot;&gt;Kehitysehdotukset&lt;\/p&gt;\n          &lt;h3 style=&quot;margin-top:8px;&quot;&gt;T\u00e4st\u00e4 kannattaa aloittaa&lt;\/h3&gt;\n        &lt;\/div&gt;\n        &lt;div class=&quot;split&quot;&gt;\n          ${advice.map(a =&gt; `\n            &lt;div&gt;\n              &lt;p class=&quot;label&quot;&gt;${esc(a.category)}&lt;\/p&gt;\n              &lt;p class=&quot;body&quot; style=&quot;margin-top:8px;&quot;&gt;${esc(ADVICE[a.id])}&lt;\/p&gt;\n            &lt;\/div&gt;`).join(&quot;&quot;)}\n        &lt;\/div&gt;\n      &lt;\/div&gt;` : &quot;&quot;}\n\n      &lt;div class=&quot;card stack&quot;&gt;\n        &lt;div&gt;\n          &lt;p class=&quot;label&quot;&gt;Suositeltu polku&lt;\/p&gt;\n          &lt;h2 style=&quot;margin-top:8px;&quot;&gt;${esc(level.path)}&lt;\/h2&gt;\n        &lt;\/div&gt;\n        &lt;p class=&quot;body&quot;&gt;${esc(level.pathText)}&lt;\/p&gt;\n        &lt;div class=&quot;cta-box stack stack--tight&quot;&gt;\n          &lt;p class=&quot;body&quot;&gt;&lt;strong&gt;K\u00e4yd\u00e4\u00e4nk\u00f6 tulokset l\u00e4pi yhdess\u00e4?&lt;\/strong&gt; 30 minuutin keskustelussa Y4:n asiantuntija katsoo vastauksesi kanssasi ja sanoo suoraan, mit\u00e4 teid\u00e4n tilanteessanne kannattaa tehd\u00e4 ensin. Ei myyntipuhetta, ei sitoumuksia.&lt;\/p&gt;\n          &lt;div&gt;${ctaHtml}&lt;\/div&gt;\n        &lt;\/div&gt;\n        ${CONFIG.saveUrl ? leadFormHtml() : &quot;&quot;}\n      &lt;\/div&gt;\n\n      &lt;div&gt;\n        &lt;button class=&quot;btn btn--ghost&quot; id=&quot;reset&quot;&gt;${icons.reset} Tee kartoitus uudelleen&lt;\/button&gt;\n      &lt;\/div&gt;\n    &lt;\/section&gt;`;\n\n  requestAnimationFrame(() =&gt; {\n    const g = document.getElementById(&quot;gaugeFill&quot;);\n    if (g) g.style.strokeDasharray = `${(idx \/ 100) * circumference} ${circumference}`;\n    view.querySelectorAll(&quot;.bar__fill&quot;).forEach(el =&gt; { el.style.width = el.dataset.w + &quot;%&quot;; });\n  });\n  bindLeadForm();\n  document.getElementById(&quot;reset&quot;).addEventListener(&quot;click&quot;, () =&gt; {\n    state = freshState();\n    render();\n  });\n}\n\n\/* ---------- Tallennus (Google Sheet Apps Scriptin kautta) ---------- *\/\nfunction send(payload) {\n  if (!CONFIG.saveUrl) return Promise.resolve(false);\n  \/* text\/plain ja no-cors: selain ei tee CORS-esikysely\u00e4, ja Apps Script ottaa viestin vastaan. *\/\n  \/* Vastausta ei voi lukea, joten onnistuminen tarkoittaa &quot;l\u00e4hti verkkoon ilman virhett\u00e4&quot;. *\/\n  return fetch(CONFIG.saveUrl, {\n    method: &quot;POST&quot;, mode: &quot;no-cors&quot;, keepalive: true,\n    headers: { &quot;Content-Type&quot;: &quot;text\/plain;charset=utf-8&quot; },\n    body: JSON.stringify(payload),\n  }).then(() =&gt; true).catch(() =&gt; false);\n}\n\nfunction saveAnswers() {\n  if (state.saved || !CONFIG.saveUrl) return;\n  state.saved = true;\n  const pts = totalPoints();\n  send({\n    tyyppi: &quot;vastaus&quot;,\n    id: state.id,\n    pisteet: pts,\n    indeksi: Math.round((pts \/ MAX_POINTS) * 100),\n    taso: LEVELS.find(l =&gt; pts &lt;= l.max).name,\n    vastaukset: QUESTIONS.map(q =&gt; state.answers[q.id] ?? null),\n    sivu: (document.referrer || location.href).slice(0, 300),\n  });\n}\n\nfunction leadFormHtml() {\n  if (state.leadSent) {\n    return `&lt;div class=&quot;lead&quot;&gt;&lt;p class=&quot;lead__msg&quot;&gt;Kiitos! L\u00e4het\u00e4mme yhteenvedon s\u00e4hk\u00f6postiisi, kun vastauksia on kertynyt riitt\u00e4v\u00e4sti vertailuun.&lt;\/p&gt;&lt;\/div&gt;`;\n  }\n  return `\n    &lt;form class=&quot;lead stack stack--tight&quot; id=&quot;leadForm&quot; novalidate&gt;\n      &lt;p class=&quot;body&quot;&gt;&lt;strong&gt;Miten muut vastasivat?&lt;\/strong&gt; Kokoamme kartoituksen vastauksista yhteenvedon: miss\u00e4 vaiheessa muut organisaatiot ovat ja mill\u00e4 osa-alueilla erot ovat suurimmat. J\u00e4t\u00e4 tietosi, niin l\u00e4het\u00e4mme sen sinulle. Yhteenvedossa ei n\u00e4y yksitt\u00e4isi\u00e4 vastaajia eik\u00e4 yrityksi\u00e4.&lt;\/p&gt;\n      &lt;div class=&quot;lead__grid&quot;&gt;\n        &lt;label class=&quot;field&quot;&gt;&lt;span&gt;Nimi&lt;\/span&gt;&lt;input name=&quot;nimi&quot; autocomplete=&quot;name&quot; maxlength=&quot;120&quot; required&gt;&lt;\/label&gt;\n        &lt;label class=&quot;field&quot;&gt;&lt;span&gt;Yritys&lt;\/span&gt;&lt;input name=&quot;yritys&quot; autocomplete=&quot;organization&quot; maxlength=&quot;120&quot; required&gt;&lt;\/label&gt;\n        &lt;label class=&quot;field&quot;&gt;&lt;span&gt;S\u00e4hk\u00f6posti&lt;\/span&gt;&lt;input name=&quot;sahkoposti&quot; type=&quot;email&quot; autocomplete=&quot;email&quot; maxlength=&quot;160&quot; required&gt;&lt;\/label&gt;\n        &lt;label class=&quot;field&quot;&gt;&lt;span&gt;Puhelin (vapaaehtoinen)&lt;\/span&gt;&lt;input name=&quot;puhelin&quot; type=&quot;tel&quot; autocomplete=&quot;tel&quot; maxlength=&quot;40&quot;&gt;&lt;\/label&gt;\n      &lt;\/div&gt;\n      &lt;label class=&quot;hp&quot; aria-hidden=&quot;true&quot;&gt;\u00c4l\u00e4 t\u00e4yt\u00e4&lt;input name=&quot;osoite&quot; tabindex=&quot;-1&quot; autocomplete=&quot;off&quot;&gt;&lt;\/label&gt;\n      &lt;label class=&quot;consent&quot;&gt;&lt;input type=&quot;checkbox&quot; name=&quot;suostumus&quot; required&gt;\n        &lt;span&gt;Y4 Works saa l\u00e4hett\u00e4\u00e4 minulle kartoituksen yhteenvedon ja ottaa minuun yhteytt\u00e4 tulosten tiimoilta. Tietojani k\u00e4sitell\u00e4\u00e4n &lt;a href=&quot;${esc(CONFIG.privacyUrl)}&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;tietosuojaselosteen&lt;\/a&gt; mukaisesti.&lt;\/span&gt;&lt;\/label&gt;\n      &lt;p class=&quot;lead__msg is-error&quot; id=&quot;leadErr&quot; role=&quot;alert&quot; hidden&gt;&lt;\/p&gt;\n      &lt;div&gt;&lt;button class=&quot;btn btn--light&quot; style=&quot;border-color:var(--tumma)&quot; type=&quot;submit&quot;&gt;Tilaa yhteenveto ${icons.arrow}&lt;\/button&gt;&lt;\/div&gt;\n    &lt;\/form&gt;`;\n}\n\nfunction bindLeadForm() {\n  const f = document.getElementById(&quot;leadForm&quot;);\n  if (!f) return;\n  const err = document.getElementById(&quot;leadErr&quot;);\n  f.addEventListener(&quot;submit&quot;, (e) =&gt; {\n    e.preventDefault();\n    const v = n =&gt; (f.elements[n].value || &quot;&quot;).trim();\n    let msg = &quot;&quot;;\n    if (!v(&quot;nimi&quot;) || !v(&quot;yritys&quot;) || !v(&quot;sahkoposti&quot;)) msg = &quot;T\u00e4yt\u00e4 nimi, yritys ja s\u00e4hk\u00f6posti.&quot;;\n    else if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(v(&quot;sahkoposti&quot;))) msg = &quot;Tarkista s\u00e4hk\u00f6postiosoite.&quot;;\n    else if (!f.elements.suostumus.checked) msg = &quot;Hyv\u00e4ksy ehto, niin voimme l\u00e4hett\u00e4\u00e4 yhteenvedon.&quot;;\n    if (msg) { err.textContent = msg; err.hidden = false; postHeight(); return; }\n    err.hidden = true;\n    const btn = f.querySelector(&quot;button[type=submit]&quot;);\n    btn.disabled = true;\n    saveAnswers();\n    send({\n      tyyppi: &quot;yhteystiedot&quot;, id: state.id,\n      nimi: v(&quot;nimi&quot;), yritys: v(&quot;yritys&quot;), sahkoposti: v(&quot;sahkoposti&quot;), puhelin: v(&quot;puhelin&quot;),\n      suostumus: true, osoite: v(&quot;osoite&quot;),\n    }).then(ok =&gt; {\n      if (ok) {\n        state.leadSent = true;\n        f.outerHTML = leadFormHtml();\n      } else {\n        btn.disabled = false;\n        err.textContent = &quot;L\u00e4hetys ei onnistunut. Yrit\u00e4 hetken p\u00e4\u00e4st\u00e4 uudelleen.&quot;;\n        err.hidden = false;\n      }\n      postHeight();\n    });\n  });\n}\n\nfunction render() {\n  if (!state.started) renderStart();\n  else if (!state.finished) renderQuestion();\n  else renderResult();\n  scrollTop();\n  postHeight();\n}\n\n\/* ---------- Iframe-tuki: korkeus ja vieritys emosivulle ---------- *\/\nconst inIframe = window.self !== window.top;\nfunction postHeight() {\n  if (!inIframe) return;\n  const h = document.getElementById(&quot;app&quot;).offsetHeight;\n  try { window.parent.postMessage({ type: &quot;y4-kartoitus&quot;, height: h }, &quot;*&quot;); } catch (e) {}\n}\nfunction scrollTop() {\n  if (inIframe) {\n    try { window.parent.postMessage({ type: &quot;y4-kartoitus&quot;, scrollTop: true }, &quot;*&quot;); } catch (e) {}\n  } else {\n    window.scrollTo({ top: 0, behavior: &quot;smooth&quot; });\n  }\n}\nif (&quot;ResizeObserver&quot; in window) new ResizeObserver(postHeight).observe(document.body);\nwindow.addEventListener(&quot;load&quot;, postHeight);\n\nrender();\n&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n\"><\/iframe>\n<\/div>\n<script>\n\/* Y4 Teko\u00e4lykartoitus: iframen korkeus ja konversioseuranta (GTM dataLayer) *\/\n(function () {\n  var f = document.getElementById(\"y4-kartoitus-frame\");\n  if (!f) return;\n  window.dataLayer = window.dataLayer || [];\n  var finished = false;\n  var leadDone = false;\n\n  function track(name, params) {\n    var o = { event: name };\n    if (params) { for (var k in params) { o[k] = params[k]; } }\n    window.dataLayer.push(o);\n  }\n\n  function result(d) {\n    var h = d.querySelector(\".result-hero h1\");\n    var n = d.querySelector(\".gauge__num\");\n    return {\n      kartoitus_taso: h ? h.textContent : \"\",\n      kartoitus_indeksi: n ? parseInt(n.textContent, 10) : null\n    };\n  }\n\n  function hook() {\n    var d = f.contentDocument;\n    if (!d || d.y4Tracked) return;\n    var view = d.getElementById(\"view\");\n    if (!view) return;\n    d.y4Tracked = true;\n    d.addEventListener(\"click\", function (e) {\n      var t = e.target.closest ? e.target.closest(\"#start, .cta-box a.btn\") : null;\n      if (!t) return;\n      if (t.id === \"start\") {\n        finished = false;\n        leadDone = false;\n        track(\"kartoitus_aloitettu\");\n      } else {\n        track(\"kartoitus_varaus_klikattu\", result(d));\n      }\n    }, true);\n    new MutationObserver(function () {\n      if (!finished && d.querySelector(\".gauge\")) {\n        finished = true;\n        track(\"kartoitus_valmis\", result(d));\n      }\n      if (finished && !leadDone && d.querySelector(\".lead .lead__msg:not(.is-error)\") && !d.getElementById(\"leadForm\")) {\n        leadDone = true;\n        track(\"kartoitus_yhteystiedot_lahetetty\", result(d));\n      }\n    }).observe(view, { childList: true, subtree: true });\n  }\n\n  window.addEventListener(\"message\", function (e) {\n    if (e.source !== f.contentWindow) return;\n    var d = e.data;\n    if (!d || d.type !== \"y4-kartoitus\") return;\n    if (d.height) f.style.height = d.height + \"px\";\n    if (d.scrollTop) {\n      var top = f.getBoundingClientRect().top + window.pageYOffset - 120;\n      if (window.pageYOffset > top) window.scrollTo({ top: top, behavior: \"smooth\" });\n    }\n    hook();\n  });\n  f.addEventListener(\"load\", hook);\n  hook();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5cc64bc8 elementor-section-content-top elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5cc64bc8\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-wider\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5c6708ea\" data-id=\"5c6708ea\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f189208 elementor-widget elementor-widget-heading\" data-id=\"f189208\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Mit\u00e4 teko\u00e4lykartoitus mittaa<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7075a084 elementor-widget elementor-widget-heading\" data-id=\"7075a084\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Kartoitus k\u00e4y l\u00e4pi kymmenen osa-aluetta, joista teko\u00e4lyn hy\u00f6ty yrityksess\u00e4 syntyy: strategia, pelis\u00e4\u00e4nn\u00f6t, henkil\u00f6st\u00f6n osaaminen, ty\u00f6kalut, data, kokeilut, budjetti, prosessit, johdon suhtautuminen ja asiakkaalle n\u00e4kyv\u00e4 arvo. Jokainen vastaus pisteytet\u00e4\u00e4n, ja tuloksesta n\u00e4et, miss\u00e4 osa-alueissa olette oikealla polulla ja miss\u00e4 on viel\u00e4 teht\u00e4v\u00e4\u00e4.<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-22295572\" data-id=\"22295572\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-450232e2 elementor-widget elementor-widget-image\" data-id=\"450232e2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"534\" src=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg\" class=\"attachment-large size-large wp-image-25512\" alt=\"Teko\u00e4lypassi - teko\u00e4lylukutaidon verkkokurssi\" srcset=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg 1024w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-300x200.jpg 300w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-768x512.jpg 768w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-1536x1024.jpg 1536w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-2048x1365.jpg 2048w\" 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>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<section class=\"elementor-element elementor-element-dd52827 e-con e-atomic-element e-flexbox-base e-default-section y4-osio-kerma e-dd52827-7838a4a \" data-id=\"dd52827\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"dd52827\" data-e-type=\"e-flexbox\" data-id=\"dd52827\">\n    <div class=\"elementor-element elementor-element-133dc159 e-con e-atomic-element e-flexbox-base e-default-div y4-sisaltoalue e-7986f064-c390 \" data-id=\"133dc159\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"133dc159\" data-e-type=\"e-flexbox\" data-id=\"133dc159\">\n    \t\t\t<h2 data-interaction-id=\"13d458ab\" class=\"y4-h2 e-14988a56-3df8 e-heading-base e-default-h2\" data-e-type=\"widget\" data-id=\"13d458ab\">Kolme valmiustasoa<\/h2>\n\t\t<div class=\"elementor-element elementor-element-4c781143 e-con e-atomic-element e-flexbox-base e-default-div e-718a2af6-9760 \" data-id=\"4c781143\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"4c781143\" data-e-type=\"e-flexbox\" data-id=\"4c781143\">\n    <div class=\"elementor-element elementor-element-57961cf0 e-con e-atomic-element e-div-block-base e-default-div e-65d97f74-577b \" data-id=\"57961cf0\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"57961cf0\" data-e-type=\"e-div-block\" data-id=\"57961cf0\">\n    \t\t\t<h3 data-interaction-id=\"428c3650\" class=\"y4-h3 e-2c6f61ec-8dd9 e-heading-base e-default-h3\" data-e-type=\"widget\" data-id=\"428c3650\">Alkuvaihe<\/h3>\n\t\t\t\t\t<p class=\"y4-leipateksti e-paragraph-base e-default-p\" data-interaction-id=\"304aa7c4\" data-e-type=\"widget\" data-id=\"304aa7c4\">Yrityksess\u00e4 on kokeiluja, mutta yhteist\u00e4 suuntaa ja pelis\u00e4\u00e4nt\u00f6j\u00e4 ei viel\u00e4. Ensimm\u00e4inen askel on teko\u00e4lystrategia.<\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-1d09e671 e-con e-atomic-element e-div-block-base e-default-div e-21441393-5d1f \" data-id=\"1d09e671\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"1d09e671\" data-e-type=\"e-div-block\" data-id=\"1d09e671\">\n    \t\t\t<h3 data-interaction-id=\"1796f78d\" class=\"y4-h3 e-6212662e-db0a e-heading-base e-default-h3\" data-e-type=\"widget\" data-id=\"1796f78d\">Perusta kunnossa<\/h3>\n\t\t\t\t\t<p class=\"y4-leipateksti e-paragraph-base e-default-p\" data-interaction-id=\"7324d178\" data-e-type=\"widget\" data-id=\"7324d178\">Ty\u00f6kalut ja perusohjeet ovat olemassa, mutta teko\u00e4lyn k\u00e4ytt\u00f6 on satunnaista. Seuraavaksi kannattaa kouluttaa koko henkil\u00f6st\u00f6 ja vied\u00e4 teko\u00e4ly osaksi teid\u00e4n omia prosesseja.<\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-6739b02c e-con e-atomic-element e-div-block-base e-default-div e-7b72fcca-564b \" data-id=\"6739b02c\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"6739b02c\" data-e-type=\"e-div-block\" data-id=\"6739b02c\">\n    \t\t\t<h3 data-interaction-id=\"2a9aa1eb\" class=\"y4-h3 e-407400d3-13ab e-heading-base e-default-h3\" data-e-type=\"widget\" data-id=\"2a9aa1eb\">Edell\u00e4k\u00e4vij\u00e4<\/h3>\n\t\t\t\t\t<p class=\"y4-leipateksti e-paragraph-base e-default-p\" data-interaction-id=\"20ede894\" data-e-type=\"widget\" data-id=\"20ede894\">Teko\u00e4ly on osa arkea. Nyt kysymys on siit\u00e4, mit\u00e4 automatisoidaan seuraavaksi, miten kokonaisuus pysyy hallinnassa ja miten saatte aidosti liiketoimintahy\u00f6ty\u00e4.<\/p>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/section>\n\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-8597aff elementor-section-content-top elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"8597aff\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-wider\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-1281ac5\" data-id=\"1281ac5\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b2fef6d elementor-widget elementor-widget-heading\" data-id=\"b2fef6d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Teko\u00e4lylukutaito: suorita Teko\u00e4lypassi-verkkokurssi<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a9c753 elementor-widget elementor-widget-heading\" data-id=\"3a9c753\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">EU:n teko\u00e4lyasetus velvoittaa yrityksi\u00e4 tukemaan henkil\u00f6st\u00f6n teko\u00e4lylukutaitoa. Asetus koskee yrityksi\u00e4, joiden henkil\u00f6st\u00f6 k\u00e4ytt\u00e4\u00e4 teko\u00e4ly\u00e4 ty\u00f6ss\u00e4\u00e4n. \n<br>\n<br>\nTeko\u00e4lypassi-verkkokurssi tukee henkil\u00f6st\u00f6n teko\u00e4lylukutaitoa asetuksen mukaisesti. Kurssi sis\u00e4lt\u00e4\u00e4 nelj\u00e4 k\u00e4yt\u00e4nn\u00f6nl\u00e4heist\u00e4 moduulia, jotka auttavat ymm\u00e4rt\u00e4m\u00e4\u00e4n, miten teko\u00e4ly\u00e4 k\u00e4ytet\u00e4\u00e4n turvallisesti ja vastuullisesti. Teko\u00e4lypassi auttaa varmistamaan, ett\u00e4 perusasiat on k\u00e4yty l\u00e4pi ja suoritus voidaan osoittaa tarvittaessa.<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1dd7a84 elementor-widget elementor-widget-button\" data-id=\"1dd7a84\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalypassi-tekoalylukutaito-henkilostolle\/\">\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\">Tutustu verkkokurssiin<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-810a988\" data-id=\"810a988\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-3e6ceb5 elementor-widget elementor-widget-image\" data-id=\"3e6ceb5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"800\" height=\"502\" src=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/10\/koulutus-1024x642.jpg\" class=\"attachment-large size-large wp-image-26000\" alt=\"Teko\u00e4lylukutaito - koulutuskuva.\" srcset=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/10\/koulutus-1024x642.jpg 1024w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/10\/koulutus-300x188.jpg 300w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/10\/koulutus-768x482.jpg 768w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/10\/koulutus.jpg 1400w\" 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>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-077b7ed elementor-section-content-top elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"077b7ed\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t\t<div class=\"elementor-background-overlay\"><\/div>\n\t\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-wider\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-ce33bea\" data-id=\"ce33bea\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8624588 elementor-widget elementor-widget-image\" data-id=\"8624588\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"512\" height=\"512\" src=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/05\/Henri-Saarela.png\" class=\"attachment-large size-large wp-image-25432\" alt=\"\" srcset=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/05\/Henri-Saarela.png 512w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/05\/Henri-Saarela-300x300.png 300w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/05\/Henri-Saarela-150x150.png 150w, https:\/\/y4works.fi\/wp-content\/uploads\/2026\/05\/elementor\/thumbs\/Henri-Saarela-rnqens7coawuqqaerrn2drzg31yzv8qv5uglmw9w9s.png 400w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-6076564\" data-id=\"6076564\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c324c46 elementor-widget elementor-widget-heading\" data-id=\"c324c46\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Mit\u00e4 seuraavaksi<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7fc4b66 elementor-widget elementor-widget-heading\" data-id=\"7fc4b66\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Kartoitus kertoo t\u00e4m\u00e4n hetkisen tilanteen ja antaa ehdotuksen seuraavista askeleista teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4.\n<br>\n<br>\nJos haluatte k\u00e4yd\u00e4 tulokset l\u00e4pi asiantuntijan kanssa ja keskustella siit\u00e4, miten saatte eniten liiketoimintahy\u00f6ty\u00e4 ja kilpailuetua teko\u00e4lyst\u00e4, varaa 30 minuutin tapaaminen Henri Saarelan kanssa. Henri toimii meill\u00e4 teko\u00e4lyn, strategian ja kasvun asiantuntijana.<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-84378a7 elementor-widget elementor-widget-button\" data-id=\"84378a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/calendar.app.google\/A4cJHSVz1f2bxoqs7\">\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\">Varaa keskustelu Henrin kanssa<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-33f37c61 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"33f37c61\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-18e81e83\" data-id=\"18e81e83\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4392aa15 elementor-widget elementor-widget-heading\" data-id=\"4392aa15\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Y4 Works Oy<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-53b4ce3c\" data-id=\"53b4ce3c\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6dd37007 elementor-widget elementor-widget-text-editor\" data-id=\"6dd37007\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Y4 Works on joukko kunnianhimoisia tekij\u00f6it\u00e4, joilla on halu vaikuttaa yhteiskuntaan. Autamme yrityksi\u00e4 kasvamaan ja ty\u00f6nhakijoita l\u00f6yt\u00e4m\u00e4\u00e4n uralleen suunnan. Ratkaisemme muuttuvan ty\u00f6el\u00e4m\u00e4n haasteita yhdess\u00e4 julkisen sektorin kanssa.<\/p><p>Vuonna 2019 perustettu Y4 on kasvanut laajaksi asiantuntijoiden yhteis\u00f6ksi. Toimistomme sijaitsevat Helsingiss\u00e4 ja Tampereella.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1e296c37 elementor-widget elementor-widget-button\" data-id=\"1e296c37\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-lg\" href=\"https:\/\/y4works.fi\/fi\/yhteys\/\">\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\">Katso yhteystietomme<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Teko\u00e4lykartoitus Teko\u00e4lykartoitus: miss\u00e4 yrityksesi menee teko\u00e4lyn kanssa? Vastaa kymmeneen kysymykseen ja saat teko\u00e4lyvalmiusindeksin, osa-aluekohtaisen tuloksen ja ehdotuksen seuraavista askeleista. Testi ei vaadi yhteystietoja, vaan saat tulokset heti. Kokeile ja selvit\u00e4 tasosi. Mit\u00e4 teko\u00e4lykartoitus mittaa Kartoitus k\u00e4y l\u00e4pi kymmenen osa-aluetta, joista teko\u00e4lyn hy\u00f6ty yrityksess\u00e4 syntyy: strategia, pelis\u00e4\u00e4nn\u00f6t, henkil\u00f6st\u00f6n osaaminen, ty\u00f6kalut, data, kokeilut, budjetti, prosessit, johdon suhtautuminen [&hellip;]<\/p>\n","protected":false},"author":131,"featured_media":0,"parent":23081,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-26337","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Teko\u00e4lykartoitus - Y4 Works<\/title>\n<meta name=\"description\" content=\"Selvit\u00e4 teko\u00e4lykartoituksella, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/\" \/>\n<meta property=\"og:locale\" content=\"fi_FI\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Teko\u00e4lykartoitus - Y4 Works\" \/>\n<meta property=\"og:description\" content=\"Selvit\u00e4 teko\u00e4lykartoituksella, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/\" \/>\n<meta property=\"og:site_name\" content=\"Y4 Works\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Y4works\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-29T09:55:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@y4works\" \/>\n<meta name=\"twitter:label1\" content=\"Arvioitu lukuaika\" \/>\n\t<meta name=\"twitter:data1\" content=\"16 minuuttia\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/\",\"url\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/\",\"name\":\"Teko\u00e4lykartoitus - Y4 Works\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/y4works.fi\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg\",\"datePublished\":\"2026-10-16T11:24:45+00:00\",\"dateModified\":\"2026-10-29T09:55:08+00:00\",\"description\":\"Selvit\u00e4 teko\u00e4lykartoituksella, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/#breadcrumb\"},\"inLanguage\":\"fi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fi\",\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/#primaryimage\",\"url\":\"https:\\\/\\\/y4works.fi\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg\",\"contentUrl\":\"https:\\\/\\\/y4works.fi\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/tekoalykartoitus\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Yrityksille\",\"item\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Teko\u00e4ly liiketoiminnassa\",\"item\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/yrityksille\\\/tekoaly-liiketoiminnassa\\\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Teko\u00e4lykartoitus\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/#website\",\"url\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/\",\"name\":\"Y4 Works\",\"description\":\"Uuden sukupolven yritys- ja urapalvelut\",\"publisher\":{\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fi\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/#organization\",\"name\":\"Y4 Works\",\"url\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fi\",\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/y4works.fi\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/Y4-logo.png\",\"contentUrl\":\"https:\\\/\\\/y4works.fi\\\/wp-content\\\/uploads\\\/2021\\\/08\\\/Y4-logo.png\",\"width\":2621,\"height\":1578,\"caption\":\"Y4 Works\"},\"image\":{\"@id\":\"https:\\\/\\\/y4works.fi\\\/fi\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Y4works\\\/\",\"https:\\\/\\\/x.com\\\/y4works\",\"https:\\\/\\\/www.instagram.com\\\/y4works\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/y4\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UC5dIR_5FPOK1spC2G7LQelg\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Teko\u00e4lykartoitus - Y4 Works","description":"Selvit\u00e4 teko\u00e4lykartoituksella, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.","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:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/","og_locale":"fi_FI","og_type":"article","og_title":"Teko\u00e4lykartoitus - Y4 Works","og_description":"Selvit\u00e4 teko\u00e4lykartoituksella, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.","og_url":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/","og_site_name":"Y4 Works","article_publisher":"https:\/\/www.facebook.com\/Y4works\/","article_modified_time":"2026-10-29T09:55:08+00:00","og_image":[{"width":2560,"height":1707,"url":"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-scaled.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@y4works","twitter_misc":{"Arvioitu lukuaika":"16 minuuttia"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/","url":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/","name":"Teko\u00e4lykartoitus - Y4 Works","isPartOf":{"@id":"https:\/\/y4works.fi\/fi\/#website"},"primaryImageOfPage":{"@id":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/#primaryimage"},"image":{"@id":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/#primaryimage"},"thumbnailUrl":"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg","datePublished":"2026-10-16T11:24:45+00:00","dateModified":"2026-10-29T09:55:08+00:00","description":"Selvit\u00e4 teko\u00e4lykartoituksella, miss\u00e4 organisaatiosi menee teko\u00e4lyn hy\u00f6dynt\u00e4misess\u00e4 ja mit\u00e4 kannattaa tehd\u00e4 seuraavaksi.","breadcrumb":{"@id":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/#breadcrumb"},"inLanguage":"fi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/"]}]},{"@type":"ImageObject","inLanguage":"fi","@id":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/#primaryimage","url":"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg","contentUrl":"https:\/\/y4works.fi\/wp-content\/uploads\/2026\/09\/sergey-zolkin-_UeY8aTI6d0-unsplash-1024x683.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/tekoalykartoitus\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/y4works.fi\/fi\/"},{"@type":"ListItem","position":2,"name":"Yrityksille","item":"https:\/\/y4works.fi\/fi\/yrityksille\/"},{"@type":"ListItem","position":3,"name":"Teko\u00e4ly liiketoiminnassa","item":"https:\/\/y4works.fi\/fi\/yrityksille\/tekoaly-liiketoiminnassa\/"},{"@type":"ListItem","position":4,"name":"Teko\u00e4lykartoitus"}]},{"@type":"WebSite","@id":"https:\/\/y4works.fi\/fi\/#website","url":"https:\/\/y4works.fi\/fi\/","name":"Y4 Works","description":"Uuden sukupolven yritys- ja urapalvelut","publisher":{"@id":"https:\/\/y4works.fi\/fi\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/y4works.fi\/fi\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fi"},{"@type":"Organization","@id":"https:\/\/y4works.fi\/fi\/#organization","name":"Y4 Works","url":"https:\/\/y4works.fi\/fi\/","logo":{"@type":"ImageObject","inLanguage":"fi","@id":"https:\/\/y4works.fi\/fi\/#\/schema\/logo\/image\/","url":"https:\/\/y4works.fi\/wp-content\/uploads\/2021\/08\/Y4-logo.png","contentUrl":"https:\/\/y4works.fi\/wp-content\/uploads\/2021\/08\/Y4-logo.png","width":2621,"height":1578,"caption":"Y4 Works"},"image":{"@id":"https:\/\/y4works.fi\/fi\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Y4works\/","https:\/\/x.com\/y4works","https:\/\/www.instagram.com\/y4works\/","https:\/\/www.linkedin.com\/company\/y4\/","https:\/\/www.youtube.com\/channel\/UC5dIR_5FPOK1spC2G7LQelg"]}]}},"_links":{"self":[{"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/pages\/26337","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/users\/131"}],"replies":[{"embeddable":true,"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/comments?post=26337"}],"version-history":[{"count":0,"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/pages\/26337\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/pages\/23081"}],"wp:attachment":[{"href":"https:\/\/y4works.fi\/fi\/wp-json\/wp\/v2\/media?parent=26337"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}