1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,88143,(e,a,t)=>{"use strict";function i({widthInt:e,heightInt:a,blurWidth:t,blurHeight:n,blurDataURL:s,objectFit:o}){let r=t?40*t:e,l=n?40*n:a,u=r&&l?`viewBox='0 0 ${r} ${l}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${u}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${u?"none":"contain"===o?"xMidYMid":"cover"===o?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${s}'/%3E%3C/svg%3E`}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getImageBlurSvg",{enumerable:!0,get:function(){return i}})},87690,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i={VALID_LOADERS:function(){return s},imageConfigDefault:function(){return o}};for(var n in i)Object.defineProperty(t,n,{enumerable:!0,get:i[n]});let s=["default","imgix","cloudinary","akamai","custom"],o={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},8927,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"getImgProps",{enumerable:!0,get:function(){return u}}),e.r(33525);let i=e.r(43369),n=e.r(88143),s=e.r(87690),o=["-moz-initial","fill","none","scale-down",void 0];function r(e){return void 0!==e.default}function l(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function u({src:e,sizes:a,unoptimized:t=!1,priority:h=!1,preload:d=!1,loading:p,className:m,quality:c,width:k,height:g,fill:y=!1,style:v,overrideSrc:f,onLoad:b,onLoadingComplete:j,placeholder:x="empty",blurDataURL:w,fetchPriority:B,decoding:S="async",layout:P,objectFit:A,objectPosition:T,lazyBoundary:I,lazyRoot:M,...E},C){var N;let O,J,H,{imgConf:R,showAltText:_,blurComplete:L,defaultLoader:z}=C,W=R||s.imageConfigDefault;if("allSizes"in W)O=W;else{let e=[...W.deviceSizes,...W.imageSizes].sort((e,a)=>e-a),a=W.deviceSizes.sort((e,a)=>e-a),t=W.qualities?.sort((e,a)=>e-a);O={...W,allSizes:e,deviceSizes:a,qualities:t}}if(void 0===z)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let $=E.loader||z;delete E.loader,delete E.srcSet;let D="__next_img_default"in $;if(D){if("custom"===O.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop. 2Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=$;$=a=>{let{config:t,...i}=a;return e(i)}}if(P){"fill"===P&&(y=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[P];e&&(v={...v,...e});let t={responsive:"100vw",fill:"100vw"}[P];t&&!a&&(a=t)}let F="",V=l(k),K=l(g);if((N=e)&&"object"==typeof N&&(r(N)||void 0!==N.src)){let a=r(e)?e.default:e;if(!a.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(a)}
2`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!a.height||!a.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(a)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(J=a.blurWidth,H=a.blurHeight,w=w||a.blurDataURL,F=a.src,!y)if(V||K){if(V&&!K){let e=V/a.width;K=Math.round(a.height*e)}else if(!V&&K){let e=K/a.height;V=Math.round(a.width*e)}}else V=a.width,K=a.height}let U=!h&&!d&&("lazy"===p||void 0===p);(!(e="string"==typeof e?e:F)||e.startsWith("data:")||e.startsWith("blob:"))&&(t=!0,U=!1),O.unoptimized&&(t=!0),D&&!O.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(t=!0);let q=l(c),G=Object.assign(y?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:A,objectPosition:T}:{},_?{}:{color:"transparent"},v),Y=L||"empty"===x?null:"blur"===x?`url("data:image/svg+xml;charset=utf-8,${(0,n.getImageBlurSvg)({widthInt:V,heightInt:K,blurWidth:J,blurHeight:H,blurDataURL:w||"",objectFit:G.objectFit})}")`:`url("${x}")`,Z=o.includes(G.objectFit)?"fill"===G.objectFit?"100% 100%":"cover":G.objectFit,X=Y?{backgroundSize:Z,backgroundPosition:G.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:Y}:{},Q=function({config:e,src:a,unoptimized:t,width:n,quality:s,sizes:o,loader:r}){if(t){if(a.startsWith("/")&&!a.startsWith("//")){let e=(0,i.getDeploymentId)();if(e){let t=a.indexOf("?");if(-1!==t){let i=new URLSearchParams(a.slice(t+1));i.get("dpl")||(i.append("dpl",e),a=a.slice(0,t)+"?"+i.toString())}else a+=`?dpl=${e}`}}return{src:a,srcSet:void 0,sizes:void 0}}let{widths:l,kind:u}=function({deviceSizes:e,allSizes:a},t,i){if(i){let t=/(^|\s)(1?\d?\d)vw/g,n=[];for(let e;e=t.exec(i);)n.push(parseInt(e[2]));if(n.length){let t=.01*Math.min(...n);return{widths:a.filter(a=>a>=e[0]*t),kind:"w"}}return{widths:a,kind:"w"}}return"number"!=typeof t?{widths:e,kind:"w"}:{widths:[...new Set([t,2*t].map(e=>a.find(a=>a>=e)||a[a.length-1]))],kind:"x"}}(e,n,o),h=l.length-1;return{sizes:o||"w"!==u?o:"100vw",srcSet:l.map((t,i)=>`${r({config:e,src:a,quality:s,width:t})} ${"w"===u?t:i+1}${u}`).join(", "),src:r({config:e,src:a,quality:s,width:l[h]})}}({config:O,src:e,unoptimized:t,width:V,quality:q,sizes:a,loader:$}),ee=U?"lazy":p;return{props:{...E,loading:ee,fetchPriority:B,width:V,height:K,decoding:S,className:m,style:{...G,...X},sizes:Q.sizes,srcSet:Q.srcSet,src:f||Q.src},meta:{unoptimized:t,preload:d||h,placeholder:x,fill:y}}}},98879,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return r}});let i=e.r(71645),n="u"<typeof window,s=n?()=>{}:i.useLayoutEffect,o=n?()=>{}:i.useEffect;function r(e){let{headManager:a,reduceComponentsToState:t}=e;function r(){if(a&&a.mountedInstances){let e=i.Children.toArray(Array.from(a.mountedInstances).filter(Boolean));a.updateHead(t(e))}}return n&&(a?.mountedInstances?.add(e.children),r()),s(()=>(a?.mountedInstances?.add(e.children),()=>{a?.mountedInstances?.delete(e.children)})),s(()=>(a&&(a._pendingUpdate=r),()=>{a&&(a._pendingUpdate=r)})),o(()=>(a&&a._pendingUpdate&&(a._pendingUpdate(),a._pendingUpdate=null),()=>{a&&a._pendingUpdate&&(a._pendingUpdate(),a._pendingUpdate=null)})),null}},25633,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i={default:function(){return k},defaultHead:function(){return d}};for(var n in i)Object.defineProperty(t,n,{enumerable:!0,get:i[n]});let s=e.r(55682),o=e.r(90809),r=e.r(43476),l=o._(e.r(71645)),u=s._(e.r(98879)),h=e.r(42732);function d(){return[(0,r.jsx)("meta",{charSet:"utf-8"},"charset"),(0,r.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function p(e,a){return"string"==typeof a||"number"==typeof a?e:a.type===l.default.Fragment?e.concat(l.default.Children.toArray(a.props.children).reduce((e,a)=>"string"==typeof a||"number"==typeof a?e:e.concat(a),[])):e.concat(a)}e.r(33525);let m=["name","httpEquiv","charSet","itemProp"];function c(e){let a,t,i,n;return e.reduce(p,[]).reverse().concat(d().reverse()).filter((a=new Set,t=new Set,i=new Set,n={},e=>{let s=!0,o=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){o=!0;let t=e.key.slice(e.key.indexOf("$")+1);a.has(t)?s=!1:a.add(t)}switch(e.type){case"title":case"base":t.has(e.type)?s=!1:t.add(e.type);break;case"meta":for(let a=0,t=m.length;a<t;a++){let t=m[a];if(e.props.hasOwnProperty(t))if("charSet"===t)i.has(t)?s=!1:i.add(t);else{let a=e.props[t],i=n[t]||new Set;("name"!==t||!o)&&i.has(a)?s=!1:(i.add(a),n[t]=i)}}}return s})).reverse().map((e,a)=>{let t=e.key||a;return l.default.cloneElement(e,{key:t})})}let k=function({children:e}){let a=(0,l.useContext)(h.HeadManagerContext);return(0,r.jsx)(u.default,{reduceComponentsToState:c,headManager:a,children:e})};("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esMo
2dule",{value:!0}),Object.assign(t.default,t),a.exports=t.default)},18556,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ImageConfigContext",{enumerable:!0,get:function(){return s}});let i=e.r(55682)._(e.r(71645)),n=e.r(87690),s=i.default.createContext(n.imageConfigDefault)},65856,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"RouterContext",{enumerable:!0,get:function(){return i}});let i=e.r(55682)._(e.r(71645)).default.createContext(null)},70965,(e,a,t)=>{"use strict";function i(e,a){let t=e||75;return a?.qualities?.length?a.qualities.reduce((e,a)=>Math.abs(a-t)<Math.abs(e-t)?a:e,a.qualities[0]):t}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"findClosestQuality",{enumerable:!0,get:function(){return i}})},1948,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return o}});let i=e.r(70965),n=e.r(43369);function s({config:e,src:a,width:t,quality:o}){let r=(0,n.getDeploymentId)();if(a.startsWith("/")&&!a.startsWith("//")){let e=a.indexOf("?");if(-1!==e){let t=new URLSearchParams(a.slice(e+1)),i=t.get("dpl");if(i){r=i,t.delete("dpl");let n=t.toString();a=a.slice(0,e)+(n?"?"+n:"")}}}if(a.startsWith("/")&&a.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${a}" is using a query string which is not configured in images.localPatterns. 3Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let l=(0,i.findClosestQuality)(o,e);return`${e.path}?url=${encodeURIComponent(a)}&w=${t}&q=${l}${a.startsWith("/")&&r?`&dpl=${r}`:""}`}s.__next_img_default=!0;let o=s},5500,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Image",{enumerable:!0,get:function(){return b}});let i=e.r(55682),n=e.r(90809),s=e.r(43476),o=n._(e.r(71645)),r=i._(e.r(74080)),l=i._(e.r(25633)),u=e.r(8927),h=e.r(87690),d=e.r(18556);e.r(33525);let p=e.r(65856),m=i._(e.r(1948)),c=e.r(18581),k={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function g(e,a,t,i,n,s,o){let r=e?.src;e&&e["data-loaded-src"]!==r&&(e["data-loaded-src"]=r,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==a&&n(!0),t?.current){let a=new Event("load");Object.defineProperty(a,"target",{writable:!1,value:e});let i=!1,n=!1;t.current({...a,nativeEvent:a,currentTarget:e,target:e,isDefaultPrevented:()=>i,isPropagationStopped:()=>n,persist:()=>{},preventDefault:()=>{i=!0,a.preventDefault()},stopPropagation:()=>{n=!0,a.stopPropagation()}})}i?.current&&i.current(e)}}))}function y(e){return o.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let v=(0,o.forwardRef)(({src:e,srcSet:a,sizes:t,height:i,width:n,decoding:r,className:l,style:u,fetchPriority:h,placeholder:d,loading:p,unoptimized:m,fill:k,onLoadRef:v,onLoadingCompleteRef:f,setBlurComplete:b,setShowAltText:j,sizesInput:x,onLoad:w,onError:B,...S},P)=>{let A=(0,o.useCallback)(e=>{e&&(B&&(e.src=e.src),e.complete&&g(e,d,v,f,b,m,x))},[e,d,v,f,b,B,m,x]),T=(0,c.useMergedRef)(P,A);return(0,s.jsx)("img",{...S,...y(h),loading:p,width:n,height:i,decoding:r,"data-nimg":k?"fill":"1",className:l,style:u,sizes:t,srcSet:a,src:e,ref:T,onLoad:e=>{g(e.currentTarget,d,v,f,b,m,x)},onError:e=>{j(!0),"empty"!==d&&b(!0),B&&B(e)}})});function f({isAppRouter:e,imgAttributes:a}){let t={as:"image",imageSrcSet:a.srcSet,imageSizes:a.sizes,crossOrigin:a.crossOrigin,referrerPolicy:a.referrerPolicy,...y(a.fetchPriority)};return e&&r.default.preload?(r.default.preload(a.src,t),null):(0,s.jsx)(l.default,{children:(0,s.jsx)("link",{rel:"preload",href:a.srcSet?void 0:a.src,...t},"__nimg-"+a.src+a.srcSet+a.sizes)})}let b=(0,o.forwardRef)((e,a)=>{let t=(0,o.useContext)(p.RouterContext),i=(0,o.useContext)(d.ImageConfigContext),n=(0,o.useMemo)(()=>{let e=k||i||h.imageConfigDefault,a=[...e.deviceSizes,...e.imageSizes].sort((e,a)=>e-a),t=e.deviceSizes.sort((e,a)=>e-a),n=e.qualities?.sort((e,a)=>e-a);return{...e,allSizes:a,deviceSizes:t,qualities:n,localPatterns:"u"<typeof window?i?.localPatterns:e.localPatterns}
3},[i]),{onLoad:r,onLoadingComplete:l}=e,c=(0,o.useRef)(r);(0,o.useEffect)(()=>{c.current=r},[r]);let g=(0,o.useRef)(l);(0,o.useEffect)(()=>{g.current=l},[l]);let[y,b]=(0,o.useState)(!1),[j,x]=(0,o.useState)(!1),{props:w,meta:B}=(0,u.getImgProps)(e,{defaultLoader:m.default,imgConf:n,blurComplete:y,showAltText:j});return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(v,{...w,unoptimized:B.unoptimized,placeholder:B.placeholder,fill:B.fill,onLoadRef:c,onLoadingCompleteRef:g,setBlurComplete:b,setShowAltText:x,sizesInput:e.sizes,ref:a}),B.preload?(0,s.jsx)(f,{isAppRouter:!t,imgAttributes:w}):null]})});("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),a.exports=t.default)},94909,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i={default:function(){return h},getImageProps:function(){return u}};for(var n in i)Object.defineProperty(t,n,{enumerable:!0,get:i[n]});let s=e.r(55682),o=e.r(8927),r=e.r(5500),l=s._(e.r(1948));function u(e){let{props:a}=(0,o.getImgProps)(e,{defaultLoader:l.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[e,t]of Object.entries(a))void 0===t&&delete a[e];return{props:a}}let h=r.Image},57688,(e,a,t)=>{a.exports=e.r(94909)},24322,e=>{"use strict";let a={fi:[{id:"mukautuva-harjoittelu",category:"blog",title:"Mukautuvaa harjoittelua säädetään palautumistilan mukaan",date:"2026-09-29",excerpt:"Mukautuvaa harjoittelua säädetään palautumistilan mukaan",image:"/images/mukautuvaharjoittelu2.jpg",author:"Olli-Pekka Nuuttila",authorLanguage:"fi",authorImage:"/images/henkilosto/Olli-Pekka Nuuttila.jpg",content:[{type:"paragraph",text:"On tunnettu ilmiö, että voima- ja kestävyysharjoittelun vaikutukset voivat olla erilaisia yksilöiden välillä, vaikka harjoittelu olisi ollut samanlaista (1,2,3). Taustalla on useita mahdollisia tekijöitä kuten yksilöiden väliset erot harjoitustaustassa, ravitsemuksessa, unenlaadussa ja perimässä (4). Myös harjoittelun ulkopuolinen stressi voi heikentää harjoitusvasteita (5). Olennaista on tiedostaa, että edes saman yksilön harjoitusvasteet eivät aina ole samanlaisia harjoitusjaksosta toiseen (6). Harjoitusohjelma pyritään luonnollisesti rakentamaan yksilön tarpeiden ja tavoitteiden mukaisesti, mutta olennaista on myös hienosäätää harjoittelua yksilön kulloiseenkin tilanteeseen sopivaksi. Tätä periaatetta noudattaa mukautuva harjoittelu, jossa harjoituskuormaa säädetään yksilön palautumis- ja valmiustilan perusteella."},{type:"subheader",text:"Palautuminen on laaja kokonaisuus"},{type:"paragraph",text:"Palautuminen on laaja kokonaisuus, johon liittyy fyysisiä ja psyykkisiä ulottuvuuksia. Niin kätevää kuin se olisikin, ei ole olemassa yksittäistä kaikkia palautumisen osa-alueita kuvaavaa mittaria. Palautumistilaa arvioitaessa voidaan nojata subjektiivisiin mittareihin, jotka perustuvat yksilön omaan arvioon sekä objektiivisiin mittareihin, joilla mitataan esimerkiksi elimistön fysiologisia toimintoja levossa tai rasituksessa. Yleisesti ottaen subjektiiviset mittarit ovat objektiivisia mittareita herkempiä reagoimaan harjoituskuorman muutoksiin (7). Toisaalta pelkkä harjoituskuorman muutos ei suoraan tarkoita muutosta yksilön palautumistilassa, sillä samanlainen harjoittelu voi kuormittaa yksilöitä eri tavoin (8). Varmimpaan lopputulokseen päästäänkin, kun eri näkökulmista kertovaa tietoa yhdistetään kokonaiskuvan hahmottamiseksi (8,9)."},{type:"subheader",text:"Miten palautumista kannattaa mitata?"},{type:"paragraph",text:"Koettua palautumistilaa voi yksinkertaisimmillaan arvioida numeerisesti esimerkiksi 1â10-asteikolla (10). Kestävyysharjoittelussa ylikuormitustilan tunnistamisessa toimivaksi on havaittu kysymys koetusta harjoitusvalmiudesta (8,11). Myös tuntemus harjoituksissa suhteessa odotuksiin voi antaa tietoa kuormitustilasta (8). Lihasarkuutta kysymällä voidaan puolestaan saa
3da sellaista tietoa lihastason palautumisesta, mitä ei välttämättä saataisi kiinni objektiivisilla mittareilla (12,13). Numeerista arviota tulisi aina seurata suhteessa yksilön tavanomaisiin tuloksiin. Odotettua pidempään jatkunut alavireinen olotila tai odotettua suurempi koetun palautumistilan heikkeneminen ovat tilanteita, jotka kannattaa huomioida harjoittelussa."},{type:"paragraph",text:"Ãlykellojen yleistymisen myötä leposykkeestä ja sykevälivaihtelusta on tullut yhä laajemmin hyödynnettyjä fysiologisen palautumisen mittareita. Sykevälivaihtelun avulla voidaan arvioida epäsuorasti autonomisen hermoston ja erityisesti sen parasympaattisen haaran aktiivisuutta (14). Hyvässä palautumistilassa ja pienessä stressikuormassa parasympaattinen aktiivisuus on suurta, kun taas päinvastaisessa tilanteessa sympaattinen aktiivisuus on dominoivaa. Sykevälivaihteluun vaikuttaa niin fyysinen (15) kuin psyykkinen (16) stressi, eikä se siis kuvaa pelkästään harjoittelun aiheuttamaa kuormitusta. Yleisenä ajatuksena on, että parasympaattisen aktiivisuuden ollessa normaalia vähäisempää on myös elimistön kyky sopeutua harjoitteluun heikentynyt (15)."},{type:"subheader",text:"Tutkimusnäyttö palautumistilan perusteella mukautuvasta harjoittelusta"},{type:"paragraph",text:"Kestävyysharjoitustutkimuksissa sykevälivaihtelun perusteella hienosäädetty harjoittelu on tuottanut jonkin verran parempia harjoitusvasteita kuin ennalta määrätty harjoittelu (17,18). Etuna on lisäksi ollut, että suurempi osa yksilöistä on kehittynyt vähintään kohtalaisesti (9,18). Voimaharjoittelun suhteen tutkimusnäyttö sykevälivaihteluohjauksesta ei ole toistaiseksi yhtä vahvaa, ja yksittäisissä tutkimuksissa ennalta määrättyjen ja mukautuvien harjoitusryhmien harjoitusadaptaatiot ovat olleet varsin samanlaisia (19,20). Voimaharjoittelun suhteen on kuitenkin positiivista näyttää niin sanotun autoregulaation puolesta, joka tarkoittaa tarkkaan ennalta lukitun ohjelman sijaan päivän valmiuteen (esim. koettu rasitus tai liikenopeus) perustuvaa harjoitussisältöjen hienosäätöä (21,22)."},{type:"subheader",text:"Lopuksi"},{type:"paragraph",text:"Palautumistilan luotettava arviointi edellyttää riittävän säännöllistä seurantaa. Näin opitaan tuntemaan yksilön tulosten normaali vaihteluväli ja pystytään tunnistamaan siitä tapahtuvat poikkeamat. Palautumistilaa seuratessa olisi tärkeää uskaltaa reagoida odotetusta poikkeaviin tuloksiin. Mittaamisen ei tulisi olla itseisarvoista, vaan tietoa tulisi myös uskaltaa hyödyntää osana harjoittelua."},{type:"subheader",text:"Lähteet"},{type:"paragraph",text:"1. Ahtiainen JP, Walker S, Peltonen H, et al. Heterogeneity in resistance training-induced muscle strength and mass responses in men and women of different ages. Age (Dordr). 2016;38(1):10. doi:10.1007/s11357-015-9870-1"},{type:"paragraph",text:"2. Vollaard NB, Constantin-Teodosiu D, Fredriksson K, et al. Systematic analysis of adaptations in aerobic capacity and submaximal energy metabolism provides a unique insight into determinants of human aerobic performance. J Appl Physiol (1985). 2009;106(5):1479-1486. doi:10.1152/japplphysiol.91453.2008"},{type:"paragraph",text:"3. Hautala AJ, Kiviniemi AM, Mäkikallio TH, et al. Individual differences in the responses to endurance and resistance training. Eur J Appl Physiol. 2006;96(5):535-542. doi:10.1007/s00421-005-0116-2"},{type:"paragraph",text:"4. Mann TN, Lamberts RP, Lambert MI. High responders and low responders: factors associated with individual variation in response to standardized training. Sports Med. 2014;44(8):1113-1124. doi:10.1007/s40279-014-0197-3"},{type:"paragraph",text:"5. Ruuska PS, Hautala AJ, Kiviniemi AM, Mäkikallio TH, Tulppo MP. Self-rated mental stress and exercise training response in healthy subjects. Front Physiol. 2012;3:51. Published 2012 Mar 12. doi:10.3389/fphys.2012.00051"},{type:"paragraph",text:"6. Odden IU, Hamarsland H, Odden TU, et al. Limited reproducibility of individual physiological adaptations to repeated endurance exercise training. J Appl Physiol (1985). 2026;141(1):38-57. doi:10.1152/japplphysiol.00154.2026"},{type:"paragraph",text:"7. Saw AE, Main LC, Gastin PB. Monitoring the athlete training response: subjective self-reported measures trump commonly used objective measures: a systematic review. Br J Sports Med. 2016;50(5):281-291. doi:10.1136/bjsports-2015-094758"},{type:"paragraph",text:"8. Nuuttila OP, Uusitalo A, Kokkonen VP, Weerarathna N, Kyröläinen H. Monitoring fatigue state with heart rate-based and subjective methods during intensified training in recreational runners. Eur J Sport Sci. 2024;24(7):857-869. doi:10.1002/ejsc.12115"},{type:"paragraph",text:"9. Nuuttila OP, Nummela A, Korhonen E, Häkkinen K, Kyröläinen H. Individualized Endurance Training Based on Recovery and Training Status in Recreational Runners. Med Sci Sports Exerc. 2022;54(10):1690-1701. doi:10.1249/MSS.0000000000002968"},{type:"paragraph",text:"10. Laurent CM, Green JM, Bishop PA, et al. A practical approach to monitoring recovery: development of a perceived recovery status scale. J Strength Cond Res. 2011;25(3):620-628. doi:10.1519/JSC.0b013e3181c69ec6"},{type:"paragraph",text:"11. Ten Haaf T, van Staveren S, Oudenhoven E, et al. Prediction of Functional Overreaching From Subjective Fatigue and Readiness to Train After Only 3 Days of Cycling. Int J Sports Physiol Perform. 2017;12(Suppl 2):S287-S294. doi:10.1123/ijspp.2016-0404"},{type:"paragraph",text:"12. Flatt AA, Globensky L, Bass E, Sapp BL, Riemann BL. Heart Rate Variability, Neuromuscular and Perceptual Recovery Following Resistance Training. Sports (Basel). 2019;7(10):225. Published 2019 Oct 18. doi:10.3390/sports7100225"},{type:"paragraph",text:"13. Thamm A, Freitag N, Figueiredo P, et al. Can Heart Rate Variability Determine Recovery Following Distinct Strength Loadings? A Randomized Cross-Over Trial. Int J Environ Re
3s Public Health. 2019;16(22):4353. Published 2019 Nov 7. doi:10.3390/ijerph16224353"},{type:"paragraph",text:"14. Martinmäki K, Rusko H, Kooistra L, Kettunen J, Saalasti S. Intraindividual validation of heart rate variability indexes to measure vagal effects on hearts. Am J Physiol Heart Circ Physiol. 2006;290:640â647."},{type:"paragraph",text:"15. Stanley J, Peake JM, Buchheit M. Cardiac parasympathetic reactivation following exercise: implications for training prescription. Sports Med. 2013;43(12):1259-1277. doi:10.1007/s40279-013-0083-4"},{type:"paragraph",text:"16. Seipäjärvi SM, Tuomola A, Juurakko J, et al. Measuring psychosocial stress with heart rate variability-based methods in different health and age groups. Physiol Meas. 2022;43(5):10.1088/1361-6579/ac6b7c. Published 2022 May 25. doi:10.1088/1361-6579/ac6b7c"},{type:"paragraph",text:"17. Granero-Gallegos A, González-Quiles A, Plews D, Carrasco-Poyatos M. HRV-Based Training for Improving VO2max in Endurance Athletes. A Systematic Review with Meta-Analysis. Int J Environ Res Public Health. 2020;17(21):7999. Published 2020 Oct 30. doi:10.3390/ijerph17217999"},{type:"paragraph",text:"18. Dücking P, Zinner C, Trabelsi K, et al. Monitoring and adapting endurance training on the basis of heart rate variability monitored by wearable technologies: A systematic review with meta-analysis. J Sci Med Sport. 2021;24(11):1180-1192. doi:10.1016/j.jsams.2021.04.012"},{type:"paragraph",text:"19. Bittencourt D, de Oliveira RM, da Silva DG, et al. Effects of individualized resistance training prescription with heart rate variability on muscle strength, muscle size and functional performance in older women. Front Physiol. 2024;15:1472702. Published 2024 Dec 17. doi:10.3389/fphys.2024.1472702"},{type:"paragraph",text:"20. De Oliveira RM, Ugrinowitsch C, Kingsley JD, et al. Effect of individualized resistance training prescription with heart rate variability on individual muscle hypertrophy and strength responses. Eur J Sport Sci. 2019;19(8):1092-1100. doi:10.1080/17461391.2019.1572227"},{type:"paragraph",text:"21. Larsen S, Kristiansen E, van den Tillaar R. Effects of subjective and objective autoregulation methods for intensity and volume on enhancing maximal strength during resistance-training interventions: a systematic review. PeerJ. 2021;9:e10663. Published 2021 Jan 12. doi:10.7717/peerj.10663"},{type:"paragraph",text:"22. Zhang X, Li H, Bi S, Luo Y, Cao Y, Zhang G. Auto-Regulation Method vs. Fixed-Loading Method in Maximum Strength Training for Athletes: A Systematic Review and Meta-Analysis. Front Physiol. 2021;12:651112. Published 2021 Mar 12. doi:10.3389/fphys.2021.651112"}]},{id:"ville-isola-ja-blokki-yhteistyohon",category:"news",title:"Ville Isola ja Blokki yhteistyöhön",date:"2026-09-04",excerpt:"Blokki vahvistaa tieteellistä asiantuntemustaan aloittamalla yhteistyön liikuntatieteiden maisteri ja väitöskirjatutkija Ville Isolan kanssa.",image:"/images/henkilosto/Ville_Isola.jpeg",author:"Janne Hautala",authorLanguage:"fi",authorImage:"/images/henkilosto/Janne Hautala.jpg",content:[{type:"paragraph",text:"Blokki vahvistaa tieteellistä asiantuntemustaan aloittamalla yhteistyön liikuntatieteiden maisteri ja väitöskirjatutkija Ville Isolan kanssa. Isola toimii jatkossa Blokkin neuvonantajana erityisesti voimaharjoitteluun ja ravitsemukseen liittyvissä kokonaisuuksissa."},{type:"paragraph",text:"Isola tunnetaan fitness- ja voimaharjoittelun parissa sekä valmentajien kouluttajana. Hänellä on vahva tausta erityisesti voimaharjoittelun, kehonkoostumuksen ja ravitsemuksen parissa, ja hän on kouluttanut alan ammattilaisia myös kansainvälisesti. Hän toimii kansainvälisen fitness- ja kehonrakennusliiton IFBB:n (International Fitness and Bodybuilding Federation) valmentajakomitean puheenjohtajana sekä Suomen Fitnessurheilu ry:n toiminnanjohtajana. Liikuntatieteiden maisterin tutkinnon lisäksi Isola työstää parhaillaan väitöskirjaa, mikä syventää entisestään hänen tutkimuspohjaista otettaan valmennukseen."},{type:"paragraph",text:"Yhteistyöllä on Blokille myös henkilökohtainen tausta. Blokkin toimitusjohtaja Janne Hautala ja Isola tuntevat toisensa jo yliopistoajoilta Jyväskylän yliopiston liikuntabiologian valmennus- ja testausopin maisterivaiheesta."},{type:"blockquote",text:'"Meille on alusta asti ollut tärkeää, ettei Blokki ole vain teknisesti edistyksellinen valmennusohjelmisto. Haluamme, että sen taustalla oleva valmennusajattelu perustuu mahdollisimman vahvasti tutkittuun tietoon ja parhaaseen saatavilla olevaan asiantuntemukseen. Ville tuo meille erityisesti voima- ja ravitsemuspuolelle sellaista osaamista ja näkemystä, jota haluamme hyödyntää sekä tuotekehityksessä että valmentajille suunnatussa sisällössä", Hautala sanoo.',attribution:"â Janne Hautala"},{type:"paragraph",text:"Yhteistyö näkyy konkreettisesti Blokkin voima- ja ravitsemusominaisuuksien kehittämisessä. Isola tuo asiantuntemustaan muun muassa siihen, millaisiin periaatteisiin mm. ohjelmointi ja ravitsemukseen liittyvät ratkaisut ohjelmistossa rakennetaan."},{type:"blockquote",text:'"Tekoäly on muuttamassa personal trainerien j
3a valmentajien työtä perusteellisesti. Nykypäivän valmentaja tarvitsee tutkittuun tietoon perustuvia työkaluja, jotka tukevat yksilöllistä valmennusta ja parempaa päätöksentekoa. Blokki AI vastaa juuri tähän tarpeeseen, ja haluan olla mukana rakentamassa siitä kansainvälistä suunnannäyttäjää voima-, ravitsemus- ja kehonkoostumusvalmennuksessa", Isola sanoo.',attribution:"â Ville Isola"},{type:"subheader",text:"Tiede ei saa jäädä pelkäksi markkinointipuheeksi"},{type:"paragraph",text:"Samalla yhteistyö vahvistaa Blokkin yhtä keskeistä tavoitetta: yhdistää valmennustiede, kokeneiden valmentajien asiantuntemus ja tekoäly tavalla, joka auttaa valmentajia tekemään laadukkaampaa ja yksilöllisempää valmennusta tehokkaammin. Sama periaate on ohjannut Blokkin kehitystyötä laajemminkin, esimerkiksi kun sovellukseen on rakennettu HYROX-tavoiteprofiili, kehitystyö ei ole lähtenyt liikkeelle tekoälyltä kysymällä, vaan lajin tuoreimman tutkimustiedon läpikynnistä ja analyysin rakentamisesta, jonka pohjalta tekoÃ
3¤lylle on vasta sen jälkeen opetettu, miten tietoa hyödynnetään valmennuksessa."},{type:"paragraph",text:'"Tieteellinen pohja ei saa jäädä meille vain markkinointiviestiksi. Sen pitää näkyä siinä, miten ohjelmisto ajattelee, millaisia ehdotuksia se tekee valmentajalle ja mihin nämä ehdotukset perustuvat. Villen kanssa pystymme vahvistamaan tätä erityisesti voima- ja ravitsemuspuolella", Hautala sanoo.'},{type:"paragraph",text:"Yhteistyö on osa Blokkin laajempaa tavoitetta rakentaa valmennusalan ohjelmistoa, jossa tekoäly ei korvaa valmentajan ammattitaitoa, vaan tuo tutkitun tiedon ja datan entistä paremmin osaksi valmentajan päivittäistä päätöksentekoa. Ajatus kiteyttää koko Blokkin filosofian: sovellus ei ole valmis valmennusohjelma eikä tekoälyvalmentaja, vaan valmentajan työpari, joka hoitaa aikaa vievät taustatyöt, jotta valmentaja voi keskittyä siihen, mikä ratkaisee asiakkaan kokemuksen."},{type:"paragraph",text:"Lisätiedot:"},{type:"paragraph",text:"Janne Hautala, toimitusjohtaja, Blokki AI Oy"},{type:"paragraph",text:"Blokki on suomalainen liikunta- ja valmennusalan tekoälyratkaisuja kehittävä yritys, joka tarjoaa tekoälypohjaista valmennus- ja hyvinvointiohjelmistoa personal trainereille, valmentajille ja yritysasiakkaille."}]},{id:"blokki-julkaistaan-kaikkien-saataville",category:"news",title:"Tänään Blokki julkaistaan kaikkien saataville",date:"2026-09-01",excerpt:"Blokki julkaistaan tänään kaikille, ja sen tavoitteena on tehdä valmentajan työstä vaikuttavampaa, kannattavampaa ja kevyempää.",image:"/images/launch.png",author:"Janne Hautala",authorLanguage:"fi",authorImage:"/images/henkilosto/Janne Hautala.jpg",content:[{type:"subheader",text:"Toimitusjohtajan terveiset"},{type:"paragraph",text:"Tänään on meille iso päivä. Blokki julkaistaan kaikkien saataville. Tätä hetkeä kohti on tehty töitä pitkään, mutta itselleni kyse ei ole lopulta vain uuden ohjelmiston julkaisemisesta. Blokki syntyi ongelmasta, jonka näin ensin omassa työssäni jo reilu 15 vuotta sitten ja myöhemmin yhä uudelleen muiden valmentajien arjessa."},{type:"paragraph",text:"Opiskelin liikuntatieteitä ja tein samalla valmennustyötä. Mitä enemmän asiakkaita tuli, sitä enemmän aikaa kului kaikkeen siihen työhön, jota asiakas ei välttämättä koskaan näe: ohjelmien suunnitteluun ja päivittämiseen, harjoittelun ja datan analysointiin, seurantaan ja valmisteluun. Yhtälö oli hankala. Halusin tehdä mahdollisimman hyvää ja yksilöllistä valmennusta, mutta samalla juuri se söi aikaa kaikkein tärkeimmältä eli asiakkaalta."},{type:"paragraph",text:"Myöhemmin työskentelin hyvinvointiteknologian parissa, ja vuosien varrelta vyölle on kertynyt varmasti tuhansia keskusteluja hyvinvointialan yrittäjien ja valmentajien kanssa. Samat haasteet nousivat esiin yhä uudelleen. Miten tehdä laadukasta ja yksilöllistä valmennusta niin, että työ olisi samalla kannattavaa ja oma aika riittäisi myös muuhun elämään? Monelle työpäivä ei pääty viimeiseen asiakastapaamiseen. Sen jälkeen avataan läppäri, päivitetään ohjelmia, käydään läpi asiakkaiden dataa ja valmistellaan seuraavia päiviä. Pahimmillaan sama läppäri kulkee mukana myös lomalle. Näistä kokemuksista jäi mieleen yksi kysymys: voisiko valmentaja tehdä työnsä todella hyvin ilman, että työn täytyy viedä lähes kaikki käytettävissä oleva aika?"},{type:"subheader",text:"Uskomme, että valmentajan merkitys kasvaa"},{type:"paragraph",text:"Tekoälystä puhuttaessa huomio menee helposti siihen, mitä kaikkea ihminen voidaan korvata tekemästä. Me lähdemme Blokilla toisesta suunnasta. Uskomme, että mitä enemmän teknologia kehittyy, sitä arvokkaammaksi ihmisen rooli valmennuksessa muuttuu. Tekoäly voi käsitellä valtavan määrän dataa, analysoida harjoittelua ja palautumista, valmistella ohjelmia, seurata kehitystä ja huomata asioita, joiden läpikäyntiin ihmiseltä kuluisi paljon aikaa."},{type:"paragraph",text:"Mutta se ei ole valmentamisen ydin. Valmentajan pitää tuntea asiakkaansa, osata kuunnella, kysyä oikeita kysymyksiä, motivoida, haastaa ja josku
3s myös ymmärtää asioita, joita mikään datapiste ei kerro. Siksi emme rakentaneet Blokkista tekoälyvalmentajaa. Rakensimme tekoälyn valmentajalle."},{type:"subheader",text:"Yhden hengen yrityksen ei tarvitse tuntua yhden hengen yritykseltä"},{type:"paragraph",text:"Moni personal trainer toimii käytännössä yksin. Sama ihminen on valmentaja, ohjelmoija, asiakaspalvelija, analyytikko, myyjä ja yrittäjä. Kun asiakasmäärä kasvaa, myös kaikki taustalla tehtävä työ kasvaa. Tähän haluamme tuoda muutoksen. Ajattelemme Blokkia vähän kuin valmentajan omana tiiminä, joka analysoi, valmistelee, seuraa ja nostaa olennaisia asioita esiin samalla, kun valmentaja itse keskittyy asiakkaisiinsa."},{type:"paragraph",text:"Tekoäly ei kuitenkaan johda valmennusprosessia. Valmentaja johtaa. Blokki tekee töitä hänen puolestaan. Tavoitteemme on, että yhden hengen valmennusyritys voisi tulevaisuudessa toimia tavalla, joka aikaisemmin olisi vaatinut kokonaisen tiimin. Silloin säästynyt aika voidaan käyttää siihen, mikä kullekin valmentajalle on tärkeää: parempaan asiakastyöhön, yrityksen kasvattamiseen, oman osaamisen kehittämiseen tai yksinkertaisesti siihen, ettei läppäriä tarvitse avata illalla."},{type:"subheader",text:"Haluamme samalla nostaa valmennustyön arvoa"},{type:"paragraph",text:"Blokkia rakentaessa meille on tullut yhä selvemmäksi, ettei kyse ole vain valmentajan ajan säästämisestä. Haluamme olla mukana muuttamassa sitä, miten personal training nähdään. Hyvä valmentaja ei ole ihminen, joka vain kirjoittaa harjoitusohjelmia. Hän auttaa ihmisiä ratkaisemaan heille merkityksellisiä ongelmia ja saavuttamaan asioita, joilla voi olla valtava vaikutus heidän elämäänsä."},{type:"paragraph",text:"Siksi haluamme auttaa valmentajia myös rakentamaan parempia palveluita ja kannattavampaa liiketoimintaa. Teknologian pitäisi mahdollistaa se, että valmentaja pystyy palvelemaan asiakkaitaan paremmin ilman, että hänen täytyy tehdä jatkuvasti enemmän töitä."},{type:"subheader",text:"Tästä alkaa seuraava vaihe"},{type:"paragraph",text:"Blokki perustettiin vuonna 2025, mutta tämän päivän julkaisuun johtanut työ alkoi paljon aikaisemmin. Matkan varrella Blokkia on rakennettu yhdessä yli sadan valmentajan kanssa ja ajatuksia on kerätty yli 250 alan ammattilaiselta. Silti tämä tuntuu enemmän lähtöviivalta kuin maalilta."},{type:"paragraph",text:"Meidän tavoitteemme on iso. Haluamme rakentaa uuden standardin yksilölliselle valmennukselle ja samalla auttaa tekemään valmentamisesta ammatin, jossa voi tehdä erinomaista työtä, rakentaa kannattavaa liiketoimintaa ja silti pitää kiinni myös muusta elämästä. Teknologia tulee muuttamaan valmennusalaa joka tapauksessa. Me haluamme varmistaa, että muutos tekee valmentajasta tärkeämmän, ei tarpeettoman."},{type:"paragraph",text:"Terveisin,"},{type:"paragraph",text:"Janne Hautala"},{type:"paragraph",text:"Toimitusjohtaja ja perustaja"},{type:"paragraph",text:"Blokki AI Oy"}]},{id:"blokki-ja-bowellness-yhteistyohon",category:"news",title:"Blokki ja BoWellness aloittavat yhteistyön â harjoituspankki täydentyy fysioterapialähtöisen BoWellness®-konseptin harjoitteilla",date:"2026-08-27",excerpt:"Blokkin harjoituspankki täydentyy BoWellness-konseptin fysioterapialähtöisillä liikkuvuus- ja kehotietoisuusharjoitteilla.",image:"/images/bowellness.jpg",author:"Elisa Juntunen",authorLanguage:"fi",authorImage:"/images/henkilosto/Elisa Juntunen.jpg",content:[{type:"paragraph",emphasis:"semibold",text:"Suomalainen tekoälypohjainen valmennusalusta Blokki ja fysioterapialähtöisen BoWellness®-konseptin kehittänyt Bowellness Oy aloittavat yhteistyön. Blokkin harjoituspankki täydentyy konseptin mukaisilla harjoitteilla ja tarjoaa Blokkin alustaa käyttäville mahdollisuuden valmentaa entistä monipuolisemmin, nyt myös liikkuvuuden ja kehotietoisuuden osa-alueilla, jotta ohjelmointi ei jää yksin perinteisen voima- ja kestävyysharjoittelun varaan."},{type:"paragraph",text:"BoWellness®-harjoituspankki julkaistaan 01.09.2026 Blokkin valmennusalustalla alustan lanseerauksen yhteydessä. Yhteistyö mahdollistaa siis BoWellness®-konseptin mukaisen harjoittelun ja harjoitusohjelmien luomisen heti, kun alusta julkaistaan kaikkien saataville. Valmentajat voivat nyt luoda entistä kokonaisvaltaisemmin koko kehon hyvinvointia tukevia harjoitusohjelmia asiakkailleen."},{type:"blockquote",text:'"Meidän tehtävämme Blokissa on auttaa valmentajaa onnistumaan, ja liikkuvuus on ollut osa-alue, jota on ollut vaikea tukea yhtä laadukkaasti kuin voima- tai kestävyysharjoittelua. BoWellness-yhteistyön myötä valmentajilla on nyt käytössään fysioterapiaosaamiseen pohjautuvat liikkuvuusharjoitteet suoraan Blokin harjoituspankissa. Ohjelmointi monipuolistuu merkittävästi, kun mukaan tulee erittäin tärkeät osa-alueet, liikkuvuus ja kehotietoisuus. Samalla on tärkeää, että myös BoWellness-valmentaja pääsee helposti hyödyntämään BoWellnesksen liikepankkia Blokkin kautta ja saa samalla käyttöönsä myös muut valmennuksen osa-alueet, kuten voima- ja kestävyysharjoittelun, osaksi samaa ohjelmointia. Näin valmentaja voi rakentaa asiakkaalle todella kokonaisvaltaisen, koko kehon hyvinvointia tukevan ohjelman, ilman että se lisää hänen omaa työmääräänsä.â',attribution:"â Janne Hautala, toimitusjohtaja, Blokki"},{type:"blockquote",text:'"Yhteistyö Blokkin kanssa on meille tär
3keä askel BoWellness-konseptin kehityksessä. Valmentajamme saavat jatkossa BoWellness-liikepankin lisäksi käyttöönsä monipuolisen digitaalisen valmennustyökalun, jonka avulla asiakkaalle voidaan rakentaa yksilöllisiä ja kokonaisvaltaisia harjoitusohjelmia. Samalla tämä avaa valmentajille uusia mahdollisuuksia kehittää palveluitaan ja kasvattaa liiketoimintaansa."',attribution:"â Hanna Rinta, CEO, Bowellness Oy"},{type:"subheader",text:"Blokki lyhyesti"},{type:"paragraph",text:"Blokki on suomalainen, tekoälypohjainen valmennusalusta, joka auttaa valmentajia automatisoimaan valmennusprosessejaan asiakkaan dataan pohjautuen. Automatisoinnilla säästetty aika tarjoaa mahdollisuuden valmentaa entistä yksilöllisemmin, monipuolisemmin ja vuorovaikutteisemmin. Aikaa jää asiakassuhteen ylläpidon, kuten motivoinnin, ohjeistamisen ja kannustamisen, lisäksi liiketoiminnan kasvattamiseen, kuten myyntiin ja markkinointiin. Blokkin tavoitteena on vähentää esimerkiksi kuntoilu- ja ravitsemusohjelmien suunnitteluun kuluvaa ilmaista työtä ja työajan ulkopuolella tapahtuvaa taustatyötä sekä tehdä valmentajan työstä kannattavampaa."},{type:"paragraph",text:"Blokkin kehitys alkoi väitöskirjaan perustuvana tutkimushankkeena Jyväskylän yliopistossa, ja alustan menetelmät perustuvat tutkittuun tietoon. Alusta hyödyntää loppukäyttäjien kuormitusdataa, joka mahdollistaa yksilöllisten treeniohjelmien luomisen. Blokki integroituu yleisimpiin harjoituslaitteisiin (mm. Polar, Suunto, Garmin) ja valmennusalustan lisäksi Blokkilla on sovellus, joka tarjoaa mahdollisuuden luoda loppukäyttäjille helpommin saavutettavia treeniohjelmia."},{type:"paragraph",text:"Blokki tuo liikunta-alan toimijoille aivan uudenlaisen tavan valmentaa, sillä sen skaalautuva alusta mahdollistaa suurienkin asiakasryhmien valmentamisen yksilöllisesti ja kannattavasti. Henkilökohtaisten valmentajien lisäksi Blokki tarjoaa palveluitaan myös organisaatioille ja kunnille."},{type:"subheader",text:"Bowellness lyhyesti"},{type:"paragraph",text:"Bowellness Oy on suomalainen liikunta- ja hyvinvointialan yritys, joka on kehittänyt fysioterapialähtöisen BoWellness®-konseptin ja sen keskiössä olevan BodyBow®-harjoituskaaren. Konsepti yhdistää fysioterapian, pilateksen ja ryhmäliikunnan uudella tavalla tarjoten liikunta-alan ammattilaisille valmiin koulutus- ja valmennusmallin, jonka avulla voidaan tuottaa laadukasta voima-, liikkuvuus- ja kehotietoisuusharjoittelua kaiken tasoisille liikkujille."},{type:"paragraph",text:"Suomessa valmistettava BodyBow-kaari on alun perin OMT-fysioterapeuttien kehittämä harjoitusväline, jonka anatominen muotoilu tukee kehon luonnollista liikettä, rangan liikkuvuutta ja syvien tukilihasten aktivointia. Konseptia hyödynnetään tällä hetkellä muun muassa pilates- ja joogastudioissa, kuntokeskuksissa, fysioterapiassa, urheiluopistoissa sekä yritysten hyvinvointipalveluissa."},{type:"paragraph",text:"Bowellness rakentaa kasvuaan kansainvälisesti yhdistämällä laadukkaan koulutuksen, digitaalisen valmennussisällön ja suomalaisen tuotekehityksen. Yrityksen tavoitteena on tarjota liikunta-alalle helposti käyttöönotettava ja kustannustehokas vaihtoehto perinteisille laitepilatesratkaisuille sekä auttaa liikunta-alan yrittäjiä kasvattamaan liiketoimintaansa erottuvan, kustannustehokkaan konseptin avulla."},{type:"subheader",text:"Lisätietoja"},{type:"contactHeader",text:"Blokki"},{type:"contact",label:"Elisa Juntunen, markkinointi- ja viestintäpäällikkö, 0509113725",email:"[email protected]",website:"www.blokki.ai",websiteUrl:"https://www.blokki.ai/"},{type:"contactHeader",text:"Bowellness Oy"},{type:"contact",label:"Hanna Rinta, toimitusjohtaja, 040 831 6778",email:"[email protected]",website:"www.bowellness.fi",websiteUrl:"http://www.bowellness.fi/"}]},{id:"vaitoskirjasta-valmentajien-tekoalytyokaluksi",category:"blog",title:"Väitöskirjasta valmentajien tekoälytyökaluksi",date:"2026-08-06",excerpt:"Blokkin tarina sai alkunsa vuonna 2021 väitöskirjatutkimuksesta Jyväskylän yliopistossa. Nyt sen pohjalta rakentuu tekoälypohjainen valmennuskumppani.",image:"/images/henkilosto/Blokki_tiimi_2.jpg",author:"Elisa Juntunen",authorLanguage:"fi",authorImage:"/images/henkilosto/Elisa Juntunen.jpg",content:[{type:"paragraph",text:"Blokkin tarina sai alkunsa vuonna 2021, jolloin Elisa Juntusen ja Samuli Lehtisen ideana oli tehdä kattava tekoÃ
3¤lykumppani juoksuvalmentamiseen. Vuonna 2022 Olli-Pekka Nuuttila ehdotti tutkimushankkeen perustamista ja R2B rahoituksen hakemista väitöskirjaansa pohjautuen. Keväällä 2023 rahoitus myönnettiin ja hanke alkoi RunApp -nimellä Jyväskylän yliopistossa. Nuuttilan väitöskirjatutkimus loi pohjan metodeillemme ja muodostui koko hankkeen ytimeksi."},{type:"paragraph",text:"Toimitusjohtajamme Janne Hautala huomasi kuitenkin kasvavan tarpeen valmentajien keskuudessa ja hyvin nopeasti muutimme suuntaa laajempaa yleisöä ja koko hyvinvointialaa palvelevaksi hankkeeksi. Jannen idean myötä syntyi Blokki â tekoälytyökalu valmentajille."},{type:"subheader",text:"Tarve, joka syntyi kokemuksesta"},{type:"paragraph",text:"Hautala tunsi valmennusalan arjen omakohtaisesti: valmennusliiketoimintaa on vaikea saada kannattavaksi ilman valtavaa asiakasmäärää ja asiakasmäärän kasvaessa on lähes mahdon valmentaa yksilöllisesti. Valmennukseen liittyvään taustatyöhön kuluu myös valtava määrä ilmaista työaikaa. Siksi rakensimme Blokkin â tekoälypohjaisen valmennustyökalun, joka mahdollistaa yksilöllisen valmentamisen ja liiketoiminnan kasvattamisen ilman turhaa taustatyötä."},{type:"paragraph",text:"Uskomme ihmiseltä ihmiselle -valmentamiseen ja ajatuksenamme on, ettei tekoälyn tarvitse korvata valmentajan työtä. Sen tehtävä on toimia tiimikaverina, joka hoitaa rutiinit ja näin ollen vapauttaa aikaa sille, mikä oikeasti merkitsee: asiakassuhteiden ylläpitoon ja motivointiin sekä myyntiin ja markkinointiin."},{type:"subheader",text:"Asiakas kaiken keskiössä"},{type:"paragraph",text:"Tuotekehitystä on alusta asti tehty yhdessä valmentajien ja loppukäyttäjien eli liikkujien ja urheilijoiden kanssa, kuunnellen heidän toiveitaan ja tarpeitaan."},{type:"subheader",text:"Tiimi"},{type:"paragraph",text:"Blokkia johtaa toimitusjohtajamme Janne Hautala, ja tiimiin kuuluvat muun muassa Samuli Lehtinen (CPO), Elisa Juntunen (CMO), Joonas Jokivartio (CTO), Joonas Lyytinen (Sales Manager) sekä tutkijatohtori Olli-Pekka Nuuttila. Yritys on saanut myös EU-rahoitusta kehitystyöhönsä."},{type:"paragraph",text:"Blokkin missiona on auttaa valmentajia säästämään aikaa ja skaalaamaan liiketoimintaansa ilman, että yksilöllisen valmennuksen laadusta tarvitsee tinkiä. Tavoitteena on valmennusliiketoiminta, joka mahdollistaa paitsi kasvavan liikevaihdon, myös stressittömän arjen ja aikaa läheisille."},{type:"paragraph",text:"Blokkin beta-versio julkaistaan syksyllä 2026."}]}],en:[{id:"mukautuva-harjoittelu",category:"blog",title:"Adaptive training based on recovery status",date:"2026-09-29",excerpt:"Adaptive training means adjusting training load according to an individualâs recovery and readiness.",image:"/images/mukautuvaharjoittelu2.jpg",author:"Olli-Pekka Nuuttila",authorImage:"/images/henkilosto/Olli-Pekka Nuuttila.jpg",content:[{type:"subheader",text:"Adaptive training fine-tunes training according to recovery status"},{type:"paragraph",text:"It is a well-known phenomenon that the effects of strength and endurance training can vary between individuals even when the training has been similar. Behind this are several possible factors such as individual differences in training background, nutrition, sleep quality and genetics. External stress from life outside training can also weaken training responses. It is important to understand that even a single personâs training responses are not always the same from one training period to another. Training programmes are naturally built around an individualâs needs and goals, but it is equally important to fine-tune training to match the current situation. This principle is followed in adaptive training, where training load is adjusted according to the individualâs recovery and readiness."},{type:"subheader",text:"Recovery is a broad concept"},{type:"paragraph",text:"Recovery is a broad concept involving both physical and psychological dimensions. As useful as it is, there is no single metric that captures all aspects of recovery. When assessing recovery status, we can rely on subjective measures based on the individualâs own assessment, as well as objective measures that assess physiological functions at rest or during exertion. In general, subjective measures react more sensitively to changes in training load than objective measures. At the same time, a change in training load does not automatically mean a change in an individualâs recovery status, because similar training can stress people differently. The most reliable outcome is achieved when information from different perspectives is combined to build a complete picture."},{type:"subheader",text:"How should recovery be measured?"},{type:"paragraph",text:"Perceived recovery status can be assessed simply using a numerical scale, for example from 1 to 10. In endurance training, a question about perceived readiness to train has been found to be useful in identifying overreaching. Perception of performance relative to expectations can also provide information about load status. Asking about muscle soreness, in turn, can provide information on muscle-level recovery that may not always be captured by objective measures. Numerical estimates should always be interpreted in relation to the individualâs usual results. Persistently low mood beyond what is expected or a greater-than-expected decline in perceived recovery are situations worth considering in training planning."},{type:"paragraph",text:"With the widespread use of smartwatches, resting heart rate and heart rate variability have become increasingly used indicators of physiological recovery. Heart rate variability can be used to indirectly assess autonomic nervous system activity, especially the parasympathetic branch. In a good recovery state and with low stress load, parasympathetic activity is high, whereas in the opposite situation sympathetic activity dominates. Heart rate variability is influenced by both physical and psychological stress, so it does not reflect only the load caused by training. The general idea is that when parasympathetic activity is lower than normal, the bodyâs ability to adapt to training is also reduced."},{type:"subheader",text:"Evidence for adaptive training based on recovery status"},{type:"paragraph",text:"In endurance training research, training adjusted on the basis of heart rate variability has produced somewhat better training responses than fixed training prescriptions. There has also been the advantage that a larger proportion of individuals have developed at least moderately. In the case of strength training, the evidence for heart rate variability-guided programming is not yet as strong, and in some studies the training adaptations in fixed and adaptive training groups have been quite similar. However, in strength training there is positive evidence for so-called autoregulation, meaning adjustments to training content based on the dayâs readiness, such as perceived exertion or movement speed, rather than a tightly pre-scheduled program."},{type:"subheader",text:"In summary"},{type:"paragraph",text:"Reliable assessment of recovery status requires sufficiently regular monitoring. This helps us learn the normal range of variation in an individualâs results and identify deviations from it. When monitoring recovery, it is important to be willing to react to results that deviate from expectations. Measurement should not be an end in itself; the information should also be used actively as part of training."},{type:"subheader",text:"References"},{type:"paragraph",text:"1. Ahtiainen JP, Walker S, Peltonen H, et al. Heterogeneity in resistance training-induced muscle strength and mass responses in men and women of different ages. Age (Dordr). 2016;38(1):10. doi:10.1007/s11357-015-9870-1"},{type:"paragraph",text:"2. Vollaard NB, Constantin-Teodosiu D, Fredriksson K, et al. Systematic analysis of adaptations in aerobic capacity and submaximal energy metabolism provides a unique insight into determinants of human aerobic performance. J Appl Physiol (1985). 2009;
3106(5):1479-1486. doi:10.1152/japplphysiol.91453.2008"},{type:"paragraph",text:"3. Hautala AJ, Kiviniemi AM, Mäkikallio TH, et al. Individual differences in the responses to endurance and resistance training. Eur J Appl Physiol. 2006;96(5):535-542. doi:10.1007/s00421-005-0116-2"},{type:"paragraph",text:"4. Mann TN, Lamberts RP, Lambert MI. High responders and low responders: factors associated with individual variation in response to standardized training. Sports Med. 2014;44(8):1113-1124. doi:10.1007/s40279-014-0197-3"},{type:"paragraph",text:"5. Ruuska PS, Hautala AJ, Kiviniemi AM, Mäkikallio TH, Tulppo MP. Self-rated mental stress and exercise training response in healthy subjects. Front Physiol. 2012;3:51. Published 2012 Mar 12. doi:10.3389/fphys.2012.00051"},{type:"paragraph",text:"6. Odden IU, Hamarsland H, Odden TU, et al. Limited reproducibility of individual physiological adaptations to repeated endurance exercise training. J Appl Physiol (1985). 2026;141(1):38-57. doi:10.1152/japplphysiol.00154.2026"},{type:"paragraph",text:"7. Saw AE, Main LC, Gastin PB. Monitoring the athlete training response: subjective self-reported measures trump commonly used objective measures: a systematic review. Br J Sports Med. 2016;50(5):281-291. doi:10.1136/bjsports-2015-094758"},{type:"paragraph",text:"8. Nuuttila OP, Uusitalo A, Kokkonen VP, Weerarathna N, Kyröläinen H. Monitoring fatigue state with heart rate-based and subjective methods during intensified training in recreational runners. Eur J Sport Sci. 2024;24(7):857-869. doi:10.1002/ejsc.12115"},{type:"paragraph",text:"9. Nuuttila OP, Nummela A, Korhonen E, Häkkinen K, Kyröläinen H. Individualized Endurance Training Based on Recovery and Training Status in Recreational Runners. Med Sci Sports Exerc. 2022;54(10):1690-1701. doi:10.1249/MSS.0000000000002968"},{type:"paragraph",text:"10. Laurent CM, Green JM, Bishop PA, et al. A practical approach to monitoring recovery: development of a perceived recovery status scale. J Strength Cond Res. 2011;25(3):620-628. doi:10.1519/JSC.0b013e3181c69ec6"},{type:"paragraph",text:"11. Ten Haaf T, van Staveren S, Oudenhoven E, et al. Prediction of Functional Overreaching From Subjective Fatigue and Readiness to Train After Only 3 Days of Cycling. Int J Sports Physiol Perform. 2017;12(Suppl 2):S287-S294. doi:10.1123/ijspp.2016-0404"},{type:"paragraph",text:"12. Flatt AA, Globensky L, Bass E, Sapp BL, Riemann BL. Heart Rate Variability, Neuromuscular and Perceptual Recovery Following Resistance Training. Sports (Basel). 2019;7(10):225. Published 2019 Oct 18. doi:10.3390/sports7100225"},{type:"paragraph",text:"13. Thamm A, Freitag N, Figueiredo P, et al. Can Heart Rate Variability Determine Recovery Following Distinct Strength Loadings? A Randomized Cross-Over Trial. Int J Environ Res Public Health. 2019;16(22):4353. Published 2019 Nov 7. doi:10.3390/ijerph16224353"},{type:"paragraph",text:"14. Martinmäki K, Rusko H, Kooistra L, Kettunen J, Saalasti S. Intraindividual validation of heart rate variability indexes to measure vagal effects on hearts. Am J Physiol Heart Circ Physiol. 2006;290:640â647."},{type:"paragraph",text:"15. Stanley J, Peake JM, Buchheit M. Cardiac parasympathetic reactivation following exercise: implications for training prescription. Sports Med. 2013;43(12):1259-1277. doi:10.1007/s40279-013-0083-4"},{type:"paragraph",text:"16. Seipäjärvi SM, Tuomola A, Juurakko J, et al. Measuring psychosocial stress with heart rate variability-based methods in different health and age groups. Physiol Meas. 2022;43(5):10.1088/1361-6579/ac6b7c. Published 2022 May 25. doi:10.1088/1361-6579/ac6b7c"}
3,{type:"paragraph",text:"17. Granero-Gallegos A, González-Quiles A, Plews D, Carrasco-Poyatos M. HRV-Based Training for Improving VO2max in Endurance Athletes. A Systematic Review with Meta-Analysis. Int J Environ Res Public Health. 2020;17(21):7999. Published 2020 Oct 30. doi:10.3390/ijerph17217999"},{type:"paragraph",text:"18. Dücking P, Zinner C, Trabelsi K, et al. Monitoring and adapting endurance training on the basis of heart rate variability monitored by wearable technologies: A systematic review with meta-analysis. J Sci Med Sport. 2021;24(11):1180-1192. doi:10.1016/j.jsams.2021.04.012"},{type:"paragraph",text:"19. Bittencourt D, de Oliveira RM, da Silva DG, et al. Effects of individualized resistance training prescription with heart rate variability on muscle strength, muscle size and functional performance in older women. Front Physiol. 2024;15:1472702. Published 2024 Dec 17. doi:10.3389/fphys.2024.1472702"},{type:"paragraph",text:"20. De Oliveira RM, Ugrinowitsch C, Kingsley JD, et al. Effect of individualized resistance training prescription with heart rate variability on individual muscle hypertrophy and strength responses. Eur J Sport Sci. 2019;19(8):1092-1100. doi:10.1080/17461391.2019.1572227"},{type:"paragraph",text:"21. Larsen S, Kristiansen E, van den Tillaar R. Effects of subjective and objective autoregulation methods for intensity and volume on enhancing maximal strength during resistance-training interventions: a systematic review. PeerJ. 2021;9:e10663. Published 2021 Jan 12. doi:10.7717/peerj.10663"},{type:"paragraph",text:"22. Zhang X, Li H, Bi S, Luo Y, Cao Y, Zhang G. Auto-Regulation Method vs. Fixed-Loading Method in Maximum Strength Training for Athletes: A Systematic Review and Meta-Analysis. Front Physiol. 2021;12:651112. Published 2021 Mar 12. doi:10.3389/fphys.2021.651112"}]},{id:"ville-isola-ja-blokki-yhteistyohon",category:"news",title:"Ville Isola and Blokki Begin Cooperation",date:"2026-09-04",excerpt:"Blokki is strengthening its scientific expertise by starting cooperation with sports scientist and doctoral researcher Ville Isola.",image:"/images/henkilosto/Ville_Isola.jpeg",author:"Janne Hautala",authorImage:"/images/henkilosto/Janne Hautala.jpg",content:[{type:"paragraph",text:"Blokki is strengthening its scientific expertise by starting cooperation with sports scientist and doctoral researcher Ville Isola. Isola will continue as an advisor to Blokki, especially on strength training and nutrition-related topics."},{type:"paragraph",text:"Isola is known in the worlds of fitness and strength training as well as for educating coaches. He has a strong background in strength training, body composition, and nutrition, and he has trained professionals in the field internationally as well. He serves as chair of the coaching committee of the International Fitness and Bodybuilding Federation (IFBB) and as executive director of Suomen Fitnessurheilu ry. In addition to his masterâs degree in sports science, Isola is currently working on his doctoral dissertation, further deepening his research-based approach to coaching."},{type:"paragraph",text:"The cooperation also has a personal background for Blokki. Blokki CEO Janne Hautala and Isola have known each other since their university years in the masterâs programme in coaching and testing science at the University of Jyväskylä."},{type:"blockquote",text:'"From the beginning, it has been important to us that Blokki is not just technically advanced coaching software. We want the coaching thinking behind it to be as strongly based as possible on researched knowledge and the best available expertise. Ville brings us know-how and perspective especially in strength and nutrition that we want to use both in product development and in content for coaches," Hautala says.',attribution:"â Janne Hautala"},{type:"paragraph",text:"The cooperation will be visible in practice through the development of Blokkiâs strength and nutrition features. Isola will contribute expertise, for example, to the principles on which programming and nutrition-related solutions are built in the softw
3are."},{type:"blockquote",text:'"AI is fundamentally changing the work of personal trainers and coaches. Todayâs coach needs tools based on researched knowledge that support individual coaching and better decision-making. Blokki answers exactly this need, and I want to be involved in building it into an international frontrunner in strength, nutrition, and body composition coaching," Isola says.',attribution:"â Ville Isola"},{type:"subheader",text:"Science must not remain just marketing talk"},{type:"paragraph",text:"At the same time, the cooperation strengthens one of Blokkiâs key goals: combining coaching science, the expertise of experienced coaches, and AI in a way that helps coaches deliver higher-quality and more individualized coaching more efficiently. The same principle has guided Blokkiâs development more broadly. For example, when the applicationâs HYROX target profile was built, development did not start by asking AI first; instead, it began with reviewing the latest research on the sport and building the analysis that later taught AI how the information should be used in coaching."},{type:"paragraph",text:'"Scientific grounding must not remain just a marketing message for us. It has to show in how the software thinks, what kinds of suggestions it makes to the coach, and what those suggestions are based on. With Ville, we can strengthen that especially on the strength and nutrition side," Hautala says.'},{type:"paragraph",text:"The cooperation is part of Blokkiâs broader goal of building coaching software where AI does not replace a coachâs expertise, but instead brings researched knowledge and data more effectively into the coachâs daily decision-making. The idea captures the philosophy of Blokki: the app is not a ready-made coaching programme or an AI coach, but a coachâs working partner that handles the time-consuming background work so the coach can focus on what shapes the client experience."},{type:"paragraph",text:"More information:"},{type:"paragraph",text:"Janne Hautala, CEO, Blokki AI Oy"},{type:"paragraph",text:"Blokki is a Finnish company developing AI solutions for the exercise and coaching sector, offering AI-powered coaching and wellbeing software for personal trainers, coaches, and business clients."}]},{id:"blokki-julkaistaan-kaikkien-saataville",category:"news",title:"Blokki Launches for Everyone Today",date:"2026-09-01",excerpt:"Blokki launches today for everyone, with the goal of making coachesâ work more impactful, profitable, and lighter.",image:"/images/launch.png",author:"Janne Hautala",authorImage:"/images/henkilosto/Janne Hautala.jpg",content:[{type:"subheader",text:"CEOâs message"},{type:"paragraph",text:"Today is a big day for us. Blokki is being released to everyone. We have been working toward this moment for a long time, but for me this is not just about launching a new piece of software. Blokki was born from a problem I first saw in my own work more than 15 years ago, and later kept seeing again and again in other coachesâ everyday reality."},{type:"paragraph",text:"I studied sports science while also working as a coach. The more clients I had, the more time went into the work the client does not always see: planning and updating programs, analyzing training and data, tracking progress, and preparing for what comes next. The equation was difficult. I wanted to deliver as good and as personalized coaching as possible, but at the same time that very work took time away from the most important part of all: the client."},{type:"paragraph",text:"Later I worked in health technology, and over the years I have had thousands of conversations with entrepreneurs and coaches in the wellbeing industry. The same challenges kept coming up. How do you deliver high-quality, personalized coaching while keeping the work profitable and leaving enough time for the rest of life too? For many, the workday does not end with the last client meeting. After that, the laptop opens again, programs get updated, client data is reviewed, and the next days are prepared. In the worst case, the same laptop comes along on vacation as well. One question stayed with me through all of those experiences: could a coach do truly great work without the job c
3onsuming nearly all of their available time?"},{type:"subheader",text:"We believe the coachâs role will become even more important"},{type:"paragraph",text:"When people talk about AI, the focus often lands on everything humans might no longer need to do. We approach Blokki from a different angle. We believe that the more technology develops, the more valuable the human role in coaching becomes. AI can process huge amounts of data, analyze training and recovery, prepare programs, track progress, and surface insights that would take a person a lot of time to work through."},{type:"paragraph",text:"But that is not the core of coaching. A coach needs to know their clients, listen well, ask the right questions, motivate, challenge, and sometimes understand things that no data point can reveal. That is why we did not build Blokki as an AI coach. We built AI for coaches."},{type:"subheader",text:"A one-person business should not feel like a one-person business"},{type:"paragraph",text:"Many personal trainers effectively work alone. The same person is the coach, programmer, customer service agent, analyst, salesperson, and entrepreneur. As the client base grows, all the background work grows too. That is the change we want to bring. We think of Blokki a bit like a coachâs own team, one that analyzes, prepares, follows up, and highlights what matters while the coach focuses on their clients."},{type:"paragraph",text:"AI does not lead the coaching process, however. The coach leads. Blokki works on their behalf. Our goal is that in the future a one-person coaching business can operate in a way that previously would have required a full team. The time saved can then go toward what matters most to each coach: better client work, growing the business, developing their own skills, or simply not having to open the laptop at night."},{type:"subheader",text:"We also want to raise the value of coaching work"},{type:"paragraph",text:"As we have built Blokki, it has become increasingly clear that this is not only about saving a coachâs time. We want to help change how personal training is seen. A good coach is not someone who only writes workout plans. They help people solve problems that matter to them and achieve things that can have a huge impact on their lives."},{type:"paragraph",text:"That is why we also want to help coaches build better services and more profitable businesses. Technology should make it possible for a coach to serve clients better without constantly having to do more work."},{type:"subheader",text:"This is where the next phase begins"},{type:"paragraph",text:"Blokki was founded in 2025, but the work that led to todayâs launch began much earlier. Along the way, Blokki has been built together with more than a hundred coaches and informed by ideas from more than 250 professionals in the field. Even so, this feels more like a starting line than a finish line."},{type:"paragraph",text:"Our goal is big. We want to build a new standard for personalized coaching and help make coaching a profession where people can do excellent work, build a profitable business, and still keep room for the rest of life. Technology will change the coaching industry one way or another. We want to make sure that change makes the coach more important, not unnecessary."},{type:"paragraph",text:"Best regards,"},{type:"paragraph",text:"Janne Hautala"},{type:"paragraph",text:"CEO and Founder"},{type:"paragraph",text:"Blokki AI Oy"}]},{id:"blokki-ja-bowellness-yhteistyohon",category:"news",title:"Blokki and BoWellness Begin Cooperation â Exercise Bank Expanded with Exercises from the Physiotherapy-Based BoWellness® Concept",date:"2026-08-27",excerpt:"Blokkiâs exercise bank will be expanded with physiotherapy-based mobility and body awareness exercises from the BoWellness concept.",image:"/images/bowellness.jpg",author:"Elisa Juntunen",authorImage:"/images/henkilosto/Elisa Juntunen.jpg",content:[{type:"paragraph",emphasis:"semibold",text:"Finnish AI-powered coaching platform Blokki and Bowellness Oy, the developer of the physiotherapy-based BoWellness® concept, are beginning a cooperation. Blokkiâs exercise bank will be expanded with exercises from the concept, giving coaches using the Blokki platform the opportunity to coach more comprehensively, now also in the areas of mobility and body awareness, so that programming does not rely solely on traditional strength and endurance training."},{type:"paragraph",text:"The BoWellness® exercise bank will be launched on the Blokki coaching platform on 01.09.2026 alongside the platform launch. The cooperation will therefore make it possible to use the BoWellness® concept and create training programmes as soon as the platform is made available to everyone. Coaches can now create even more comprehensive training programmes that support their clientsâ
3whole-body wellbeing."},{type:"blockquote",text:'"Our task at Blokki is to help coaches succeed, and mobility has been an area that has been difficult to support as comprehensively as strength or endurance training. Through the cooperation with BoWellness, coaches now have access to mobility exercises based on physiotherapy expertise directly in Blokkiâs exercise bank. Programming becomes significantly more versatile when the very important areas of mobility and body awareness are included. At the same time, it is important that BoWellness coaches can easily make use of the BoWellness movement bank through Blokki and also gain access to other coaching areas, such as strength and endurance training, as part of the same programming. This allows coaches to build a truly comprehensive programme supporting their clientsâ whole-body wellbeing without increasing their own workload."',attribution:"â Janne Hautala, CEO, Blokki"},{type:"blockquote",text:'"The cooperation with Blokki is an important step forward in the development of the BoWellness concept. In addition to the BoWellness movement bank, our coaches will have access to a versatile digital coaching tool that enables them to build individual and comprehensive training programmes for their clients. At the same time, this opens up new opportunities for coaches to develop their services and grow their businesses."',attribution:"â Hanna Rinta, CEO, Bowellness Oy"},{type:"subheader",text:"Blokki in Brief"},{type:"paragraph",text:"Blokki is a Finnish AI-powered coaching platform that helps coaches automate their coaching processes based on client data. The time saved through automation creates an opportunity to coach more individually, comprehensively, and interactively. In addition to maintaining client relationships through motivation, guidance, and encouragement, coaches have more time for growing their business through sales and marketing. Blokkiâs goal is to reduce unpaid work spent, for example, on planning fitness and nutrition programmes and background work done outside working hours, while making coaching a more profitable profession."},{type:"paragraph",text:"Blokkiâs development began as a research project based on a doctoral dissertation at the University of Jyväskylä, and the platformâs methods are based on research. The platform uses end usersâ load data to enable the creation of individual training programmes. Blokki integrates with the most common training devices (including Polar, Suunto, and Garmin), and in addition to the coaching platform, Blokki has an application that makes it easier to create accessible training programmes for end users."},{type:"paragraph",text:"Blokki offers actors in the exercise industry an entirely new way to coach, as its scalable platform makes it possible to coach even large client groups individually and profitably. In addition to personal trainers, Blokki also provides its services to organisations and municipalities."},{type:"subheader",text:"Bowellness in Brief"},{type:"paragraph",text:"Bowellness Oy is a Finnish company in the exercise and wellbeing sector that has developed the physiotherapy-based BoWellness® concept and the BodyBow® exercise arch at its core. The concept combines physiotherapy, Pilates, and group exercise in a new way, offering exercise professionals a ready-made training and coaching model for delivering high-quality strength, mobility, and body awareness training to people of all levels."},{type:"paragraph",text:"The BodyBow arch, manufactured in Finland, is an exercise tool originally developed by OMT physiotherapists. Its anatomical design supports the bodyâs natural movement, spinal mobility, and activation of the deep stabilising muscles. The concept is currently used, among other places, in Pilates and yoga studios, fitness centres, physiotherapy, sports institutes, and corporate wellbeing services."},{type:"paragraph",text:"Bowellness is building international growth by combining high-quality education, digital coaching content, and Finnish product development. The companyâs goal is to offer the exercise industry an easy-to-adopt and cost-effective alternative to traditional equipment-based Pilates solutions, while helping exercise entrepreneurs grow their businesses with a distinctive, cost-effective concept."},{type:"subheader",text:"More Information"},{type:"contactHeader",text:"Blokki"},{type:"contact",label:"Elisa Juntunen, Marketing and Communications Manager, 0509113725",email:"[email protected]",website:"www.blokki.ai",websiteUrl:"https://www.blokki.ai/"},{type:"contactHeader",text:"Bowellness Oy"},{type:"contact",label:"Hanna Rinta, CEO, 040 831 6778",email:"[email protected]",website:"www.bowellness.fi",websiteUrl:"http://www.bowellness.fi/"}]},{id:"vaitoskirjasta-valmentajien-tekoalytyokaluksi",category:"blog",title:"From Doctoral Dissertation to an AI Tool for Coaches",date:"2026-08-06",excerpt:"Blokki's story began in 2021 as standard doctoral research at the University of Jyväskylä. Now, it has grown into an AI companion for coaches.",image:"/images/henkilosto/Blokki_tiimi_2.jpg",author:"Elisa Juntunen",authorImage:"/images/henkilosto/Elisa Juntunen.jpg",content:[{type:"paragraph",text:"Blokki's story began in 2021, when Elisa Juntunen and Samuli Lehtinen had the idea of creating a comprehensive AI partner for run coaching. In 2022, Olli-Pekka Nuuttila proposed establishing a research project and applying for R2B funding based on his doctoral dissertation. In spring 2023, the funding was granted, and the project began under the name RunApp at the University of Jyväskylä. Nuuttila's doctoral research laid the foundation for our methods and formed the core of the entire project."},{type:"paragraph",text:"However, our CEO Janne Hautala noticed a growing need among coaches, and very quickly we pivoted toward a project serving a wider audience and the entire wellness industry. Janne's idea gave birth to Blokki â an AI tool for coaches."},{type:"subheader",text:"A Need Born of Experience"}
3,{type:"paragraph",text:"Hautala knew the daily reality of the coaching industry firsthand: coaching businesses are difficult to make profitable without a massive number of clients, and as the client count grows, it is nearly impossible to coach individually. A massive amount of unpaid working hours is also spent on background work related to coaching. That is why we built Blokki â an AI-powered coaching tool that enables individual coaching and business scaling without unnecessary background work."},{type:"paragraph",text:"We believe in human-to-human coaching, and our thinking is that AI does not need to replace the coach. Its job is to act as a teammate that handles routines and thereby frees up time for what really matters: maintaining client relationships, motivation, as well as sales and marketing."},{type:"subheader",text:"The Client at the Core of Everything"},{type:"paragraph",text:"From the very beginning, product development has been done in collaboration with coaches and end-users, i.e., fitness enthusiasts and athletes, listening to their hopes and needs."},{type:"subheader",text:"The Team"},{type:"paragraph",text:"Blokki is led by our CEO Janne Hautala, and the team includes Samuli Lehtinen (CPO), Elisa Juntunen (CMO), Joonas Jokivartio (CTO), Joonas Lyytinen (Sales Manager), and Postdoctoral Researcher Olli-Pekka Nuuttila. The company has also received EU funding for its development work."},{type:"paragraph",text:"Blokki's mission is to help coaches save time and scale their business without compromising the quality of individual coaching. The goal is a coaching business that enables not only growing revenue but also a stress-free daily life and more time for loved ones."},{type:"paragraph",text:"Blokki's beta version will be released in the fall of 2026."}]}]};a.sv=a.en.map(e=>({...e,title:"vaitoskirjasta-valmentajien-tekoalytyokaluksi"===e.id?"FrÃ¥n doktorsavhandling till AI-verktyg för tränare":e.title,excerpt:"vaitoskirjasta-valmentajien-tekoalytyokaluksi"===e.id?"Blokkis berättelse började 2021 som en doktorsavhandling vid Jyväskylä universitet. Nu utvecklas en AI-kompanjon för tränare.":e.excerpt,content:e.content?e.content.map(e=>"string"!=typeof e.text?e:e.text.startsWith("Blokki's story began")?{type:"paragraph",text:"Blokkis berättelse började 2021, när Elisa Juntunen och Samuli Lehtinen fick idén att skapa en omfattande AI-partner för löpcoachning. Ã
r 2022 föreslog Olli-Pekka Nuuttila att man skulle starta ett forskningsprojekt och söka R2B-finansiering baserat pÃ¥ hans doktorsavhandlingsarbete. VÃ¥ren 2023 beviljades finansieringen och projektet startade under namnet RunApp vid Jyväskylä universitet. Nuuttilas doktorsavhandlingsarbete lade grunden för vÃ¥ra metoder ja bildade kärnan i hela projektet."}:e.text.startsWith("However, our CEO")?{type:"paragraph",text:"VÃ¥r VD Janne Hautala uppmärksammade dock ett växande behov bland tränare, och mycket snabbt ändrade vi riktning mot ett bredare projekt som betjänar hela friskvÃ¥rdsbranschen. Jannes idé gav upphov till Blokki â ett AI-verktyg för tränare."}:"A Need Born of Experience"===e.text?{type:"subheader",text:"Ett behov fött ur erfarenhet"}:e.text.startsWith("Hautala knew the daily")?{type:"paragraph",text:"Hautala kände till tränaryrkets vardag pÃ¥ nära hÃ¥ll: tränarverksamhet är svÃ¥r att fÃ¥ lönsam utan en enorm mängd klienter, och när antalet klienter växer är det nästan omöjligt att coacha individuellt. En enorm mängd obetald arbetstid läggs ocksÃ¥ pÃ¥ bakgrundsarbete. Därför byggde vi Blokki â ett AI-powered tränarverktyg som möjliggör individuell coachning och affärsskalning utan onödigt rutinarbete."}:e.text.startsWith("We believe in human-to-human")?{type:"paragraph",text:"Vi tror pÃ¥ coachning frÃ¥n människa till människa, och vÃ¥r tanke är att AI inte behöver ersätta tränaren. Dess uppgift är att fungera som en kollega som sköter rutiner och därmed frigör tid för det som verkligen räknas: att bibehÃ¥lla klientrelationer, motivation samt försäljning och marknadsföring."}:"The Client at the Core of Everything"===e.text?{type:"subheader",text:"Klienten i centrum för allt"}:e.text.startsWith("From the very beginning")?{type:"paragraph",text:"Produktutvecklingen har frÃ¥
3n början skett i samarbete med tränare och slutanvändare, det vill säga träningsentusiaster och idrottare, genom att lyssna pÃ¥ deras önskemÃ¥l och behov."}:"The Team"===e.text?{type:"subheader",text:"Teamet"}:e.text.startsWith("Blokki is led")?{type:"paragraph",text:"Blokki leds av vÃ¥r VD Janne Hautala, och i teamet ingÃ¥r bland annat Samuli Lehtinen (CPO), Elisa Juntunen (CMO), Joonas Jokivartio (CTO), Joonas Lyytinen (Sales Manager) samt forskardoktor Olli-Pekka Nuuttila. Företaget har även fÃ¥tt EU-finansiering för sitt utvecklingsarbete."}:e.text.startsWith("Blokki's mission is to help")?{type:"paragraph",text:"Blokkis mission är att hjälpa tränare att spara tid och skala sin verksamhet utan att göra avkall pÃ¥ kvaliteten i den individuella coachningen. MÃ¥let är en verksamhet som möjliggör inte bara växande intäkter utan ocksÃ¥ en stressfri vardag och tid för nära och kära."}:e.text.startsWith("Blokki's beta version")?{type:"paragraph",text:"Blokkis betaversion släpps hösten 2026."}:e):void 0})),a.de=a.en.map(e=>({...e,title:"vaitoskirjasta-valmentajien-tekoalytyokaluksi"===e.id?"Von der Dissertation zum KI-Werkzeug für Trainer":e.title,excerpt:"vaitoskirjasta-valmentajien-tekoalytyokaluksi"===e.id?"Die Geschichte von Blokki begann 2021 als Dissertationsforschung an der Universität Jyväskylä. Jetzt entsteht ein Partner.":e.excerpt,content:e.content?e.content.map(e=>"string"!=typeof e.text?e:e.text.startsWith("Blokki's story began")?{type:"paragraph",text:"Die Geschichte von Blokki begann im Jahr 2021, als Elisa Juntunen und Samuli Letinen die Idee hatten, einen umfassenden KI-Partner für das Lauftraining zu entwickeln. Im Jahr 2022 schlug Olli-Pekka Nuuttila vor, auf der Grundlage seiner Dissertation ein Forschungsprojekt zu gründen und R2B-Fördermittel zu beantragen. Im Frühjahr 2023 wurden die Fördermittel bewilligt, und das Projekt startete unter dem Namen RunApp an der Universität Jyväskylä. Nuuttilas Dissertationsforschung legte den Grundstein für unsere Methoden und bildete das Kernstück des gesamten Projekts."}:e.text.startsWith("However, our CEO")?{type:"paragraph",text:"Unser Geschäftsführer Janne Hautala bemerkte jedoch einen wachsenden Bedarf unter Trainern, und sehr schnell schwenkten wir auf ein Projekt um, das ein breiteres Publikum und die gesamte Wellnessbranche anspricht. Jannes Idee legte den Grundstein für Blokki â ein KI-Werkzeug für Trainer."}:"A Need Born of Experience"===e.text?{type:"subheader",text:"Ein Bedarf aus der Erfahrung geboren"}:e.text.startsWith("Hautala knew the daily")?{type:"paragraph",text:"Hautala kannte den Alltag der Coaching-Branche aus eigener Erfahrung: Coaching-Unternehmen sind ohne eine enorme Anzahl von Kunden nur schwer rentabel zu machen, und mit zunehmender Kundenzahl ist es fast unmöglich, individuell zu coachen. Auch für die mit dem Coaching verbundene Hintergrundarbeit wird eine enorme Menge an unbezahlter Arbeitszeit aufgewendet. Deshalb haben wir Blokki entwickelt â ein KI-gestütztes Coaching-Werkzeug, das individuelles Coaching und Geschäftsskalierung ohne unnötige Hintergrundarbeit ermöglicht."}:e.text.startsWith("We believe in human-to-human")?{type:"paragraph",text:"Wir glauben an das Coaching von Mensch zu Mensch, und unser Ansatz ist, dass die KI den Trainer nicht ersetzen muss. Ihre Aufgabe ist es, als Teamkollege zu agieren, der Routinen erledigt und so Zeit für das freisetzt, was wirklich zählt: die Pflege von Kundenbeziehungen, Motivation sowie Vertrieb und Marketing."}:"The Client at the Core of Everything"===e.text?{type:"subheader",text:"Der Kunde im Mittelpunkt von allem"}:e.text.startsWith("From the very beginning")?{type:"paragraph",text:"Die Produktentwicklung wurde von Anfang an gemeinsam mit Trainern und Endnutzern, d. h. Fitnessbegeisterten und Sportlern, durchgeführt und auf deren Wünsche und Bedürfnisse ausgerichtet."}:"The Team"===e.text?{type:"subheader",text:"Das Team"}:e.text.startsWith("Blokki is led")?{type:"paragraph",text:"Blokki wird von unserem Geschäftsführer Janne Hautala geleitet. Zum Team gehören unter anderem Samuli Lehtinen (CPO), Elisa Juntunen (CMO), Joonas Jokivartio (CTO), Joonas Lyytinen (Sales Manager) sowie der Postdoktorand Olli-Pekka Nuuttila. Das Unternehmen hat auÃerdem EU-Fördermittel für seine Entwicklungsarbeit erhalten."}:e.text.startsWith("Blokki's mission is to help")?{type:"paragraph",text:"Die Mission von Blokki ist es, Trainern zu helfen, Zeit zu sparen und ihr Unternehmen zu skalieren, ohne die Qualität des individuellen Coachings zu beeinträchtigen. Das Ziel ist ein Coaching-Geschäft, das nicht nur steigende Einnahmen ermöglicht, sondern auch einen stressfreien Alltag und Zeit für die Liebsten bietet."}:e.text.startsWith("Blokki's beta version")?{type:"paragraph",text:"Die Beta-Version von Blokki wird im Herbst 2026 veröffentlicht."}:e):void 0})),e.s(["ARTICLES_DATA",0,a])},32664,88734,47894,44867,e=>{"use strict";var a=e.i(43476),t=e.i(71645),i=e.i(57688),n=e.i(48148),s=e.i(61745),o=e.i(28857),r=e.i(16959);let l={features:{fi:"ominaisuudet",en:"features",sv:"funktioner",de:"funktionen"},product:{fi:"ohjelmointi",en:"programming",sv:"programmering",de:"programmierung"},clientApp:{fi:"asiakassovellus",en:"client-app",sv:"klientapp",de:"kunden-app"},tracking:{fi:"seuranta",en:"tracking",sv:"uppfoljning",de:"belastung-und-entwicklung"},nutrition:{fi:"ravitsemus",en:"nutrition",sv:"kost",de:"ernaehrung"},deviceIntegrations:{fi:"laiteintegraatiot",en:"device-integrations",sv:"enhetsintegrationer",de:"geraeteintegrationen"},pricing:{fi:"hinnat",en:"pricing",sv:"prissattning",de:"preise"},about:{fi:"meista",en:"about",sv:"om-oss",de:"ueber-uns"},research:{fi:"tutkimus",en:"research",sv:"forskning",de:"forschung"},testimonials:{fi:"palautteet",en:"testimonials",sv:"kundomdomen",de:"kundenstimmen"},waitlist:{fi:"jonottaminen",en:"waitlist",sv:"vantelista",de:"warteliste"},articles:{fi:"artikkelit",en:"articles",sv:"artiklar",de:"artikel"},materials:{fi:"ilmaiset-materiaalit",en:"free-materials",sv:"gratis-material",de:"kostenlose-materialien"},raffle:{fi:"arvonta",en:"raffle",sv:"utlottning",de:"gewinnspiel"},launch:{fi:"lanseeraus",en:"launch",sv:"lansering",de:"veranstaltung"},webinar:{fi:"webinaari",en:"webinar",sv:"webinar",de:"webinar"},forum:{fi:"forum",en:"forum",sv:"forum",de:"forum"},contact:{fi:"ota-yhteytta",en:"contact",sv:"kontakt",de:"kontakt"}};function u(e,a){return l[e][a]??l[e].fi}function h(e){return u("pricing",e)}e.s(["getAboutSlug",0,function(e){return u("about",e)},"getArticlesSlug",0,function(e){return u("articles",e)},"getMaterialsSlug",0,function(e){return u("materials",e)},"getPricingSlug",0,h,"getSectionSlug",0,u,"getWebinarSlug",0,function(e){return u("webinar",e)}],88734);let d={fi:"aloita-kokeilu",en:"begin-trial",sv:"borja-provperiod",de:"testphase-beginnen"},p={fi:"aloita-kokeilu-2",en:"begin-trial-2",sv:"borja-provperiod-2",de:"testphase-beginnen-2"};function m(e){return p[e]??p.en}e.s(["getBeginTrial2Slug",0,m],47894);var c=e.i(90712);let k={fi:"FI",en:"EN",sv:"SV",de:"DE"},g="inline-flex items-center rounded-full px-3 py-1.5 text-base font-medium transition-colors",y="bg-white/10 text-white shadow-sm",v="text-white/70 hover:bg-white/5 hover:text-white";function f(){let e=(0,s.useLocale)(),i=(0,o.usePathname)(),[n,l]=(0,t.useState)(!1),h=(0,t.useRef)(null);return(0,t.useEffect)(()=>{function e(e){h.current&&!h.current.contains(e.target)&&l(!1)}return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]),(0,a.jsxs)("div",{className:"relative",ref:h,children:[(0,a.jsx)("button",{onClick:()=>l(e=>!e),"aria-haspopup":"listbox","aria-expanded":n,className:"px-3 py-1.5 rounded-full border border-white/10 text-white/60 text-sm hover:border-white/30 hover:text-white transition-colors",children:k[e]}),n&&(0,a.jsx)("div",{role:"listbox",className:"absolute right-0 mt-2 min-w-[6rem] rounded-xl border border-white/10 bg-brand-bg shadow-lg overflow-hidden z-10",children:r.routing.locales.map(t=>(0,a.jsx)("button",{role:"option","aria-selected":t===e,onClick:()=>{let a;
3return l(!1),a=function(e,a,t){let[i,...n]=e.split("/").filter(Boolean);return i?i===u("product",a)?["",u("product",t),...n].join("/"):i===u("clientApp",a)?["",u("clientApp",t),...n].join("/"):i===u("nutrition",a)?["",u("nutrition",t),...n].join("/"):i===u("tracking",a)?["",u("tracking",t),...n].join("/"):i===u("deviceIntegrations",a)?["",u("deviceIntegrations",t),...n].join("/"):i===(d[a]??d.en)?["",d[t]??d.en,...n].join("/"):i===m(a)?["",m(t),...n].join("/"):i===u("about",a)?["",u("about",t),...n].join("/"):i===u("research",a)?["",u("research",t),...n].join("/"):i===u("pricing",a)?["",u("pricing",t),...n].join("/"):i===u("articles",a)?["",u("articles",t),...n].join("/"):i===u("materials",a)?["",u("materials",t),...n].join("/"):i===u("contact",a)?["",u("contact",t),...n].join("/"):e:e}(i,e,t),void window.location.assign(`/${t}${a}`)},className:`block w-full text-left px-4 py-2 text-sm transition-colors ${t===e?"text-white bg-white/5":"text-white/60 hover:text-white hover:bg-white/5"}`,children:k[t]},t))})]})}function b({href:e,active:t,onClick:i,children:n}){return(0,a.jsx)(o.Link,{href:e,"aria-current":t?"page":void 0,className:`${g} ${t?y:v}`,onClick:i,children:n})}e.s(["SiteNav",0,function(){let[e,r]=(0,t.useState)(!1),[l,d]=(0,t.useState)(!1),[p,m]=(0,t.useState)(!1),[k,j]=(0,t.useState)(!1),x=(0,n.useTranslations)("nav"),w=(0,n.useTranslations)("hero.tabs"),B=(0,s.useLocale)(),S=(0,o.usePathname)(),P=u("product",B),A=[{slug:u("product",B),label:w("programming"),icon:"dumbell.svg"},{slug:u("nutrition",B),label:w("nutrition"),icon:"food_blokki.svg"},{slug:u("tracking",B),label:w("trackAndAnalyze"),icon:"stats_blokki.svg"},{slug:u("deviceIntegrations",B),label:w("deviceIntegrations"),icon:"devices.svg"},{slug:u("clientApp",B),label:w("clientApp"),icon:"phone_blokki.svg"}],T=h(B),I=u("about",B),M=u("testimonials",B),E=u("articles",B),C=u("materials",B),N=S===`/${P}`,O=S===`/${u("clientApp",B)}`,J=S===`/${T}`,H=S===`/${I}`,R=S===`/${E}`,_=S===`/${C}`;return(0,t.useEffect)(()=>{function e(){window.scrollY>20?j(!0):j(!1)}return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,a.jsx)("nav",{className:"fixed top-0 left-0 right-0 z-50 flex justify-center transition-all duration-500 ease-in-out py-4 px-4",children:(0,a.jsxs)("div",{className:"relative w-full",children:[(0,a.jsxs)("div",{className:`w-full rounded-full flex items-center justify-between transition-all duration-500 ease-in-out ${k?"backdrop-blur-md bg-white/5 shadow-2xl h-16 px-10":"backdrop-blur-none bg-transparent shadow-none h-20 px-8"}`,children:[(0,a.jsx)(o.Link,{href:"/",children:(0,a.jsx)(i.default,{src:"/images/logo_white_h_new-1-scaled.png",alt:"Blokki",width:k?124:156,height:k?28:35,className:`transition-all duration-500 ease-in-out ${k?"h-7 w-[124px]":"h-[35px] w-[156px]"}`})}),(0,a.jsxs)("div",{className:"hidden md:flex items-center gap-3 text-white",children:[(0,a.jsxs)("div",{className:"relative",onKeyDown:e=>{"Escape"===e.key&&(m(!1),e.currentTarget.querySelector("button")?.focus())},children:[(0,a.jsxs)("button",{type:"button","aria-expanded":p,"aria-controls":"desktop-product-submenu",onClick:()=>m(e=>!e),className:`${g} ${N||O?y:v}`,children:[(0,a.jsx)("span",{children:x("product")}),(0,a.jsx)("svg",{"aria-hidden":"true",className:`h-4 w-4 transition-transform duration-150 ${p?"rotate-180":""}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"m6 9 6 6 6-6"})})]}),(0,a.jsx)("div",{id:"desktop-product-submenu",className:`${p?"visible pointer-events-auto opacity-100":"invisible pointer-events-none opacity-0"} absolute left-1/2 top-full z-50 w-[min(20rem,calc(100vw-2rem))] -translate-x-1/2 rounded-2xl bg-brand-bg/95 p-3 shadow-2xl backdrop-blur-md transition-all duration-150`,children:(0,a.jsx)("div",{className:"flex flex-col gap-0.5",children:A.map(e=>(0,a.jsxs)(o.Link,{href:`/${e.slug}`,onClick:()=>m(!1),className:"flex min-h-11 items-center gap-3 rounded-xl px-3 py-2 text-left text-sm font-medium text-white transition-colors hover:bg-white/5 focus-visible:bg-white/5",children:[(0,a.jsx)("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-white/10",children:(0,a.jsx)(i.default,{src:`/images/ikonit_blokki/${e.icon}`,alt:"",width:24,height:24,className:"h-6 w-6 object-contain"})}),(0,a.jsx)("span",{children:e.label})]},e.slug))})})]}),(0,a.jsx)(b,{href:`/${T}`,active:J,children:x("pricing")}),(0,a.jsx)(b,{href:`/${I}`,active:H,children:x("about")}),(0,a.jsx)(b,{href:`/#${M}`,children:x("testimonials")}),(0,a.jsx)(b,{href:`/${E}`,active:R,children:x("articles")}),(0,a.jsx)(b,{href:`/${C}`,active:_,children:x("materials")})]}),(0,a.jsxs)("div",{className:"hidden md:flex items-center gap-3",children:[(0,a.jsx)(f,{}),(0,a.jsx)("a",{href:"https://prod.blokki.ai/login",className:"px-4 py-2 text-white text-sm font-medium transition-colors hover:text-brand-purple",children:x("login")}),(0,a.jsx)(c.default,{className:"passion-button",children:x("cta")})]}),(0,a.jsx)("button",{"aria-label":"Toggle menu","data-trial-menu-toggle":!0,"aria-expanded":e,className:"md:hidden text-white/60 hover:text-white",onClick:()=>{r(!e),d(!1)},children:(0,a.jsx)("svg",{className:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:e?(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]}),e&&(0,a.jsxs)("div",{className:"absolute top-full left-4 right-4 md:hidden border border-white/10 rounded-2xl bg-brand-bg/95 backdrop-blur-md px-6 py-4 flex flex-col gap-4 text-sm shadow-xl",children:[(0,a.jsxs)("div",{className:"border-b border-white/5 pb-3",children:[(0,a.jsxs)("button",{type:"button","aria-expanded":l,"aria-controls":"mobile-product-submenu",onClick:()=>d(e=>!e),className:`${g} w-full justify-between ${N||O?y:v}`,children:[(0,a.jsx)("span",{children:x("product")}),(0,a.jsx)("svg",{"aria-hidden":"true",className:`h-4 w-4 transition-transform duration-150 ${l?"rotate-180":""}`,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"m6 9 6 6 6-6"})})]}),l&&(0,a.jsx)("div",{id:"mobile-product-submenu",className:"mt-2 flex flex-col gap-0.5",children:A.map(e=>(0,a.jsxs)(o.Link,{href:`/${e.slug}`,onClick:()=>{r(!1),d(!1)},className:"flex min-h-10 items-center gap-2.5 rounded-xl px-2 py-1.5 text-left text-sm font-medium text-white transition-colors hover:bg-white/5",children:[(0,a.jsx)("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-white/10",children:(0,a.jsx)(i.default,{src:`/images/ikonit_blokki/${e.icon}`,alt:"",width:22,height:22,className:"h-[22px] w-[22px] object-contain"})}),(0,a.jsx)("span",{children:e.label})]},e.slug))})]}),(0,a.jsx)(b,{href:`/${T}`,active:J,onClick:()=>r(!1),children:x("pricing")}),(0,a.jsx)(b,{href:`/${I}`,active:H,onClick:()=>r(!1),children:x("about")}),(0,a.jsx)(b,{href:`/#${M}`,onClick:()=>r(!1),children:x("testimonials")}),(0,a.jsx)(b,{href:`/${E}`,active:R,onClick:()=>r(!1),children:x("articles")}),(0,a.jsx)(b,{href:`/${C}`,active:_,onClick:()=>r(!1),children:x("materials")}),(0,a.jsxs)("div",{className:"flex items-center justify-between border-t border-white/5 pt-4",children:[(0,a.jsx)("span",{className:"text-white/40",children:"Kieli"}),(0,a.jsx)(f,{})]}),(0,a.jsx)("a",{href:"https://prod.blokki.ai/login",className:"px-3.5 py-1.5 text-white text-sm font-medium text-center transition-colors hover:text-brand-purple",children:x("login")}),(0,a.jsx)(c.default,{className:"passion-button w-full",onClick:()=>r(!1),children:x("cta")})]})]})})}],32664),e.s(["SiteFooter",0,function(){let e=(0,n.useTranslations)("footer"),t=(0,n.useTranslations)("nav"),r=(0,n.useTranslations)("hero.tabs"),l=(0,s.useLocale)(),h=u("pricing",l);return(0,a.jsx)("footer",{className:"footer-mesh relative border-t border-white/5 py-12 px-6",children:(0,a.jsxs)("div",{className:"max-w-6xl mx-auto relative",children:[(0,a.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-6 lg:grid-cols-5 ga
3p-8 mb-10",children:[(0,a.jsxs)("div",{className:"md:col-span-2 lg:col-span-1",children:[(0,a.jsx)(i.default,{src:"/images/logo_white_h_new-1-scaled.png",alt:"Blokki",width:106,height:24,className:"h-6 w-[106px] mb-4"}),(0,a.jsx)("p",{className:"text-white/40 text-base leading-relaxed",children:e("desc")})]}),(0,a.jsxs)("div",{className:"md:col-span-2 lg:col-span-1",children:[(0,a.jsx)("h4",{className:"text-base font-semibold mb-4",children:e("company")}),(0,a.jsxs)("div",{className:"flex flex-col gap-2 text-base text-white/40",children:[(0,a.jsx)(o.Link,{href:"/",className:"hover:text-white transition-colors",children:e("home")}),(0,a.jsx)(o.Link,{href:`/${u("about",l)}`,className:"hover:text-white transition-colors",children:t("about")}),(0,a.jsx)(o.Link,{href:`/${h}`,className:"hover:text-white transition-colors",children:t("pricing")}),(0,a.jsx)(o.Link,{href:`/${u("testimonials",l)}`,className:"hover:text-white transition-colors",children:t("testimonials")})]})]}),(0,a.jsxs)("div",{className:"md:col-span-2 lg:col-span-1",children:[(0,a.jsx)("h4",{className:"text-base font-semibold mb-4",children:e("learn")}),(0,a.jsxs)("div",{className:"flex flex-col gap-2 text-base text-white/40",children:[(0,a.jsx)(o.Link,{href:`/${u("articles",l)}`,className:"hover:text-white transition-colors",children:t("articles")}),(0,a.jsx)(o.Link,{href:`/${u("materials",l)}`,className:"hover:text-white transition-colors",children:t("materials")})]})]}),(0,a.jsxs)("div",{className:"md:col-span-3 lg:col-span-1",children:[(0,a.jsx)("h4",{className:"text-base font-semibold mb-4",children:e("product")}),(0,a.jsxs)("div",{className:"flex flex-col gap-2 text-base text-white/40",children:[(0,a.jsx)(o.Link,{href:`/${u("product",l)}`,className:"hover:text-white transition-colors",children:r("programming")}),(0,a.jsx)(o.Link,{href:`/${u("nutrition",l)}`,className:"hover:text-white transition-colors",children:r("nutrition")}),(0,a.jsx)(o.Link,{href:`/${u("tracking",l)}`,className:"hover:text-white transition-colors",children:r("trackAndAnalyze")}),(0,a.jsx)(o.Link,{href:`/${u("deviceIntegrations",l)}`,className:"hover:text-white transition-colors",children:r("deviceIntegrations")}),(0,a.jsx)(o.Link,{href:`/${u("clientApp",l)}`,className:"hover:text-white transition-colors",children:r("clientApp")})]})]}),(0,a.jsxs)("div",{className:"md:col-span-3 lg:col-span-1",children:[(0,a.jsx)("h4",{className:"text-base font-semibold mb-4",children:e("contact")}),(0,a.jsx)(o.Link,{href:`/${u("contact",l)}`,className:"mb-2 block text-base text-white/40 transition-colors hover:text-white",children:e("contact")}),(0,a.jsx)("a",{href:"mailto:[email protected]",className:"text-base text-white/40 hover:text-white transition-colors",children:"[email protected]"}),(0,a.jsxs)("div",{className:"flex gap-4 mt-4",children:[(0,a.jsx)("a",{href:"https://www.linkedin.com/company/blokkiai",target:"_blank",rel:"noopener noreferrer","aria-label":"LinkedIn",className:"text-white/30 hover:text-white transition-colors",children:(0,a.jsx)("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"w-7 h-7 fill-current md:w-10 md:h-10",children:(0,a.jsx)("path",{d:"M20.45 20.45h-3.56v-5.57c0-1.33-.03-3.04-1.85-3.04-1.85 0-2.13 1.44-2.13 2.94v5.67H9.35V9h3.42v1.56h.05c.48-.9 1.64-1.85 3.37-1.85 3.6 0 4.27 2.37 4.27 5.46v6.28ZM5.34 7.43a2.06 2.06 0 1 1 0-4.12 2.06 2.06 0 0 1 0 4.12Zm1.78 13.02H3.56V9h3.56v11.45ZM22.22 0H1.77C.79 0 0 .77 0 1.72v20.56C0 23.23.79 24 1.77 24h20.44c.98 0 1.79-.77 1.79-1.72V1.72C24 .77 23.19 0 22.22 0Z"})})}),(0,a.jsx)("a",{href:"https://www.instagram.com/blokki.ai/",target:"_blank",rel:"noopener noreferrer","aria-label":"Instagram",className:"text-white/30 hover:text-white transition-colors",children:(0,a.jsx)("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"w-7 h-7 fill-current md:w-10 md:h-10",children:(0,a.jsx)("path",{d:"M7.75 2h8.5A5.76 5.76 0 0 1 22 7.75v8.5A5.76 5.76 0 0 1 16.25 22h-8.5A5.76 5.76 0 0 1 2 16.25v-8.5A5.76 5.76 0 0 1 7.75 2Zm0 2A3.75 3.75 0 0 0 4 7.75v8.5A3.75 3.75 0 0 0 7.75 20h8.5A3.75 3.75 0 0 0 20 16.25v-8.5A3.75 3.75 0 0 0 16.25 4h-8.5ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 2a3 3 0 1 0 0 6 3 3 0 0 0 0-6Zm5.25-3.5a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5Z"})})}),(0,a.jsx)("a",{href:"https://www.facebook.com/profile.php?id=61587501385236",target:"_blank",rel:"noopener noreferrer","aria-label":"Facebook",className:"text-white/30 hover:text-white transition-colors",children:(0,a.jsx)("svg",{"aria-hidden":"true",viewBox:"0 0 24 24",className:"w-7 h-7 fill-current md:w-10 md:h-10",children:(0,a.jsx)("path",{d:"M13.4 21v-8.2h2.76l.41-3.2H13.4V7.56c0-.93.26-1.56 1.59-1.56h1.7V3.14c-.3-.04-1.34-.14-2.55-.14-2.53 0-4.26 1.54-4.26 4.37V9.6H7v3.2h2.88V2
31h3.52Z"})})})]})]})]}),(0,a.jsxs)("div",{role:"img","aria-label":"Blokki",className:"relative mb-8 aspect-[40/9] w-full",style:{mask:"url('/images/logo_white_h_new-1-scaled.png') center / contain no-repeat",WebkitMask:"url('/images/logo_white_h_new-1-scaled.png') center / contain no-repeat",clipPath:"inset(0 0 0 24%)",transform:"translateX(-12%)"},onPointerMove:e=>{let a=e.currentTarget.getBoundingClientRect();e.currentTarget.style.setProperty("--spotlight-x",`${e.clientX-a.left}px`),e.currentTarget.style.setProperty("--spotlight-y",`${e.clientY-a.top}px`)},onPointerLeave:e=>{e.currentTarget.style.setProperty("--spotlight-x","-9999px"),e.currentTarget.style.setProperty("--spotlight-y","-9999px")},children:[(0,a.jsx)("div",{className:"absolute inset-0 bg-brand-accent opacity-10"}),(0,a.jsx)("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-0",style:{background:"radial-gradient(circle 100px at var(--spotlight-x, -9999px) var(--spotlight-y, -9999px), rgba(214, 235, 253, 1), rgba(214, 235, 253, 0.72) 45%, rgba(214, 235, 253, 0) 100%)"}})]}),(0,a.jsxs)("div",{className:"border-t border-white/5 pt-8 flex flex-col md:flex-row items-center justify-between gap-4",children:[(0,a.jsxs)("div",{className:"flex flex-col md:flex-row items-center gap-3 text-base",children:[(0,a.jsx)("p",{className:"text-white/30",children:e("copyright")}),(0,a.jsx)("a",{href:"https://blokki-prod-backend.whitepebble-e35e0242.swedencentral.azurecontainerapps.io/privacy_notice",className:"text-brand-accent hover:text-brand-accent-hover transition-colors",children:e("privacy")})]}),(0,a.jsx)(i.default,{src:"/images/EN_Co-fundedbytheEU_RGB_NEG-1024x228.png",alt:"Co-funded by the EU",width:144,height:32,className:"h-8 w-[144px] opacity-50"})]})]})})}],44867)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.