{"rootUrl":"https://kodud.embach.ee/","startedAt":"2026-07-20T09:51:33.797Z","finishedAt":"2026-07-20T09:52:49.798Z","pages":[{"url":"https://kodud.embach.ee/","startedAt":"2026-07-20T09:51:34.944Z","finishedAt":"2026-07-20T09:52:02.265Z","results":[{"tool":"pagespeed","status":"ok","durationMs":14048,"data":{"mobile":{"scores":{"performance":76,"accessibility":95,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":3347.101934616846,"displayValue":"3.3 s","min":3347.101934616846,"max":4680.2462530756375},"cls":{"value":0.2867557715674362,"min":0.2867557715674362,"max":0.2867557715674362},"tbt":{"ms":21,"min":21,"max":37},"fcp":{"ms":1818.6166612895124,"min":1818.6166612895124,"max":2706.7300539843077},"speedIndex":{"ms":1847.228412392406,"min":1847.228412392406,"max":3410.737606835038},"ttfb":{"ms":2,"min":2,"max":3}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":109}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div#section-1779103439914-0 > div.section__container > div.section__container-inner > div.projects-carousel__slider","shiftScore":0.2867557715674362}],"longTasks":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","durationMs":92}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"cumulative-layout-shift","title":"Cumulative Layout Shift","description":"Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/articles/cls).","score":0.42,"scoreDisplayMode":"numeric","displayValue":"0.287","weight":25,"category":"performance"},{"id":"button-name","title":"Buttons do not have an accessible name","description":"When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.12/button-name).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":10,"category":"accessibility"},{"id":"largest-contentful-paint","title":"Largest Contentful Paint","description":"Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)","score":0.68,"scoreDisplayMode":"numeric","displayValue":"3.3 s","weight":25,"category":"performance"},{"id":"first-contentful-paint","title":"First Contentful Paint","description":"First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).","score":0.89,"scoreDisplayMode":"numeric","displayValue":"1.8 s","weight":10,"category":"performance"},{"id":"cls-culprits-insight","title":"Layout shift culprits","description":"Layout shifts occur when elements move absent any user interaction. [Investigate the causes of layout shifts](https://developer.chrome.com/docs/performance/insights/cls-culprit), such as elements being added, removed, or their fonts changing as the page loads.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"},{"id":"interactive","title":"Time to Interactive","description":"Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric](https://developer.chrome.com/docs/lighthouse/performance/interactive/).","score":0.86,"scoreDisplayMode":"numeric","displayValue":"4.2 s","weight":0,"category":"performance"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":7,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":10,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":1,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":1,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"cumulative-layout-shift","severity":"high","detail":"0.287"},{"title":"largest-contentful-paint","severity":"medium","detail":"3.3 s"},{"title":"first-contentful-paint","severity":"low","detail":"1.8 s"},{"title":"cls-culprits-insight","severity":"high","detail":""},{"title":"font-display-insight","severity":"high","detail":"Est savings of 60 ms"}],"samples":5},"desktop":{"scores":{"performance":77,"accessibility":96,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":1009.0825620629317,"displayValue":"1.0 s","min":909.0717438795142,"max":1009.0825620629317},"cls":{"value":0.5708238974885622,"min":0.5708238974885622,"max":0.5708238974885622},"tbt":{"ms":0,"min":0,"max":9.000000000000057},"fcp":{"ms":495.61063295214814,"min":495.61063295214814,"max":496.61212353081066},"speedIndex":{"ms":715.0288747479742,"min":714.3514201228968,"max":715.0288747479742},"ttfb":{"ms":4,"min":4,"max":9}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":109}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div#section-1779103439914-0 > div.section__container > div.section__container-inner > div.projects-carousel__slider","shiftScore":0.5708108108108109},{"selector":"div.header__inner > div.header__actions > a.button > ::before","shiftScore":0.00001308667775130477}],"longTasks":[],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"cumulative-layout-shift","title":"Cumulative Layout Shift","description":"Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/articles/cls).","score":0.12,"scoreDisplayMode":"numeric","displayValue":"0.571","weight":25,"category":"performance"},{"id":"target-size","title":"Touch targets do not have sufficient size or spacing.","description":"Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.12/target-size).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":7,"category":"accessibility"},{"id":"cls-culprits-insight","title":"Layout shift culprits","description":"Layout shifts occur when elements move absent any user interaction. [Investigate the causes of layout shifts](https://developer.chrome.com/docs/performance/insights/cls-culprit), such as elements being added, removed, or their fonts changing as the page loads.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":7,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":10,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":1,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":1,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"cumulative-layout-shift","severity":"high","detail":"0.571"},{"title":"cls-culprits-insight","severity":"high","detail":""},{"title":"font-display-insight","severity":"high","detail":"Est savings of 200 ms"},{"title":"image-delivery-insight","severity":"high","detail":"Est savings of 233 KiB"},{"title":"legacy-javascript-insight","severity":"medium","detail":"Est savings of 13 KiB"}],"samples":5},"strategies":{"mobile":{"status":"ok"},"desktop":{"status":"ok"}}}},{"tool":"securityHeaders","status":"ok","durationMs":22,"data":{"scores":{"score":0,"present":0,"missing":9},"headers":[{"name":"strict-transport-security","status":"missing","severity":"high","advice":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"name":"content-security-policy","status":"missing","severity":"high","advice":"Add a CSP with default-src and script-src restrictions"},{"name":"x-frame-options","status":"missing","severity":"medium","advice":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"name":"x-content-type-options","status":"missing","severity":"medium","advice":"Send X-Content-Type-Options: nosniff"},{"name":"referrer-policy","status":"missing","severity":"low","advice":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"name":"permissions-policy","status":"missing","severity":"low","advice":"Declare Permissions-Policy to disable unused features"},{"name":"cross-origin-opener-policy","status":"missing","severity":"low","advice":"Set COOP to same-origin to isolate browsing context"},{"name":"cross-origin-resource-policy","status":"missing","severity":"low","advice":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"name":"x-permitted-cross-domain-policies","status":"missing","severity":"low","advice":"Set to none to prevent Flash/PDF cross-domain requests"}],"cookies":[],"infoDisclosure":{"server":"Apache / ZoneOS"},"transport":{"finalUrl":"https://kodud.embach.ee/","status":200,"redirected":false},"caching":{"cacheControl":"max-age=0","directives":{"max-age":"0"},"expires":"Mon, 20 Jul 2026 09:51:34 GMT","etag":null,"lastModified":"Mon, 20 Jul 2026 07:40:15 GMT","age":null,"vary":"Accept-Encoding","pragma":null,"issues":[]},"compression":{"contentEncoding":"gzip","contentLength":18594,"decodedBodyBytes":98194,"compressionRatio":0.189,"issues":[]},"allHeaders":{"cache-control":"max-age=0","connection":"Keep-Alive","content-encoding":"gzip","content-length":"18594","content-type":"text/html; charset=UTF-8","date":"Mon, 20 Jul 2026 09:51:34 GMT","expires":"Mon, 20 Jul 2026 09:51:34 GMT","keep-alive":"timeout=5, max=95","last-modified":"Mon, 20 Jul 2026 07:40:15 GMT","server":"Apache / ZoneOS","vary":"Accept-Encoding"},"cdnCache":{"detected":false,"providers":[],"cacheStatus":null,"cacheBypassed":false,"evidence":[]},"httpsRedirect":{"httpUrl":"http://kodud.embach.ee/","redirectsToHttps":true,"redirectTarget":"https://kodud.embach.ee/","error":null},"cors":{"allowOrigin":null,"allowCredentials":false,"allowMethods":null,"issues":[]},"priorities":[{"title":"strict-transport-security missing","severity":"high","detail":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"title":"content-security-policy missing","severity":"high","detail":"Add a CSP with default-src and script-src restrictions"},{"title":"x-frame-options missing","severity":"medium","detail":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"title":"x-content-type-options missing","severity":"medium","detail":"Send X-Content-Type-Options: nosniff"},{"title":"referrer-policy missing","severity":"low","detail":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"title":"permissions-policy missing","severity":"low","detail":"Declare Permissions-Policy to disable unused features"},{"title":"cross-origin-opener-policy missing","severity":"low","detail":"Set COOP to same-origin to isolate browsing context"},{"title":"cross-origin-resource-policy missing","severity":"low","detail":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"title":"x-permitted-cross-domain-policies missing","severity":"low","detail":"Set to none to prevent Flash/PDF cross-domain requests"},{"title":"server header discloses technology","severity":"low","detail":"Server: Apache / ZoneOS"}]}},{"tool":"w3c","status":"ok","durationMs":747,"data":{"scores":{"errors":0,"warnings":1,"cosmeticSuppressed":16},"groups":[{"message":"Attribute “nowprocket” not allowed on element “script” at this point.","type":"error","severity":"cosmetic","count":4,"occurrences":[{"line":12,"extract":"css\">\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js\"></scri"},{"line":13,"extract":"ript>\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js\"></scri"},{"line":14,"extract":"ript>\n    <script nowprocket>(funct"},{"line":1291,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]},{"message":"Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.","type":"info","severity":"cosmetic","count":12,"occurrences":[{"line":24,"extract":"y=\"high\">\n<meta name='robots' content='max-image-preview:large' />\n<link"},{"line":25,"extract":"large' />\n<link rel=\"alternate\" hreflang=\"et\" href=\"https://kodud.embach.ee/\" />\n<link"},{"line":26,"extract":"h.ee/\" />\n<link rel=\"alternate\" hreflang=\"x-default\" href=\"https://kodud.embach.ee/\" />\n<link"},{"line":27,"extract":"h.ee/\" />\n<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' />\n<styl"},{"line":38,"extract":"</style>\n\n<link rel='stylesheet' id='core-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css' media='all' />\n<link"},{"line":39,"extract":"='all' />\n<link rel='stylesheet' id='global-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css' media='all' />\n<link"},{"line":40,"extract":"='all' />\n<link rel=\"canonical\" href=\"https://kodud.embach.ee/\" />\n<link"},{"line":41,"extract":"h.ee/\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-32x32.png\" sizes=\"32x32\" />\n<link"},{"line":42,"extract":"32x32\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-192x192.png\" sizes=\"192x192\" />\n<link"},{"line":43,"extract":"2x192\" />\n<link rel=\"apple-touch-icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-180x180.png\" />\n<meta"},{"line":44,"extract":"0.png\" />\n<meta name=\"msapplication-TileImage\" content=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-270x270.png\" />\n\n    "},{"line":55,"extract":"</style>\n\n<meta name=\"generator\" content=\"WP Rocket 3.23\" data-wpr-features=\"wpr_preconnect_external_domains wpr_oci wpr_cdn wpr_preload_links wpr_desktop\" /></head"}]},{"message":"The “type” attribute is unnecessary for JavaScript resources.","type":"info","severity":"warning","count":1,"occurrences":[{"line":1291,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]}],"parserRecovery":null,"priorities":[]}},{"tool":"axe","status":"ok","durationMs":1648,"data":{"scores":{"violations":0,"passes":38,"byImpact":{"critical":0,"serious":0,"moderate":0,"minor":0}},"violations":[],"manualChecks":[{"id":"color-contrast","help":"Elements must meet minimum color contrast ratio thresholds","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/color-contrast?application=playwright","nodes":8}],"priorities":[]}},{"tool":"runtime","status":"ok","durationMs":1656,"data":{"consoleErrors":[],"mixedContent":[],"network":{"requestCount":25,"totalBytes":814623,"byResourceType":{"document":{"count":1,"bytes":18594},"stylesheet":{"count":5,"bytes":37768},"image":{"count":6,"bytes":660659},"script":{"count":7,"bytes":54933},"other":{"count":1,"bytes":6524},"font":{"count":2,"bytes":28230},"xhr":{"count":3,"bytes":7915}},"thirdPartyOrigins":[{"origin":"https://cdn.jsdelivr.net","count":6,"bytes":29309},{"origin":"https://fonts.googleapis.com","count":2,"bytes":0}],"slowestRequests":[{"url":"https://kodud.embach.ee/","resourceType":"document","durationMs":170,"bytes":18594},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"xhr","durationMs":154,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"stylesheet","durationMs":142,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","resourceType":"script","durationMs":51,"bytes":187},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","resourceType":"script","durationMs":51,"bytes":0}],"failedRequests":[]},"priorities":[]}},{"tool":"html","status":"ok","durationMs":1656,"data":{"document":{"lang":"et","title":"Kodud","charset":"UTF-8","viewport":"width=device-width, initial-scale=1","canonical":"https://kodud.embach.ee/","bytes":95863,"mojibakeDetected":false,"mojibakeSamples":[],"cacheMarkers":["WP Rocket"]},"meta":{"description":null,"robots":"max-image-preview:large","openGraph":{},"twitter":{},"hreflang":[{"lang":"et","href":"https://kodud.embach.ee/"},{"lang":"x-default","href":"https://kodud.embach.ee/"}],"jsonLd":[],"themeColor":"#ffffff","generator":"WP Rocket 3.23"},"outline":{"h1Count":1,"h2Count":3,"h3Count":0,"h4Count":0,"h5Count":0,"h6Count":0,"sequence":[{"level":1,"text":"Embach kodud"},{"level":2,"text":"Pärnasalu - kaasaegne, roheline ja kasvava väärtusega kodu Tartu piiril."},{"level":2,"text":"Kinnisvaraarendus numbrites"},{"level":2,"text":"Idee on hea, aga oskustest jääb puudu?"}],"skips":[]},"landmarks":{"hasNav":true,"hasMain":true,"hasHeader":true,"hasFooter":true,"skipToContentLink":true},"scripts":{"total":16,"external":[{"src":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","defer":true,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-includes/js/jquery/jquery-migrate.min.js","defer":false,"async":false,"type":null,"inHead":false}],"inline":[{"bytes":90,"type":null},{"bytes":225,"type":null},{"bytes":12580,"type":"module"},{"bytes":210,"type":null},{"bytes":2195,"type":null},{"bytes":437,"type":null},{"bytes":3448,"type":null},{"bytes":1138,"type":null},{"bytes":384,"type":"speculationrules"}],"deferCount":1,"asyncCount":0,"blockingCount":6,"speculationRules":true},"styles":{"externalCount":5,"external":[{"href":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.min.css","media":null},{"href":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.css","media":null},{"href":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css","media":"all"}],"inlineCount":3,"inlineBytes":9668},"images":{"total":20,"items":[{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/elutuba2-pakett-1-beige-320x180.jpg","alt":"","width":320,"height":180,"loading":"eager","hasSrcset":true,"hasSizes":true,"fetchPriority":"high","srcsetWidths":[320,640,1600,3200],"inPicture":false,"domOrder":0},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/vannituba1-pakett-2-grey-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":1},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/magamistuba-pakett-2-grey-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":2},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/elutuba2-pakett-2-grey-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":3},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/elutuba1-pakett-2-grey-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":4},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/vannituba1-pakett-1-beige-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":5},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/magamistuba-pakett-1-beige-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":6},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/elutuba2-pakett-1-beige-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":7},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/elutuba1-pakett-1-beige-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":8},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/maja-3-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":9},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/maja-2-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":10},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/maja-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":11},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0050001-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":12},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0040001-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":13},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0030001-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":14},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0020001-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":15},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0010001-scaled-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":16},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/arenduse_asendiplaan-1-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":17},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/arenduse_asendiplaan-300x200.webp","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":18},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/siili_4_ttun1468-1-320x180.jpg","alt":"","width":320,"height":180,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[320,640,1600],"inPicture":false,"domOrder":19}],"withoutAlt":0,"withoutDimensions":0,"withoutLazyLoading":1},"links":{"anchors":[{"href":"https://kodud.embach.ee/#main","text":"Skip to main content"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://embach.ee/","text":"Embach ehitus"},{"href":"https://parnasalutee.ee/","text":"Vaata rohkem"},{"href":"https://kodud.embach.ee/kontakt/","text":"Võta ühendust"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/#","text":"Teenused"},{"href":"http://embach.ee/teenused/","text":"Ehitusteenused"},{"href":"http://embach.ee/projektid/","text":"Projektid"},{"href":"https://kodud.embach.ee/#","text":"Järelteenindus"},{"href":"https://kodud.embach.ee/#","text":"Kodud"},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/#","text":"Kodu ostmine"},{"href":"https://kodud.embach.ee/#","text":"Meist"},{"href":"https://kodud.embach.ee/#","text":"Meeskond"},{"href":"http://embach.ee/too-embachis/","text":"Töö Embachis"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://www.instagram.com/embachehitus/","text":"Instagram"},{"href":"https://www.facebook.com/p/Embach-Ehitus-100063728323807/","text":"Facebook"},{"href":"https://www.linkedin.com/posts/tripod-grupp_embach-ehitus-projekteerimise-projektijuht-activity-7432407444598857728-Gs7e","text":"Linkedin"},{"href":"https://playandnope.com/","text":"Play & Nope Alliance"}],"vagueRepeats":[{"text":"kõik arendused","count":2},{"text":"kontakt","count":2}],"externalCount":9,"preconnectCount":1,"preloadCount":2},"forms":[],"backgroundImages":{"total":0,"items":[]},"priorities":[{"title":"6 render-blocking external scripts","severity":"medium","detail":"Only 1 defer, 0 async; add defer/async to non-critical scripts"}]}},{"tool":"checklist","status":"ok","durationMs":0,"data":{"items":[{"id":"caching","title":"Page caching plugin / CDN active","status":"pass","detail":"Caching plugin detected (WP Rocket)","evidence":["HTML markers: WP Rocket","generator: WP Rocket 3.23"]},{"id":"lazyload","title":"Images lazy-loaded","status":"pass","detail":"All non-hero raster images use loading=\"lazy\".","evidence":[]},{"id":"heroEager","title":"Hero image eagerly loaded","status":"pass","detail":"Hero image is eagerly loaded with fetchpriority=\"high\" (inferred from DOM order/size — Lighthouse LCP element unavailable).","evidence":["hero: …ach.ee/wp-content/uploads/sites/3/2026/07/elutuba2-pakett-1-beige-320x180.jpg","loading: eager","fetchpriority: high"]},{"id":"heroBackground","title":"Hero is a real <img> (not a CSS background-image)","status":"n/a","detail":"No CSS background-images detected on raster-image-eligible elements.","evidence":[]},{"id":"responsive","title":"Responsive images (srcset / <picture>)","status":"pass","detail":"20/20 raster images use srcset or <picture> (100%).","evidence":[]},{"id":"imageSizes","title":"Reasonable number of image sizes","status":"pass","detail":"7 distinct srcset widths.","evidence":["widths: 300, 320, 600, 640, 1200, 1600, 3200"]},{"id":"scriptsFooter","title":"JS scripts not blocking in <head>","status":"warn","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async.","evidence":["https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","…//cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js"]}],"summary":{"passed":5,"warned":1,"failed":0,"notApplicable":1},"priorities":[{"title":"JS scripts not blocking in <head>","severity":"medium","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async."}]}}],"coverage":{"pct":100,"missing":[]}},{"url":"https://kodud.embach.ee/hello-world","startedAt":"2026-07-20T09:51:34.946Z","finishedAt":"2026-07-20T09:51:56.658Z","results":[{"tool":"pagespeed","status":"ok","durationMs":11771,"data":{"mobile":{"scores":{"performance":77,"accessibility":94,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":3742.1921605243797,"displayValue":"3.7 s","min":3723.4000097500843,"max":3742.1921605243797},"cls":{"value":0.20771017481903178,"min":0,"max":0.20771017481903178},"tbt":{"ms":49,"min":17,"max":49},"fcp":{"ms":2136.8119659639906,"min":1994.567140352307,"max":2136.8119659639906},"speedIndex":{"ms":2283.61319941942,"min":1994.567140352307,"max":2283.61319941942},"ttfb":{"ms":3,"min":2,"max":3}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div#page > div.main > div.main__footer > footer.footer","shiftScore":0.1965837964268472},{"selector":"div#page > div.main > div.main__footer > footer.footer","shiftScore":0.01112637839218459}],"longTasks":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","durationMs":99}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"largest-contentful-paint","title":"Largest Contentful Paint","description":"Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)","score":0.57,"scoreDisplayMode":"numeric","displayValue":"3.7 s","weight":25,"category":"performance"},{"id":"cumulative-layout-shift","title":"Cumulative Layout Shift","description":"Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/articles/cls).","score":0.6,"scoreDisplayMode":"numeric","displayValue":"0.208","weight":25,"category":"performance"},{"id":"button-name","title":"Buttons do not have an accessible name","description":"When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.12/button-name).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":10,"category":"accessibility"},{"id":"first-contentful-paint","title":"First Contentful Paint","description":"First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).","score":0.8,"scoreDisplayMode":"numeric","displayValue":"2.1 s","weight":10,"category":"performance"},{"id":"cls-culprits-insight","title":"Layout shift culprits","description":"Layout shifts occur when elements move absent any user interaction. [Investigate the causes of layout shifts](https://developer.chrome.com/docs/performance/insights/cls-culprit), such as elements being added, removed, or their fonts changing as the page loads.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":0,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":0,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":0,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"largest-contentful-paint","severity":"medium","detail":"3.7 s"},{"title":"cumulative-layout-shift","severity":"medium","detail":"0.208"},{"title":"first-contentful-paint","severity":"low","detail":"2.1 s"},{"title":"cls-culprits-insight","severity":"high","detail":""},{"title":"document-latency-insight","severity":"high","detail":"Est savings of 260 ms"}],"samples":5},"desktop":{"scores":{"performance":99,"accessibility":96,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":857.6137892896757,"displayValue":"0.9 s","min":857.6137892896757,"max":857.6137892896757},"cls":{"value":0.007349129390318044,"min":0.007349129390318044,"max":0.007349129390318044},"tbt":{"ms":0,"min":0,"max":0},"fcp":{"ms":631.998780045046,"min":631.998780045046,"max":631.998780045046},"speedIndex":{"ms":633.1328039481211,"min":633.1328039481211,"max":633.1328039481211},"ttfb":{"ms":3,"min":3,"max":3}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div#page > div.main > div.main__footer > footer.footer","shiftScore":0.003682414933460834},{"selector":"div#page > div.main > div.main__footer > footer.footer","shiftScore":0.003653627779105905},{"selector":"div.header__inner > div.header__actions > a.button > ::before","shiftScore":0.00001308667775130477}],"longTasks":[],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"target-size","title":"Touch targets do not have sufficient size or spacing.","description":"Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.12/target-size).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":7,"category":"accessibility"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":0,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":0,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":0,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"document-latency-insight","severity":"high","detail":"Est savings of 230 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 60 ms"},{"title":"legacy-javascript-insight","severity":"medium","detail":"Est savings of 13 KiB"},{"title":"network-dependency-tree-insight","severity":"high","detail":""},{"title":"render-blocking-insight","severity":"high","detail":"Est savings of 230 ms"}],"samples":5},"strategies":{"mobile":{"status":"ok"},"desktop":{"status":"ok"}}}},{"tool":"securityHeaders","status":"ok","durationMs":990,"data":{"scores":{"score":0,"present":0,"missing":9},"headers":[{"name":"strict-transport-security","status":"missing","severity":"high","advice":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"name":"content-security-policy","status":"missing","severity":"high","advice":"Add a CSP with default-src and script-src restrictions"},{"name":"x-frame-options","status":"missing","severity":"medium","advice":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"name":"x-content-type-options","status":"missing","severity":"medium","advice":"Send X-Content-Type-Options: nosniff"},{"name":"referrer-policy","status":"missing","severity":"low","advice":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"name":"permissions-policy","status":"missing","severity":"low","advice":"Declare Permissions-Policy to disable unused features"},{"name":"cross-origin-opener-policy","status":"missing","severity":"low","advice":"Set COOP to same-origin to isolate browsing context"},{"name":"cross-origin-resource-policy","status":"missing","severity":"low","advice":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"name":"x-permitted-cross-domain-policies","status":"missing","severity":"low","advice":"Set to none to prevent Flash/PDF cross-domain requests"}],"cookies":[],"infoDisclosure":{"server":"Apache / ZoneOS"},"transport":{"finalUrl":"https://kodud.embach.ee/hello-world/","status":200,"redirected":false},"caching":{"cacheControl":"max-age=0","directives":{"max-age":"0"},"expires":"Mon, 20 Jul 2026 09:51:35 GMT","etag":null,"lastModified":"Mon, 20 Jul 2026 09:51:35 GMT","age":null,"vary":"Accept-Encoding","pragma":null,"issues":[]},"compression":{"contentEncoding":"gzip","contentLength":13887,"decodedBodyBytes":63960,"compressionRatio":0.217,"issues":[]},"allHeaders":{"cache-control":"max-age=0","connection":"Keep-Alive","content-encoding":"gzip","content-length":"13887","content-type":"text/html; charset=UTF-8","date":"Mon, 20 Jul 2026 09:51:35 GMT","expires":"Mon, 20 Jul 2026 09:51:35 GMT","keep-alive":"timeout=5, max=94","last-modified":"Mon, 20 Jul 2026 09:51:35 GMT","server":"Apache / ZoneOS","vary":"Accept-Encoding"},"cdnCache":{"detected":false,"providers":[],"cacheStatus":null,"cacheBypassed":false,"evidence":[]},"httpsRedirect":{"httpUrl":"http://kodud.embach.ee/hello-world","redirectsToHttps":true,"redirectTarget":"https://kodud.embach.ee/hello-world","error":null},"cors":{"allowOrigin":null,"allowCredentials":false,"allowMethods":null,"issues":[]},"priorities":[{"title":"strict-transport-security missing","severity":"high","detail":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"title":"content-security-policy missing","severity":"high","detail":"Add a CSP with default-src and script-src restrictions"},{"title":"x-frame-options missing","severity":"medium","detail":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"title":"x-content-type-options missing","severity":"medium","detail":"Send X-Content-Type-Options: nosniff"},{"title":"referrer-policy missing","severity":"low","detail":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"title":"permissions-policy missing","severity":"low","detail":"Declare Permissions-Policy to disable unused features"},{"title":"cross-origin-opener-policy missing","severity":"low","detail":"Set COOP to same-origin to isolate browsing context"},{"title":"cross-origin-resource-policy missing","severity":"low","detail":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"title":"x-permitted-cross-domain-policies missing","severity":"low","detail":"Set to none to prevent Flash/PDF cross-domain requests"},{"title":"server header discloses technology","severity":"low","detail":"Server: Apache / ZoneOS"}]}},{"tool":"w3c","status":"ok","durationMs":1834,"data":{"scores":{"errors":0,"warnings":1,"cosmeticSuppressed":16},"groups":[{"message":"Attribute “nowprocket” not allowed on element “script” at this point.","type":"error","severity":"cosmetic","count":4,"occurrences":[{"line":12,"extract":"css\">\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js\"></scri"},{"line":13,"extract":"ript>\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js\"></scri"},{"line":14,"extract":"ript>\n    <script nowprocket>(funct"},{"line":441,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]},{"message":"Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.","type":"info","severity":"cosmetic","count":12,"occurrences":[{"line":22,"extract":"noscript>\n<meta name='robots' content='max-image-preview:large' />\n<link"},{"line":23,"extract":"large' />\n<link rel=\"alternate\" hreflang=\"et\" href=\"https://kodud.embach.ee/hello-world/\" />\n<link"},{"line":24,"extract":"orld/\" />\n<link rel=\"alternate\" hreflang=\"x-default\" href=\"https://kodud.embach.ee/hello-world/\" />\n<link"},{"line":25,"extract":"orld/\" />\n<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' />\n<styl"},{"line":36,"extract":"</style>\n\n<link rel='stylesheet' id='core-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css' media='all' />\n<link"},{"line":37,"extract":"='all' />\n<link rel='stylesheet' id='global-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css' media='all' />\n<link"},{"line":38,"extract":"='all' />\n<link rel=\"canonical\" href=\"https://kodud.embach.ee/hello-world/\" />\n<link"},{"line":39,"extract":"orld/\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-32x32.png\" sizes=\"32x32\" />\n<link"},{"line":40,"extract":"32x32\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-192x192.png\" sizes=\"192x192\" />\n<link"},{"line":41,"extract":"2x192\" />\n<link rel=\"apple-touch-icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-180x180.png\" />\n<meta"},{"line":42,"extract":"0.png\" />\n<meta name=\"msapplication-TileImage\" content=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-270x270.png\" />\n\n    "},{"line":53,"extract":"</style>\n\n<meta name=\"generator\" content=\"WP Rocket 3.23\" data-wpr-features=\"wpr_cdn wpr_preload_links wpr_desktop\" /></head"}]},{"message":"The “type” attribute is unnecessary for JavaScript resources.","type":"info","severity":"warning","count":1,"occurrences":[{"line":441,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]}],"parserRecovery":null,"priorities":[]}},{"tool":"axe","status":"ok","durationMs":1739,"data":{"scores":{"violations":1,"passes":27,"byImpact":{"critical":0,"serious":0,"moderate":1,"minor":0}},"violations":[{"id":"page-has-heading-one","impact":"moderate","help":"Page should contain a level-one heading","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/page-has-heading-one?application=playwright","wcagTags":[],"nodes":[{"selector":"html","html":"<html class=\"js\" lang=\"et\" data-whatinput=\"initial\" data-whatintent=\"initial\">","failureSummary":"Fix all of the following:\n  Page must have a level-one heading"}]}],"manualChecks":[{"id":"color-contrast","help":"Elements must meet minimum color contrast ratio thresholds","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/color-contrast?application=playwright","nodes":1}],"priorities":[{"title":"page-has-heading-one","severity":"medium","detail":"Page should contain a level-one heading"}]}},{"tool":"runtime","status":"ok","durationMs":1744,"data":{"consoleErrors":[],"mixedContent":[],"network":{"requestCount":21,"totalBytes":157334,"byResourceType":{"document":{"count":2,"bytes":13867},"stylesheet":{"count":5,"bytes":37768},"script":{"count":8,"bytes":63030},"other":{"count":1,"bytes":6524},"font":{"count":2,"bytes":28230},"xhr":{"count":3,"bytes":7915}},"thirdPartyOrigins":[{"origin":"https://cdn.jsdelivr.net","count":6,"bytes":29309},{"origin":"https://fonts.googleapis.com","count":2,"bytes":0}],"slowestRequests":[{"url":"https://kodud.embach.ee/hello-world/","resourceType":"document","durationMs":255,"bytes":13867},{"url":"https://kodud.embach.ee/hello-world","resourceType":"document","durationMs":196,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"stylesheet","durationMs":139,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"xhr","durationMs":96,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","resourceType":"script","durationMs":44,"bytes":0}],"failedRequests":[]},"priorities":[]}},{"tool":"html","status":"ok","durationMs":1744,"data":{"document":{"lang":"et","title":"Hello world! – Kodud","charset":"UTF-8","viewport":"width=device-width, initial-scale=1","canonical":"https://kodud.embach.ee/hello-world/","bytes":63584,"mojibakeDetected":false,"mojibakeSamples":[],"cacheMarkers":["WP Rocket"]},"meta":{"description":null,"robots":"max-image-preview:large","openGraph":{},"twitter":{},"hreflang":[{"lang":"et","href":"https://kodud.embach.ee/hello-world/"},{"lang":"x-default","href":"https://kodud.embach.ee/hello-world/"}],"jsonLd":[],"themeColor":"#ffffff","generator":"WP Rocket 3.23"},"outline":{"h1Count":0,"h2Count":0,"h3Count":0,"h4Count":0,"h5Count":0,"h6Count":0,"sequence":[],"skips":[]},"landmarks":{"hasNav":true,"hasMain":true,"hasHeader":true,"hasFooter":true,"skipToContentLink":true},"scripts":{"total":18,"external":[{"src":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","defer":true,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-includes/js/jquery/jquery-migrate.min.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/plugins/wp-rocket/assets/js/wpr-beacon.min.js","defer":false,"async":true,"type":null,"inHead":false}],"inline":[{"bytes":90,"type":null},{"bytes":225,"type":null},{"bytes":12580,"type":"module"},{"bytes":210,"type":null},{"bytes":2195,"type":null},{"bytes":437,"type":null},{"bytes":3448,"type":null},{"bytes":1134,"type":null},{"bytes":384,"type":"speculationrules"},{"bytes":631,"type":null}],"deferCount":1,"asyncCount":1,"blockingCount":6,"speculationRules":true},"styles":{"externalCount":5,"external":[{"href":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.min.css","media":null},{"href":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.css","media":null},{"href":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css","media":"all"}],"inlineCount":3,"inlineBytes":9668},"images":{"total":0,"items":[],"withoutAlt":0,"withoutDimensions":0,"withoutLazyLoading":0},"links":{"anchors":[{"href":"https://kodud.embach.ee/hello-world/#main","text":"Skip to main content"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://embach.ee/","text":"Embach ehitus"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/hello-world/#","text":"Teenused"},{"href":"http://embach.ee/teenused/","text":"Ehitusteenused"},{"href":"http://embach.ee/projektid/","text":"Projektid"},{"href":"https://kodud.embach.ee/hello-world/#","text":"Järelteenindus"},{"href":"https://kodud.embach.ee/hello-world/#","text":"Kodud"},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/hello-world/#","text":"Kodu ostmine"},{"href":"https://kodud.embach.ee/hello-world/#","text":"Meist"},{"href":"https://kodud.embach.ee/hello-world/#","text":"Meeskond"},{"href":"http://embach.ee/too-embachis/","text":"Töö Embachis"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://www.instagram.com/embachehitus/","text":"Instagram"},{"href":"https://www.facebook.com/p/Embach-Ehitus-100063728323807/","text":"Facebook"},{"href":"https://www.linkedin.com/posts/tripod-grupp_embach-ehitus-projekteerimise-projektijuht-activity-7432407444598857728-Gs7e","text":"Linkedin"},{"href":"https://playandnope.com/","text":"Play & Nope Alliance"}],"vagueRepeats":[{"text":"kõik arendused","count":2},{"text":"kontakt","count":2}],"externalCount":8,"preconnectCount":1,"preloadCount":1},"forms":[],"backgroundImages":{"total":0,"items":[]},"priorities":[{"title":"Document has 0 <h1> elements","severity":"high","detail":"A page should have exactly one h1; multiple h1s break document outline"},{"title":"6 render-blocking external scripts","severity":"medium","detail":"Only 1 defer, 1 async; add defer/async to non-critical scripts"}]}},{"tool":"checklist","status":"ok","durationMs":0,"data":{"items":[{"id":"caching","title":"Page caching plugin / CDN active","status":"pass","detail":"Caching plugin detected (WP Rocket)","evidence":["HTML markers: WP Rocket","generator: WP Rocket 3.23"]},{"id":"lazyload","title":"Images lazy-loaded","status":"n/a","detail":"No raster <img> elements found.","evidence":[]},{"id":"heroEager","title":"Hero image eagerly loaded","status":"n/a","detail":"No raster <img> elements found.","evidence":[]},{"id":"heroBackground","title":"Hero is a real <img> (not a CSS background-image)","status":"n/a","detail":"No CSS background-images detected on raster-image-eligible elements.","evidence":[]},{"id":"responsive","title":"Responsive images (srcset / <picture>)","status":"n/a","detail":"Only 0 raster images on the page — responsive-image rule does not apply.","evidence":[]},{"id":"imageSizes","title":"Reasonable number of image sizes","status":"n/a","detail":"Too few raster images to evaluate srcset width variety.","evidence":[]},{"id":"scriptsFooter","title":"JS scripts not blocking in <head>","status":"warn","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async.","evidence":["https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","…//cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js"]}],"summary":{"passed":1,"warned":1,"failed":0,"notApplicable":5},"priorities":[{"title":"JS scripts not blocking in <head>","severity":"medium","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async."}]}}],"coverage":{"pct":100,"missing":[]}},{"url":"https://kodud.embach.ee/sample-page","startedAt":"2026-07-20T09:51:56.658Z","finishedAt":"2026-07-20T09:52:21.188Z","results":[{"tool":"pagespeed","status":"ok","durationMs":18098,"data":{"mobile":{"scores":{"performance":82,"accessibility":94,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":3708.573787016172,"displayValue":"3.7 s","min":3708.573787016172,"max":3708.573787016172},"cls":{"value":0,"min":0,"max":0},"tbt":{"ms":101,"min":101,"max":101},"fcp":{"ms":3225.9203888710044,"min":3225.9203888710044,"max":3225.9203888710044},"speedIndex":{"ms":3225.9203888710044,"min":3225.9203888710044,"max":3225.9203888710044},"ttfb":{"ms":2,"min":2,"max":2}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[],"longTasks":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","durationMs":151},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","durationMs":69}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"largest-contentful-paint","title":"Largest Contentful Paint","description":"Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)","score":0.58,"scoreDisplayMode":"numeric","displayValue":"3.7 s","weight":25,"category":"performance"},{"id":"button-name","title":"Buttons do not have an accessible name","description":"When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.12/button-name).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":10,"category":"accessibility"},{"id":"first-contentful-paint","title":"First Contentful Paint","description":"First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).","score":0.42,"scoreDisplayMode":"numeric","displayValue":"3.2 s","weight":10,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"},{"id":"max-potential-fid","title":"Max Potential First Input Delay","description":"The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more about the Maximum Potential First Input Delay metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-max-potential-fid/).","score":0.83,"scoreDisplayMode":"numeric","displayValue":"150 ms","weight":0,"category":"performance"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":0,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":0,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":0,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"largest-contentful-paint","severity":"medium","detail":"3.7 s"},{"title":"first-contentful-paint","severity":"high","detail":"3.2 s"},{"title":"document-latency-insight","severity":"high","detail":"Est savings of 250 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 50 ms"},{"title":"legacy-javascript-insight","severity":"medium","detail":"Est savings of 13 KiB"}],"samples":5},"desktop":{"scores":{"performance":99,"accessibility":96,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":925.5292571367498,"displayValue":"0.9 s","min":905.0771666560836,"max":925.5292571367498},"cls":{"value":0.007421515076629949,"min":0.007421515076629949,"max":0.007421515076629949},"tbt":{"ms":42,"min":24,"max":42},"fcp":{"ms":578.6763642815156,"min":553.2806862682845,"max":578.6763642815156},"speedIndex":{"ms":710.6242162376947,"min":710.6242162376947,"max":731.8787053373646},"ttfb":{"ms":2,"min":2,"max":2}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div#page > div.main > div.main__footer > footer.footer","shiftScore":0.003739100143169115},{"selector":"div#page > div.main > div.main__footer > footer.footer","shiftScore":0.003682414933460834}],"longTasks":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","durationMs":92}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"target-size","title":"Touch targets do not have sufficient size or spacing.","description":"Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.12/target-size).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":7,"category":"accessibility"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":0,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":0,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":0,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"document-latency-insight","severity":"high","detail":"Est savings of 250 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 50 ms"},{"title":"legacy-javascript-insight","severity":"medium","detail":"Est savings of 13 KiB"},{"title":"network-dependency-tree-insight","severity":"high","detail":""},{"title":"render-blocking-insight","severity":"high","detail":"Est savings of 130 ms"}],"samples":5},"strategies":{"mobile":{"status":"ok"},"desktop":{"status":"ok"}}}},{"tool":"securityHeaders","status":"ok","durationMs":222,"data":{"scores":{"score":0,"present":0,"missing":9},"headers":[{"name":"strict-transport-security","status":"missing","severity":"high","advice":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"name":"content-security-policy","status":"missing","severity":"high","advice":"Add a CSP with default-src and script-src restrictions"},{"name":"x-frame-options","status":"missing","severity":"medium","advice":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"name":"x-content-type-options","status":"missing","severity":"medium","advice":"Send X-Content-Type-Options: nosniff"},{"name":"referrer-policy","status":"missing","severity":"low","advice":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"name":"permissions-policy","status":"missing","severity":"low","advice":"Declare Permissions-Policy to disable unused features"},{"name":"cross-origin-opener-policy","status":"missing","severity":"low","advice":"Set COOP to same-origin to isolate browsing context"},{"name":"cross-origin-resource-policy","status":"missing","severity":"low","advice":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"name":"x-permitted-cross-domain-policies","status":"missing","severity":"low","advice":"Set to none to prevent Flash/PDF cross-domain requests"}],"cookies":[],"infoDisclosure":{"server":"Apache / ZoneOS"},"transport":{"finalUrl":"https://kodud.embach.ee/sample-page/","status":200,"redirected":false},"caching":{"cacheControl":"max-age=0","directives":{"max-age":"0"},"expires":"Mon, 20 Jul 2026 09:51:56 GMT","etag":null,"lastModified":"Mon, 20 Jul 2026 07:35:05 GMT","age":null,"vary":"Accept-Encoding","pragma":null,"issues":[]},"compression":{"contentEncoding":"gzip","contentLength":13944,"decodedBodyBytes":64463,"compressionRatio":0.216,"issues":[]},"allHeaders":{"cache-control":"max-age=0","connection":"Upgrade, Keep-Alive","content-encoding":"gzip","content-length":"13944","content-type":"text/html; charset=UTF-8","date":"Mon, 20 Jul 2026 09:51:56 GMT","expires":"Mon, 20 Jul 2026 09:51:56 GMT","keep-alive":"timeout=5, max=100","last-modified":"Mon, 20 Jul 2026 07:35:05 GMT","server":"Apache / ZoneOS","vary":"Accept-Encoding"},"cdnCache":{"detected":false,"providers":[],"cacheStatus":null,"cacheBypassed":false,"evidence":[]},"httpsRedirect":{"httpUrl":"http://kodud.embach.ee/sample-page","redirectsToHttps":true,"redirectTarget":"https://kodud.embach.ee/sample-page","error":null},"cors":{"allowOrigin":null,"allowCredentials":false,"allowMethods":null,"issues":[]},"priorities":[{"title":"strict-transport-security missing","severity":"high","detail":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"title":"content-security-policy missing","severity":"high","detail":"Add a CSP with default-src and script-src restrictions"},{"title":"x-frame-options missing","severity":"medium","detail":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"title":"x-content-type-options missing","severity":"medium","detail":"Send X-Content-Type-Options: nosniff"},{"title":"referrer-policy missing","severity":"low","detail":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"title":"permissions-policy missing","severity":"low","detail":"Declare Permissions-Policy to disable unused features"},{"title":"cross-origin-opener-policy missing","severity":"low","detail":"Set COOP to same-origin to isolate browsing context"},{"title":"cross-origin-resource-policy missing","severity":"low","detail":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"title":"x-permitted-cross-domain-policies missing","severity":"low","detail":"Set to none to prevent Flash/PDF cross-domain requests"},{"title":"server header discloses technology","severity":"low","detail":"Server: Apache / ZoneOS"}]}},{"tool":"w3c","status":"ok","durationMs":964,"data":{"scores":{"errors":0,"warnings":1,"cosmeticSuppressed":16},"groups":[{"message":"Attribute “nowprocket” not allowed on element “script” at this point.","type":"error","severity":"cosmetic","count":4,"occurrences":[{"line":12,"extract":"css\">\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js\"></scri"},{"line":13,"extract":"ript>\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js\"></scri"},{"line":14,"extract":"ript>\n    <script nowprocket>(funct"},{"line":459,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]},{"message":"Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.","type":"info","severity":"cosmetic","count":12,"occurrences":[{"line":22,"extract":"noscript>\n<meta name='robots' content='max-image-preview:large' />\n<link"},{"line":23,"extract":"large' />\n<link rel=\"alternate\" hreflang=\"et\" href=\"https://kodud.embach.ee/sample-page/\" />\n<link"},{"line":24,"extract":"page/\" />\n<link rel=\"alternate\" hreflang=\"x-default\" href=\"https://kodud.embach.ee/sample-page/\" />\n<link"},{"line":25,"extract":"page/\" />\n<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' />\n<styl"},{"line":36,"extract":"</style>\n\n<link rel='stylesheet' id='core-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css' media='all' />\n<link"},{"line":37,"extract":"='all' />\n<link rel='stylesheet' id='global-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css' media='all' />\n<link"},{"line":38,"extract":"='all' />\n<link rel=\"canonical\" href=\"https://kodud.embach.ee/sample-page/\" />\n<link"},{"line":39,"extract":"page/\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-32x32.png\" sizes=\"32x32\" />\n<link"},{"line":40,"extract":"32x32\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-192x192.png\" sizes=\"192x192\" />\n<link"},{"line":41,"extract":"2x192\" />\n<link rel=\"apple-touch-icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-180x180.png\" />\n<meta"},{"line":42,"extract":"0.png\" />\n<meta name=\"msapplication-TileImage\" content=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-270x270.png\" />\n\n    "},{"line":53,"extract":"</style>\n\n<meta name=\"generator\" content=\"WP Rocket 3.23\" data-wpr-features=\"wpr_cdn wpr_preload_links wpr_desktop\" /></head"}]},{"message":"The “type” attribute is unnecessary for JavaScript resources.","type":"info","severity":"warning","count":1,"occurrences":[{"line":459,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]}],"parserRecovery":null,"priorities":[]}},{"tool":"axe","status":"ok","durationMs":1480,"data":{"scores":{"violations":0,"passes":30,"byImpact":{"critical":0,"serious":0,"moderate":0,"minor":0}},"violations":[],"manualChecks":[{"id":"color-contrast","help":"Elements must meet minimum color contrast ratio thresholds","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/color-contrast?application=playwright","nodes":1}],"priorities":[]}},{"tool":"runtime","status":"ok","durationMs":1486,"data":{"consoleErrors":[],"mixedContent":[],"network":{"requestCount":21,"totalBytes":157411,"byResourceType":{"document":{"count":2,"bytes":13944},"stylesheet":{"count":5,"bytes":37768},"script":{"count":8,"bytes":63030},"other":{"count":1,"bytes":6524},"font":{"count":2,"bytes":28230},"xhr":{"count":3,"bytes":7915}},"thirdPartyOrigins":[{"origin":"https://cdn.jsdelivr.net","count":6,"bytes":29309},{"origin":"https://fonts.googleapis.com","count":2,"bytes":0}],"slowestRequests":[{"url":"https://kodud.embach.ee/sample-page","resourceType":"document","durationMs":207,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"stylesheet","durationMs":140,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"xhr","durationMs":139,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","resourceType":"script","durationMs":47,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","resourceType":"script","durationMs":47,"bytes":187}],"failedRequests":[]},"priorities":[]}},{"tool":"html","status":"ok","durationMs":1486,"data":{"document":{"lang":"et","title":"Sample Page – Kodud","charset":"UTF-8","viewport":"width=device-width, initial-scale=1","canonical":"https://kodud.embach.ee/sample-page/","bytes":64087,"mojibakeDetected":false,"mojibakeSamples":[],"cacheMarkers":["WP Rocket"]},"meta":{"description":null,"robots":"max-image-preview:large","openGraph":{},"twitter":{},"hreflang":[{"lang":"et","href":"https://kodud.embach.ee/sample-page/"},{"lang":"x-default","href":"https://kodud.embach.ee/sample-page/"}],"jsonLd":[],"themeColor":"#ffffff","generator":"WP Rocket 3.23"},"outline":{"h1Count":1,"h2Count":0,"h3Count":0,"h4Count":0,"h5Count":0,"h6Count":0,"sequence":[{"level":1,"text":"Sample Page"}],"skips":[]},"landmarks":{"hasNav":true,"hasMain":true,"hasHeader":true,"hasFooter":true,"skipToContentLink":true},"scripts":{"total":18,"external":[{"src":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","defer":true,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-includes/js/jquery/jquery-migrate.min.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/plugins/wp-rocket/assets/js/wpr-beacon.min.js","defer":false,"async":true,"type":null,"inHead":false}],"inline":[{"bytes":90,"type":null},{"bytes":225,"type":null},{"bytes":12580,"type":"module"},{"bytes":210,"type":null},{"bytes":2195,"type":null},{"bytes":437,"type":null},{"bytes":3448,"type":null},{"bytes":1132,"type":null},{"bytes":384,"type":"speculationrules"},{"bytes":631,"type":null}],"deferCount":1,"asyncCount":1,"blockingCount":6,"speculationRules":true},"styles":{"externalCount":5,"external":[{"href":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.min.css","media":null},{"href":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.css","media":null},{"href":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css","media":"all"}],"inlineCount":3,"inlineBytes":9668},"images":{"total":0,"items":[],"withoutAlt":0,"withoutDimensions":0,"withoutLazyLoading":0},"links":{"anchors":[{"href":"https://kodud.embach.ee/sample-page/#main","text":"Skip to main content"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://embach.ee/","text":"Embach ehitus"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/sample-page/#","text":"Teenused"},{"href":"http://embach.ee/teenused/","text":"Ehitusteenused"},{"href":"http://embach.ee/projektid/","text":"Projektid"},{"href":"https://kodud.embach.ee/sample-page/#","text":"Järelteenindus"},{"href":"https://kodud.embach.ee/sample-page/#","text":"Kodud"},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/sample-page/#","text":"Kodu ostmine"},{"href":"https://kodud.embach.ee/sample-page/#","text":"Meist"},{"href":"https://kodud.embach.ee/sample-page/#","text":"Meeskond"},{"href":"http://embach.ee/too-embachis/","text":"Töö Embachis"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://www.instagram.com/embachehitus/","text":"Instagram"},{"href":"https://www.facebook.com/p/Embach-Ehitus-100063728323807/","text":"Facebook"},{"href":"https://www.linkedin.com/posts/tripod-grupp_embach-ehitus-projekteerimise-projektijuht-activity-7432407444598857728-Gs7e","text":"Linkedin"},{"href":"https://playandnope.com/","text":"Play & Nope Alliance"}],"vagueRepeats":[{"text":"kõik arendused","count":2},{"text":"kontakt","count":2}],"externalCount":8,"preconnectCount":1,"preloadCount":1},"forms":[],"backgroundImages":{"total":0,"items":[]},"priorities":[{"title":"6 render-blocking external scripts","severity":"medium","detail":"Only 1 defer, 1 async; add defer/async to non-critical scripts"}]}},{"tool":"checklist","status":"ok","durationMs":0,"data":{"items":[{"id":"caching","title":"Page caching plugin / CDN active","status":"pass","detail":"Caching plugin detected (WP Rocket)","evidence":["HTML markers: WP Rocket","generator: WP Rocket 3.23"]},{"id":"lazyload","title":"Images lazy-loaded","status":"n/a","detail":"No raster <img> elements found.","evidence":[]},{"id":"heroEager","title":"Hero image eagerly loaded","status":"n/a","detail":"No raster <img> elements found.","evidence":[]},{"id":"heroBackground","title":"Hero is a real <img> (not a CSS background-image)","status":"n/a","detail":"No CSS background-images detected on raster-image-eligible elements.","evidence":[]},{"id":"responsive","title":"Responsive images (srcset / <picture>)","status":"n/a","detail":"Only 0 raster images on the page — responsive-image rule does not apply.","evidence":[]},{"id":"imageSizes","title":"Reasonable number of image sizes","status":"n/a","detail":"Too few raster images to evaluate srcset width variety.","evidence":[]},{"id":"scriptsFooter","title":"JS scripts not blocking in <head>","status":"warn","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async.","evidence":["https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","…//cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js"]}],"summary":{"passed":1,"warned":1,"failed":0,"notApplicable":5},"priorities":[{"title":"JS scripts not blocking in <head>","severity":"medium","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async."}]}}],"coverage":{"pct":100,"missing":[]}},{"url":"https://kodud.embach.ee/koik-arendused","startedAt":"2026-07-20T09:52:02.265Z","finishedAt":"2026-07-20T09:52:29.708Z","results":[{"tool":"pagespeed","status":"ok","durationMs":16277,"data":{"mobile":{"scores":{"performance":76,"accessibility":95,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":5182.979626675126,"displayValue":"5.2 s","min":4983.54986326456,"max":5182.979626675126},"cls":{"value":0,"min":0,"max":0},"tbt":{"ms":11.5,"min":0,"max":11.5},"fcp":{"ms":2777.795936348452,"min":2739.0753381059985,"max":2777.795936348452},"speedIndex":{"ms":3275.0956251190937,"min":2777.117440947014,"max":3275.0956251190937},"ttfb":{"ms":3,"min":2,"max":3}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[],"longTasks":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","durationMs":67},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","durationMs":53}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"largest-contentful-paint","title":"Largest Contentful Paint","description":"Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)","score":0.23,"scoreDisplayMode":"numeric","displayValue":"5.2 s","weight":25,"category":"performance"},{"id":"button-name","title":"Buttons do not have an accessible name","description":"When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.12/button-name).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":10,"category":"accessibility"},{"id":"first-contentful-paint","title":"First Contentful Paint","description":"First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).","score":0.57,"scoreDisplayMode":"numeric","displayValue":"2.8 s","weight":10,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"},{"id":"interactive","title":"Time to Interactive","description":"Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric](https://developer.chrome.com/docs/lighthouse/performance/interactive/).","score":0.73,"scoreDisplayMode":"numeric","displayValue":"5.3 s","weight":0,"category":"performance"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":10,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":1,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":1,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"largest-contentful-paint","severity":"high","detail":"5.2 s"},{"title":"first-contentful-paint","severity":"medium","detail":"2.8 s"},{"title":"document-latency-insight","severity":"high","detail":"Est savings of 300 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 40 ms"},{"title":"image-delivery-insight","severity":"high","detail":"Est savings of 480 KiB"}],"samples":5},"desktop":{"scores":{"performance":97,"accessibility":96,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":1211.4501119396894,"displayValue":"1.2 s","min":1211.4501119396894,"max":1231.1008673165875},"cls":{"value":0.00001308667775130477,"min":0.00001308667775130477,"max":0.00001308667775130477},"tbt":{"ms":0,"min":0,"max":63.5},"fcp":{"ms":669.122280265024,"min":669.122280265024,"max":682.1843816192985},"speedIndex":{"ms":864.7150244055875,"min":864.7150244055875,"max":1046.2635370990029},"ttfb":{"ms":2,"min":2,"max":3}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div.header__inner > div.header__actions > a.button > ::before","shiftScore":0.00001308667775130477}],"longTasks":[],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"target-size","title":"Touch targets do not have sufficient size or spacing.","description":"Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.12/target-size).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":7,"category":"accessibility"},{"id":"largest-contentful-paint","title":"Largest Contentful Paint","description":"Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)","score":0.89,"scoreDisplayMode":"numeric","displayValue":"1.2 s","weight":25,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":10,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":1,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":1,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"largest-contentful-paint","severity":"low","detail":"1.2 s"},{"title":"document-latency-insight","severity":"high","detail":"Est savings of 210 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 50 ms"},{"title":"image-delivery-insight","severity":"high","detail":"Est savings of 265 KiB"},{"title":"legacy-javascript-insight","severity":"medium","detail":"Est savings of 13 KiB"}],"samples":5},"strategies":{"mobile":{"status":"ok"},"desktop":{"status":"ok"}}}},{"tool":"securityHeaders","status":"ok","durationMs":234,"data":{"scores":{"score":0,"present":0,"missing":9},"headers":[{"name":"strict-transport-security","status":"missing","severity":"high","advice":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"name":"content-security-policy","status":"missing","severity":"high","advice":"Add a CSP with default-src and script-src restrictions"},{"name":"x-frame-options","status":"missing","severity":"medium","advice":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"name":"x-content-type-options","status":"missing","severity":"medium","advice":"Send X-Content-Type-Options: nosniff"},{"name":"referrer-policy","status":"missing","severity":"low","advice":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"name":"permissions-policy","status":"missing","severity":"low","advice":"Declare Permissions-Policy to disable unused features"},{"name":"cross-origin-opener-policy","status":"missing","severity":"low","advice":"Set COOP to same-origin to isolate browsing context"},{"name":"cross-origin-resource-policy","status":"missing","severity":"low","advice":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"name":"x-permitted-cross-domain-policies","status":"missing","severity":"low","advice":"Set to none to prevent Flash/PDF cross-domain requests"}],"cookies":[],"infoDisclosure":{"server":"Apache / ZoneOS"},"transport":{"finalUrl":"https://kodud.embach.ee/koik-arendused/","status":200,"redirected":false},"caching":{"cacheControl":"max-age=0","directives":{"max-age":"0"},"expires":"Mon, 20 Jul 2026 09:52:02 GMT","etag":null,"lastModified":"Mon, 20 Jul 2026 07:35:03 GMT","age":null,"vary":"Accept-Encoding","pragma":null,"issues":[]},"compression":{"contentEncoding":"gzip","contentLength":15173,"decodedBodyBytes":75256,"compressionRatio":0.202,"issues":[]},"allHeaders":{"cache-control":"max-age=0","connection":"Upgrade, Keep-Alive","content-encoding":"gzip","content-length":"15173","content-type":"text/html; charset=UTF-8","date":"Mon, 20 Jul 2026 09:52:02 GMT","expires":"Mon, 20 Jul 2026 09:52:02 GMT","keep-alive":"timeout=5, max=100","last-modified":"Mon, 20 Jul 2026 07:35:03 GMT","server":"Apache / ZoneOS","vary":"Accept-Encoding"},"cdnCache":{"detected":false,"providers":[],"cacheStatus":null,"cacheBypassed":false,"evidence":[]},"httpsRedirect":{"httpUrl":"http://kodud.embach.ee/koik-arendused","redirectsToHttps":true,"redirectTarget":"https://kodud.embach.ee/koik-arendused","error":null},"cors":{"allowOrigin":null,"allowCredentials":false,"allowMethods":null,"issues":[]},"priorities":[{"title":"strict-transport-security missing","severity":"high","detail":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"title":"content-security-policy missing","severity":"high","detail":"Add a CSP with default-src and script-src restrictions"},{"title":"x-frame-options missing","severity":"medium","detail":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"title":"x-content-type-options missing","severity":"medium","detail":"Send X-Content-Type-Options: nosniff"},{"title":"referrer-policy missing","severity":"low","detail":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"title":"permissions-policy missing","severity":"low","detail":"Declare Permissions-Policy to disable unused features"},{"title":"cross-origin-opener-policy missing","severity":"low","detail":"Set COOP to same-origin to isolate browsing context"},{"title":"cross-origin-resource-policy missing","severity":"low","detail":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"title":"x-permitted-cross-domain-policies missing","severity":"low","detail":"Set to none to prevent Flash/PDF cross-domain requests"},{"title":"server header discloses technology","severity":"low","detail":"Server: Apache / ZoneOS"}]}},{"tool":"w3c","status":"ok","durationMs":1084,"data":{"scores":{"errors":0,"warnings":1,"cosmeticSuppressed":15},"groups":[{"message":"Attribute “nowprocket” not allowed on element “script” at this point.","type":"error","severity":"cosmetic","count":3,"occurrences":[{"line":12,"extract":"css\">\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js\"></scri"},{"line":13,"extract":"ript>\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js\"></scri"},{"line":14,"extract":"ript>\n    <script nowprocket>(funct"}]},{"message":"Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.","type":"info","severity":"cosmetic","count":12,"occurrences":[{"line":24,"extract":"y=\"high\">\n<meta name='robots' content='max-image-preview:large' />\n<link"},{"line":25,"extract":"large' />\n<link rel=\"alternate\" hreflang=\"et\" href=\"https://kodud.embach.ee/koik-arendused/\" />\n<link"},{"line":26,"extract":"used/\" />\n<link rel=\"alternate\" hreflang=\"x-default\" href=\"https://kodud.embach.ee/koik-arendused/\" />\n<link"},{"line":27,"extract":"used/\" />\n<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' />\n<styl"},{"line":38,"extract":"</style>\n\n<link rel='stylesheet' id='core-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css' media='all' />\n<link"},{"line":39,"extract":"='all' />\n<link rel='stylesheet' id='global-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css' media='all' />\n<link"},{"line":40,"extract":"='all' />\n<link rel=\"canonical\" href=\"https://kodud.embach.ee/koik-arendused/\" />\n<link"},{"line":41,"extract":"used/\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-32x32.png\" sizes=\"32x32\" />\n<link"},{"line":42,"extract":"32x32\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-192x192.png\" sizes=\"192x192\" />\n<link"},{"line":43,"extract":"2x192\" />\n<link rel=\"apple-touch-icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-180x180.png\" />\n<meta"},{"line":44,"extract":"0.png\" />\n<meta name=\"msapplication-TileImage\" content=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-270x270.png\" />\n\n    "},{"line":55,"extract":"</style>\n\n<meta name=\"generator\" content=\"WP Rocket 3.23\" data-wpr-features=\"wpr_preconnect_external_domains wpr_oci wpr_cdn wpr_preload_links wpr_desktop\" /></head"}]},{"message":"This document has heading elements but none of them has a computed heading level of 1.","type":"info","severity":"warning","count":1,"occurrences":[{"line":411,"extract":"          <h2 class=\"h1 hero-development__title\">Pärnas"}]}],"parserRecovery":null,"priorities":[]}},{"tool":"axe","status":"ok","durationMs":1715,"data":{"scores":{"violations":1,"passes":32,"byImpact":{"critical":0,"serious":0,"moderate":1,"minor":0}},"violations":[{"id":"page-has-heading-one","impact":"moderate","help":"Page should contain a level-one heading","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/page-has-heading-one?application=playwright","wcagTags":[],"nodes":[{"selector":"html","html":"<html class=\"js\" lang=\"et\" data-whatinput=\"initial\" data-whatintent=\"initial\">","failureSummary":"Fix all of the following:\n  Page must have a level-one heading"}]}],"manualChecks":[{"id":"color-contrast","help":"Elements must meet minimum color contrast ratio thresholds","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/color-contrast?application=playwright","nodes":3}],"priorities":[{"title":"page-has-heading-one","severity":"medium","detail":"Page should contain a level-one heading"}]}},{"tool":"runtime","status":"ok","durationMs":1721,"data":{"consoleErrors":[],"mixedContent":[],"network":{"requestCount":25,"totalBytes":688243,"byResourceType":{"document":{"count":2,"bytes":15173},"image":{"count":5,"bytes":537700},"stylesheet":{"count":5,"bytes":37768},"script":{"count":7,"bytes":54933},"other":{"count":1,"bytes":6524},"font":{"count":2,"bytes":28230},"xhr":{"count":3,"bytes":7915}},"thirdPartyOrigins":[{"origin":"https://cdn.jsdelivr.net","count":6,"bytes":29309},{"origin":"https://fonts.googleapis.com","count":2,"bytes":0}],"slowestRequests":[{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"stylesheet","durationMs":337,"bytes":0},{"url":"https://kodud.embach.ee/koik-arendused","resourceType":"document","durationMs":202,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"xhr","durationMs":139,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","resourceType":"script","durationMs":54,"bytes":187},{"url":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/siili_4_ttun1468-1-465x310.jpg","resourceType":"image","durationMs":34,"bytes":28248}],"failedRequests":[]},"priorities":[]}},{"tool":"html","status":"ok","durationMs":1721,"data":{"document":{"lang":"et","title":"Kõik arendused – Kodud","charset":"UTF-8","viewport":"width=device-width, initial-scale=1","canonical":"https://kodud.embach.ee/koik-arendused/","bytes":74463,"mojibakeDetected":false,"mojibakeSamples":[],"cacheMarkers":["WP Rocket"]},"meta":{"description":null,"robots":"max-image-preview:large","openGraph":{},"twitter":{},"hreflang":[{"lang":"et","href":"https://kodud.embach.ee/koik-arendused/"},{"lang":"x-default","href":"https://kodud.embach.ee/koik-arendused/"}],"jsonLd":[],"themeColor":"#ffffff","generator":"WP Rocket 3.23"},"outline":{"h1Count":0,"h2Count":2,"h3Count":0,"h4Count":0,"h5Count":0,"h6Count":0,"sequence":[{"level":2,"text":"Pärnasalu kodud"},{"level":2,"text":"Omaniku leidnud kodud"}],"skips":[]},"landmarks":{"hasNav":true,"hasMain":true,"hasHeader":true,"hasFooter":true,"skipToContentLink":true},"scripts":{"total":16,"external":[{"src":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","defer":true,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-includes/js/jquery/jquery-migrate.min.js","defer":false,"async":false,"type":null,"inHead":false}],"inline":[{"bytes":90,"type":null},{"bytes":225,"type":null},{"bytes":12580,"type":"module"},{"bytes":210,"type":null},{"bytes":2195,"type":null},{"bytes":437,"type":null},{"bytes":3448,"type":null},{"bytes":1157,"type":null},{"bytes":384,"type":"speculationrules"}],"deferCount":1,"asyncCount":0,"blockingCount":6,"speculationRules":true},"styles":{"externalCount":5,"external":[{"href":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.min.css","media":null},{"href":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.css","media":null},{"href":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css","media":"all"}],"inlineCount":3,"inlineBytes":9668},"images":{"total":5,"items":[{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0020001-320x180.jpg","alt":"","width":320,"height":180,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[320,640,1600,3200],"inPicture":false,"domOrder":0},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/tammeparja_3d_4-300x200.jpg","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":1},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/siili_4_ttun1468-1-300x200.jpg","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,1024,768,1536,2048,232,465,600,1200,2560],"inPicture":false,"domOrder":2},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/embach2023_moisavahe-kortermajad_foto-timo-arbeiter-4-300x200.jpg","alt":"","width":300,"height":200,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[300,600,1200],"inPicture":false,"domOrder":3},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/portree_0048-e1783936753672-100x100.jpg","alt":"","width":100,"height":100,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[100,300,1024,150,768,200,400,800,1252,155,310],"inPicture":false,"domOrder":4}],"withoutAlt":0,"withoutDimensions":0,"withoutLazyLoading":0},"links":{"anchors":[{"href":"https://kodud.embach.ee/koik-arendused/#main","text":"Skip to main content"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://embach.ee/","text":"Embach ehitus"},{"href":"https://kodud.embach.ee/development/parnasalu-kodud/","text":"Vaata lähemalt"},{"href":"https://kodud.embach.ee/development/tammeparja/","text":"Tammepärja Kodu keset Tammelinna rohelust."},{"href":"https://kodud.embach.ee/development/emajoe-residents/","text":"Emajõe Residents Kaasaegne kortermaja Emajõe kaldal."},{"href":"https://kodud.embach.ee/development/moisavahe/","text":"Mõisavahe Roheline elurajoon aktiivsele perele."},{"href":"tel:3725115633","text":"(+372) 511 56 33"},{"href":"email:embach@embach.ee","text":"embach@embach.ee"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/koik-arendused/#","text":"Teenused"},{"href":"http://embach.ee/teenused/","text":"Ehitusteenused"},{"href":"http://embach.ee/projektid/","text":"Projektid"},{"href":"https://kodud.embach.ee/koik-arendused/#","text":"Järelteenindus"},{"href":"https://kodud.embach.ee/koik-arendused/#","text":"Kodud"},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/koik-arendused/#","text":"Kodu ostmine"},{"href":"https://kodud.embach.ee/koik-arendused/#","text":"Meist"},{"href":"https://kodud.embach.ee/koik-arendused/#","text":"Meeskond"},{"href":"http://embach.ee/too-embachis/","text":"Töö Embachis"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://www.instagram.com/embachehitus/","text":"Instagram"},{"href":"https://www.facebook.com/p/Embach-Ehitus-100063728323807/","text":"Facebook"},{"href":"https://www.linkedin.com/posts/tripod-grupp_embach-ehitus-projekteerimise-projektijuht-activity-7432407444598857728-Gs7e","text":"Linkedin"},{"href":"https://playandnope.com/","text":"Play & Nope Alliance"}],"vagueRepeats":[{"text":"kõik arendused","count":2},{"text":"kontakt","count":2}],"externalCount":10,"preconnectCount":1,"preloadCount":2},"forms":[],"backgroundImages":{"total":0,"items":[]},"priorities":[{"title":"Document has 0 <h1> elements","severity":"high","detail":"A page should have exactly one h1; multiple h1s break document outline"},{"title":"6 render-blocking external scripts","severity":"medium","detail":"Only 1 defer, 0 async; add defer/async to non-critical scripts"}]}},{"tool":"checklist","status":"ok","durationMs":0,"data":{"items":[{"id":"caching","title":"Page caching plugin / CDN active","status":"pass","detail":"Caching plugin detected (WP Rocket)","evidence":["HTML markers: WP Rocket","generator: WP Rocket 3.23"]},{"id":"lazyload","title":"Images lazy-loaded","status":"pass","detail":"All non-hero raster images use loading=\"lazy\".","evidence":[]},{"id":"heroEager","title":"Hero image eagerly loaded","status":"fail","detail":"Hero image has loading=\"lazy\", which delays LCP (inferred from DOM order/size — Lighthouse LCP element unavailable). Use loading=\"eager\" (or omit loading) and add fetchpriority=\"high\".","evidence":["hero: …bach.ee/wp-content/uploads/sites/3/2026/05/parna_kesk_rgb_0020001-320x180.jpg","loading: lazy","fetchpriority: (not set)"]},{"id":"heroBackground","title":"Hero is a real <img> (not a CSS background-image)","status":"n/a","detail":"No CSS background-images detected on raster-image-eligible elements.","evidence":[]},{"id":"responsive","title":"Responsive images (srcset / <picture>)","status":"pass","detail":"5/5 raster images use srcset or <picture> (100%).","evidence":[]},{"id":"imageSizes","title":"Reasonable number of image sizes","status":"pass","detail":"22 distinct srcset widths.","evidence":["widths: 100, 150, 155, 200, 232, 300, 310, 320, 400, 465, 600, 640, 768, 800, 1024, 1200, 1252, 1536, 1600, 2048, 2560, 3200"]},{"id":"scriptsFooter","title":"JS scripts not blocking in <head>","status":"warn","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async.","evidence":["https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","…//cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js"]}],"summary":{"passed":4,"warned":1,"failed":1,"notApplicable":1},"priorities":[{"title":"Hero image eagerly loaded","severity":"high","detail":"Hero image has loading=\"lazy\", which delays LCP (inferred from DOM order/size — Lighthouse LCP element unavailable). Use loading=\"eager\" (or omit loading) and add fetchpriority=\"high\"."},{"title":"JS scripts not blocking in <head>","severity":"medium","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async."}]}}],"coverage":{"pct":100,"missing":[]}},{"url":"https://kodud.embach.ee/kontakt","startedAt":"2026-07-20T09:52:21.188Z","finishedAt":"2026-07-20T09:52:49.766Z","results":[{"tool":"pagespeed","status":"ok","durationMs":14467,"data":{"mobile":{"scores":{"performance":82,"accessibility":91,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":4502.382375944967,"displayValue":"4.5 s","min":4502.382375944967,"max":4544.212262852121},"cls":{"value":0,"min":0,"max":0},"tbt":{"ms":20,"min":20,"max":35.5},"fcp":{"ms":2130.219835535173,"min":2130.219835535173,"max":3785.469251212839},"speedIndex":{"ms":2332.422805951174,"min":2332.422805951174,"max":3785.469251212839},"ttfb":{"ms":2,"min":2,"max":3}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[],"longTasks":[{"url":"Unattributable","durationMs":117},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","durationMs":74},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","durationMs":58}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"largest-contentful-paint","title":"Largest Contentful Paint","description":"Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)","score":0.37,"scoreDisplayMode":"numeric","displayValue":"4.5 s","weight":25,"category":"performance"},{"id":"button-name","title":"Buttons do not have an accessible name","description":"When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.12/button-name).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":10,"category":"accessibility"},{"id":"target-size","title":"Touch targets do not have sufficient size or spacing.","description":"Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.12/target-size).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":7,"category":"accessibility"},{"id":"first-contentful-paint","title":"First Contentful Paint","description":"First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).","score":0.8,"scoreDisplayMode":"numeric","displayValue":"2.1 s","weight":10,"category":"performance"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"},{"id":"interactive","title":"Time to Interactive","description":"Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric](https://developer.chrome.com/docs/lighthouse/performance/interactive/).","score":0.82,"scoreDisplayMode":"numeric","displayValue":"4.5 s","weight":0,"category":"performance"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":10,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":1,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":1,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"largest-contentful-paint","severity":"high","detail":"4.5 s"},{"title":"first-contentful-paint","severity":"low","detail":"2.1 s"},{"title":"document-latency-insight","severity":"high","detail":"Est savings of 320 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 80 ms"},{"title":"image-delivery-insight","severity":"high","detail":"Est savings of 24 KiB"}],"samples":5},"desktop":{"scores":{"performance":99,"accessibility":96,"bestPractices":100,"seo":92},"fieldData":null,"metrics":{"lcp":{"ms":914.5418761654694,"displayValue":"0.9 s","min":914.5418761654694,"max":951.4434449122081},"cls":{"value":0.00001308667775130477,"min":0.00001308667775130477,"max":0.00001308667775130477},"tbt":{"ms":0,"min":0,"max":1.5},"fcp":{"ms":610.4700354344535,"min":610.4700354344535,"max":626.1981465188792},"speedIndex":{"ms":726.4832817503375,"min":726.4832817503375,"max":745.5330153368753},"ttfb":{"ms":2,"min":2,"max":2}},"lcpElement":null,"findings":{"renderBlocking":[],"thirdParty":[],"unusedJs":[{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","wastedKb":117}],"images":{"missingWebp":[],"notResponsive":[],"offscreen":[],"unoptimized":[]},"layoutShifts":[{"selector":"div.header__inner > div.header__actions > a.button > ::before","shiftScore":0.00001308667775130477}],"longTasks":[{"url":"Unattributable","durationMs":63}],"domSize":{"value":0}},"seoAudits":{"metaDescription":{"passed":false},"canonical":{"passed":true},"hreflang":{"passed":true},"robotsTxt":{"passed":true},"tapTargets":{"passed":false},"structuredData":{"passed":false}},"bestPracticesAudits":{"httpsOk":{"passed":true},"errorsInConsole":{"passed":true},"inspectorIssues":{"passed":true},"cspXss":{"passed":true}},"allAudits":{"failed":[{"id":"target-size","title":"Touch targets do not have sufficient size or spacing.","description":"Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.12/target-size).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":7,"category":"accessibility"},{"id":"network-dependency-tree-insight","title":"Network dependency tree","description":"[Avoid chaining critical requests](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.","score":0,"scoreDisplayMode":"numeric","displayValue":"","weight":0,"category":"performance"},{"id":"meta-description","title":"Document does not have a meta description","description":"Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/).","score":0,"scoreDisplayMode":"binary","displayValue":"","weight":1,"category":"seo"}],"refs":{"performance":[{"id":"first-contentful-paint","weight":10,"group":"metrics"},{"id":"largest-contentful-paint","weight":25,"group":"metrics"},{"id":"total-blocking-time","weight":30,"group":"metrics"},{"id":"cumulative-layout-shift","weight":25,"group":"metrics"},{"id":"speed-index","weight":10,"group":"metrics"},{"id":"cache-insight","weight":0,"group":"insights"},{"id":"cls-culprits-insight","weight":0,"group":"insights"},{"id":"document-latency-insight","weight":0,"group":"insights"},{"id":"dom-size-insight","weight":0,"group":"insights"},{"id":"duplicated-javascript-insight","weight":0,"group":"insights"},{"id":"font-display-insight","weight":0,"group":"insights"},{"id":"forced-reflow-insight","weight":0,"group":"insights"},{"id":"image-delivery-insight","weight":0,"group":"insights"},{"id":"inp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-breakdown-insight","weight":0,"group":"insights"},{"id":"lcp-discovery-insight","weight":0,"group":"insights"},{"id":"legacy-javascript-insight","weight":0,"group":"insights"},{"id":"network-dependency-tree-insight","weight":0,"group":"insights"},{"id":"render-blocking-insight","weight":0,"group":"insights"},{"id":"third-parties-insight","weight":0,"group":"insights"},{"id":"viewport-insight","weight":0,"group":"insights"},{"id":"interactive","weight":0,"group":"hidden"},{"id":"max-potential-fid","weight":0,"group":"hidden"},{"id":"unminified-css","weight":0,"group":"diagnostics"},{"id":"unminified-javascript","weight":0,"group":"diagnostics"},{"id":"unused-css-rules","weight":0,"group":"diagnostics"},{"id":"unused-javascript","weight":0,"group":"diagnostics"},{"id":"total-byte-weight","weight":0,"group":"diagnostics"},{"id":"user-timings","weight":0,"group":"diagnostics"},{"id":"bootup-time","weight":0,"group":"diagnostics"},{"id":"mainthread-work-breakdown","weight":0,"group":"diagnostics"},{"id":"long-tasks","weight":0,"group":"diagnostics"},{"id":"non-composited-animations","weight":0,"group":"diagnostics"},{"id":"unsized-images","weight":0,"group":"diagnostics"},{"id":"network-requests","weight":0,"group":"hidden"},{"id":"network-rtt","weight":0,"group":"hidden"},{"id":"network-server-latency","weight":0,"group":"hidden"},{"id":"main-thread-tasks","weight":0,"group":"hidden"},{"id":"diagnostics","weight":0,"group":"hidden"},{"id":"metrics","weight":0,"group":"hidden"},{"id":"screenshot-thumbnails","weight":0,"group":"hidden"},{"id":"final-screenshot","weight":0,"group":"hidden"},{"id":"script-treemap-data","weight":0,"group":"hidden"},{"id":"resource-summary","weight":0,"group":"hidden"},{"id":"redirects","weight":0,"group":"hidden"},{"id":"server-response-time","weight":0,"group":"hidden"},{"id":"layout-shifts","weight":0,"group":"hidden"}],"accessibility":[{"id":"accesskeys","weight":0,"group":"a11y-navigation"},{"id":"aria-allowed-attr","weight":10,"group":"a11y-aria"},{"id":"aria-command-name","weight":0,"group":"a11y-aria"},{"id":"aria-conditional-attr","weight":7,"group":"a11y-aria"},{"id":"aria-deprecated-role","weight":1,"group":"a11y-aria"},{"id":"aria-dialog-name","weight":7,"group":"a11y-aria"},{"id":"aria-hidden-body","weight":10,"group":"a11y-aria"},{"id":"aria-hidden-focus","weight":0,"group":"a11y-aria"},{"id":"aria-input-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-meter-name","weight":0,"group":"a11y-aria"},{"id":"aria-progressbar-name","weight":0,"group":"a11y-aria"},{"id":"aria-prohibited-attr","weight":7,"group":"a11y-aria"},{"id":"aria-required-attr","weight":10,"group":"a11y-aria"},{"id":"aria-required-children","weight":0,"group":"a11y-aria"},{"id":"aria-required-parent","weight":0,"group":"a11y-aria"},{"id":"aria-roles","weight":10,"group":"a11y-aria"},{"id":"aria-text","weight":0,"group":"a11y-aria"},{"id":"aria-toggle-field-name","weight":0,"group":"a11y-aria"},{"id":"aria-tooltip-name","weight":0,"group":"a11y-aria"},{"id":"aria-treeitem-name","weight":0,"group":"a11y-aria"},{"id":"aria-valid-attr-value","weight":10,"group":"a11y-aria"},{"id":"aria-valid-attr","weight":10,"group":"a11y-aria"},{"id":"button-name","weight":10,"group":"a11y-names-labels"},{"id":"bypass","weight":0,"group":"a11y-navigation"},{"id":"color-contrast","weight":7,"group":"a11y-color-contrast"},{"id":"definition-list","weight":0,"group":"a11y-tables-lists"},{"id":"dlitem","weight":0,"group":"a11y-tables-lists"},{"id":"document-title","weight":7,"group":"a11y-names-labels"},{"id":"duplicate-id-aria","weight":0,"group":"a11y-aria"},{"id":"form-field-multiple-labels","weight":0,"group":"a11y-names-labels"},{"id":"frame-title","weight":0,"group":"a11y-names-labels"},{"id":"heading-order","weight":3,"group":"a11y-navigation"},{"id":"html-has-lang","weight":7,"group":"a11y-language"},{"id":"html-lang-valid","weight":7,"group":"a11y-language"},{"id":"html-xml-lang-mismatch","weight":0,"group":"a11y-language"},{"id":"image-alt","weight":10,"group":"a11y-names-labels"},{"id":"input-button-name","weight":0,"group":"a11y-names-labels"},{"id":"input-image-alt","weight":0,"group":"a11y-names-labels"},{"id":"label","weight":0,"group":"a11y-names-labels"},{"id":"link-in-text-block","weight":0,"group":"a11y-color-contrast"},{"id":"link-name","weight":7,"group":"a11y-names-labels"},{"id":"list","weight":7,"group":"a11y-tables-lists"},{"id":"listitem","weight":7,"group":"a11y-tables-lists"},{"id":"meta-refresh","weight":0,"group":"a11y-best-practices"},{"id":"meta-viewport","weight":10,"group":"a11y-best-practices"},{"id":"object-alt","weight":0,"group":"a11y-names-labels"},{"id":"select-name","weight":0,"group":"a11y-names-labels"},{"id":"skip-link","weight":3,"group":"a11y-names-labels"},{"id":"tabindex","weight":7,"group":"a11y-navigation"},{"id":"target-size","weight":7,"group":"a11y-best-practices"},{"id":"td-headers-attr","weight":0,"group":"a11y-tables-lists"},{"id":"th-has-data-cells","weight":0,"group":"a11y-tables-lists"},{"id":"valid-lang","weight":0,"group":"a11y-language"},{"id":"video-caption","weight":0,"group":"a11y-audio-video"},{"id":"landmark-one-main","weight":3,"group":"a11y-best-practices"},{"id":"autocomplete-valid","weight":0,"group":"a11y-best-practices"},{"id":"presentation-role-conflict","weight":1,"group":"a11y-best-practices"},{"id":"svg-img-alt","weight":0,"group":"a11y-best-practices"},{"id":"focusable-controls","weight":0},{"id":"interactive-element-affordance","weight":0},{"id":"logical-tab-order","weight":0},{"id":"visual-order-follows-dom","weight":0},{"id":"focus-traps","weight":0},{"id":"managed-focus","weight":0},{"id":"use-landmarks","weight":0},{"id":"offscreen-content-hidden","weight":0},{"id":"custom-controls-labels","weight":0},{"id":"custom-controls-roles","weight":0},{"id":"table-duplicate-name","weight":0,"group":"a11y-best-practices"},{"id":"empty-heading","weight":0,"group":"a11y-best-practices"},{"id":"aria-allowed-role","weight":0,"group":"a11y-best-practices"},{"id":"image-redundant-alt","weight":0,"group":"a11y-names-labels"},{"id":"identical-links-same-purpose","weight":0,"group":"a11y-best-practices"},{"id":"label-content-name-mismatch","weight":0,"group":"hidden"},{"id":"table-fake-caption","weight":0,"group":"hidden"},{"id":"td-has-header","weight":0,"group":"hidden"}],"best-practices":[{"id":"is-on-https","weight":5,"group":"best-practices-trust-safety"},{"id":"redirects-http","weight":0,"group":"best-practices-trust-safety"},{"id":"geolocation-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"notification-on-start","weight":1,"group":"best-practices-trust-safety"},{"id":"csp-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"has-hsts","weight":0,"group":"best-practices-trust-safety"},{"id":"origin-isolation","weight":0,"group":"best-practices-trust-safety"},{"id":"clickjacking-mitigation","weight":0,"group":"best-practices-trust-safety"},{"id":"trusted-types-xss","weight":0,"group":"best-practices-trust-safety"},{"id":"paste-preventing-inputs","weight":3,"group":"best-practices-ux"},{"id":"image-aspect-ratio","weight":1,"group":"best-practices-ux"},{"id":"image-size-responsive","weight":1,"group":"best-practices-ux"},{"id":"doctype","weight":1,"group":"best-practices-browser-compat"},{"id":"charset","weight":1,"group":"best-practices-browser-compat"},{"id":"baseline","weight":0,"group":"best-practices-browser-compat"},{"id":"js-libraries","weight":0,"group":"best-practices-general"},{"id":"deprecations","weight":5,"group":"best-practices-general"},{"id":"third-party-cookies","weight":5,"group":"best-practices-general"},{"id":"errors-in-console","weight":1,"group":"best-practices-general"},{"id":"valid-source-maps","weight":0,"group":"best-practices-general"},{"id":"inspector-issues","weight":1,"group":"best-practices-general"}],"seo":[{"id":"is-crawlable","weight":4.043478260869565,"group":"seo-crawl"},{"id":"document-title","weight":1,"group":"seo-content"},{"id":"meta-description","weight":1,"group":"seo-content"},{"id":"http-status-code","weight":1,"group":"seo-crawl"},{"id":"link-text","weight":1,"group":"seo-content"},{"id":"crawlable-anchors","weight":1,"group":"seo-crawl"},{"id":"robots-txt","weight":1,"group":"seo-crawl"},{"id":"image-alt","weight":1,"group":"seo-content"},{"id":"hreflang","weight":1,"group":"seo-content"},{"id":"canonical","weight":1,"group":"seo-content"},{"id":"structured-data","weight":0}]}},"priorities":[{"title":"document-latency-insight","severity":"high","detail":"Est savings of 320 ms"},{"title":"font-display-insight","severity":"high","detail":"Est savings of 50 ms"},{"title":"legacy-javascript-insight","severity":"medium","detail":"Est savings of 13 KiB"},{"title":"network-dependency-tree-insight","severity":"high","detail":""},{"title":"render-blocking-insight","severity":"high","detail":"Est savings of 150 ms"}],"samples":5},"strategies":{"mobile":{"status":"ok"},"desktop":{"status":"ok"}}}},{"tool":"securityHeaders","status":"ok","durationMs":233,"data":{"scores":{"score":0,"present":0,"missing":9},"headers":[{"name":"strict-transport-security","status":"missing","severity":"high","advice":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"name":"content-security-policy","status":"missing","severity":"high","advice":"Add a CSP with default-src and script-src restrictions"},{"name":"x-frame-options","status":"missing","severity":"medium","advice":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"name":"x-content-type-options","status":"missing","severity":"medium","advice":"Send X-Content-Type-Options: nosniff"},{"name":"referrer-policy","status":"missing","severity":"low","advice":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"name":"permissions-policy","status":"missing","severity":"low","advice":"Declare Permissions-Policy to disable unused features"},{"name":"cross-origin-opener-policy","status":"missing","severity":"low","advice":"Set COOP to same-origin to isolate browsing context"},{"name":"cross-origin-resource-policy","status":"missing","severity":"low","advice":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"name":"x-permitted-cross-domain-policies","status":"missing","severity":"low","advice":"Set to none to prevent Flash/PDF cross-domain requests"}],"cookies":[],"infoDisclosure":{"server":"Apache / ZoneOS"},"transport":{"finalUrl":"https://kodud.embach.ee/kontakt/","status":200,"redirected":false},"caching":{"cacheControl":"max-age=0","directives":{"max-age":"0"},"expires":"Mon, 20 Jul 2026 09:52:21 GMT","etag":null,"lastModified":"Mon, 20 Jul 2026 07:35:08 GMT","age":null,"vary":"Accept-Encoding","pragma":null,"issues":[]},"compression":{"contentEncoding":"gzip","contentLength":15197,"decodedBodyBytes":72549,"compressionRatio":0.209,"issues":[]},"allHeaders":{"cache-control":"max-age=0","connection":"Upgrade, Keep-Alive","content-encoding":"gzip","content-length":"15197","content-type":"text/html; charset=UTF-8","date":"Mon, 20 Jul 2026 09:52:21 GMT","expires":"Mon, 20 Jul 2026 09:52:21 GMT","keep-alive":"timeout=5, max=100","last-modified":"Mon, 20 Jul 2026 07:35:08 GMT","server":"Apache / ZoneOS","vary":"Accept-Encoding"},"cdnCache":{"detected":false,"providers":[],"cacheStatus":null,"cacheBypassed":false,"evidence":[]},"httpsRedirect":{"httpUrl":"http://kodud.embach.ee/kontakt","redirectsToHttps":true,"redirectTarget":"https://kodud.embach.ee/kontakt","error":null},"cors":{"allowOrigin":null,"allowCredentials":false,"allowMethods":null,"issues":[]},"priorities":[{"title":"strict-transport-security missing","severity":"high","detail":"Add HSTS with max-age >= 1 year, includeSubDomains, and preload"},{"title":"content-security-policy missing","severity":"high","detail":"Add a CSP with default-src and script-src restrictions"},{"title":"x-frame-options missing","severity":"medium","detail":"Prefer CSP frame-ancestors; X-Frame-Options as fallback"},{"title":"x-content-type-options missing","severity":"medium","detail":"Send X-Content-Type-Options: nosniff"},{"title":"referrer-policy missing","severity":"low","detail":"Set a Referrer-Policy such as strict-origin-when-cross-origin"},{"title":"permissions-policy missing","severity":"low","detail":"Declare Permissions-Policy to disable unused features"},{"title":"cross-origin-opener-policy missing","severity":"low","detail":"Set COOP to same-origin to isolate browsing context"},{"title":"cross-origin-resource-policy missing","severity":"low","detail":"Set CORP to same-origin or same-site to prevent cross-origin reads"},{"title":"x-permitted-cross-domain-policies missing","severity":"low","detail":"Set to none to prevent Flash/PDF cross-domain requests"},{"title":"server header discloses technology","severity":"low","detail":"Server: Apache / ZoneOS"}]}},{"tool":"w3c","status":"ok","durationMs":988,"data":{"scores":{"errors":2,"warnings":1,"cosmeticSuppressed":16},"groups":[{"message":"Attribute “nowprocket” not allowed on element “script” at this point.","type":"error","severity":"cosmetic","count":4,"occurrences":[{"line":12,"extract":"css\">\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js\"></scri"},{"line":13,"extract":"ript>\n    <script nowprocket src=\"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js\"></scri"},{"line":14,"extract":"ript>\n    <script nowprocket>(funct"},{"line":463,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]},{"message":"Trailing slash on void elements has no effect and interacts badly with unquoted attribute values.","type":"info","severity":"cosmetic","count":12,"occurrences":[{"line":24,"extract":"y=\"high\">\n<meta name='robots' content='max-image-preview:large' />\n<link"},{"line":25,"extract":"large' />\n<link rel=\"alternate\" hreflang=\"et\" href=\"https://kodud.embach.ee/kontakt/\" />\n<link"},{"line":26,"extract":"takt/\" />\n<link rel=\"alternate\" hreflang=\"x-default\" href=\"https://kodud.embach.ee/kontakt/\" />\n<link"},{"line":27,"extract":"takt/\" />\n<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' />\n<styl"},{"line":38,"extract":"</style>\n\n<link rel='stylesheet' id='core-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css' media='all' />\n<link"},{"line":39,"extract":"='all' />\n<link rel='stylesheet' id='global-css' href='https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css' media='all' />\n<link"},{"line":40,"extract":"='all' />\n<link rel=\"canonical\" href=\"https://kodud.embach.ee/kontakt/\" />\n<link"},{"line":41,"extract":"takt/\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-32x32.png\" sizes=\"32x32\" />\n<link"},{"line":42,"extract":"32x32\" />\n<link rel=\"icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-192x192.png\" sizes=\"192x192\" />\n<link"},{"line":43,"extract":"2x192\" />\n<link rel=\"apple-touch-icon\" href=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-180x180.png\" />\n<meta"},{"line":44,"extract":"0.png\" />\n<meta name=\"msapplication-TileImage\" content=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/05/cropped-favicon-1-270x270.png\" />\n\n    "},{"line":55,"extract":"</style>\n\n<meta name=\"generator\" content=\"WP Rocket 3.23\" data-wpr-features=\"wpr_preconnect_external_domains wpr_oci wpr_cdn wpr_preload_links wpr_desktop\" /></head"}]},{"message":"The “type” attribute is unnecessary for JavaScript resources.","type":"info","severity":"warning","count":1,"occurrences":[{"line":463,"extract":"/noscript><script nowprocket type=\"text/javascript\">var el"}]},{"message":"Bad value “https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/tartu.svg” for attribute “srcset” on element “img”: No width specified for image “https://kodud.embach.ee/w…sites/3/2026/07/tartu.svg”. (When the “sizes” attribute is present, all image candidate strings must specify a width.)","type":"error","severity":"error","count":1,"occurrences":[{"line":526,"extract":"          <img\n        alt=\"\"\n        class=\"image__img\"\n        loading=\"lazy\"\n        width=\"400\"\n        height=\"440\"\n        src=\"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20400%20440%22%3E%3C%2Fsvg%3E\"\n        srcset=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/tartu.svg\"\n        sizes=\"auto\"\n        data-sizes=\"auto\"\n                    data-src=\"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/tartu.svg\"\n                title=\"tartu\"    >\n\n    "}]},{"message":"No “p” element in scope but a “p” end tag seen.","type":"error","severity":"error","count":1,"occurrences":[{"line":538,"extract":"duse.</p>\n</p>\n    \n"}]}],"parserRecovery":null,"priorities":[{"title":"Bad value “https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/tartu.svg” for attribute “srcset” on element “img”: No width specified for image “https://kodud.embach.ee/w…sites/3/2026/07/tartu.svg”. (When the “sizes” attribute is present, all image candidate strings must specify a width.)","severity":"medium","detail":"x1, first at line 526"},{"title":"No “p” element in scope but a “p” end tag seen.","severity":"medium","detail":"x1, first at line 538"}]}},{"tool":"axe","status":"ok","durationMs":1662,"data":{"scores":{"violations":0,"passes":33,"byImpact":{"critical":0,"serious":0,"moderate":0,"minor":0}},"violations":[],"manualChecks":[{"id":"color-contrast","help":"Elements must meet minimum color contrast ratio thresholds","helpUrl":"https://dequeuniversity.com/rules/axe/4.11/color-contrast?application=playwright","nodes":1}],"priorities":[]}},{"tool":"runtime","status":"ok","durationMs":1669,"data":{"consoleErrors":[],"mixedContent":[],"network":{"requestCount":22,"totalBytes":172801,"byResourceType":{"document":{"count":2,"bytes":15197},"stylesheet":{"count":5,"bytes":37768},"image":{"count":2,"bytes":22234},"script":{"count":7,"bytes":54933},"other":{"count":1,"bytes":6524},"font":{"count":2,"bytes":28230},"xhr":{"count":3,"bytes":7915}},"thirdPartyOrigins":[{"origin":"https://cdn.jsdelivr.net","count":6,"bytes":29309},{"origin":"https://fonts.googleapis.com","count":2,"bytes":0}],"slowestRequests":[{"url":"https://kodud.embach.ee/kontakt","resourceType":"document","durationMs":188,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"stylesheet","durationMs":150,"bytes":0},{"url":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","resourceType":"xhr","durationMs":141,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","resourceType":"script","durationMs":47,"bytes":0},{"url":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","resourceType":"script","durationMs":47,"bytes":187}],"failedRequests":[]},"priorities":[]}},{"tool":"html","status":"ok","durationMs":1669,"data":{"document":{"lang":"et","title":"Kontakt – Kodud","charset":"UTF-8","viewport":"width=device-width, initial-scale=1","canonical":"https://kodud.embach.ee/kontakt/","bytes":71849,"mojibakeDetected":false,"mojibakeSamples":[],"cacheMarkers":["WP Rocket"]},"meta":{"description":null,"robots":"max-image-preview:large","openGraph":{},"twitter":{},"hreflang":[{"lang":"et","href":"https://kodud.embach.ee/kontakt/"},{"lang":"x-default","href":"https://kodud.embach.ee/kontakt/"}],"jsonLd":[],"themeColor":"#ffffff","generator":"WP Rocket 3.23"},"outline":{"h1Count":1,"h2Count":0,"h3Count":0,"h4Count":0,"h5Count":0,"h6Count":0,"sequence":[{"level":1,"text":"Kontakt"}],"skips":[]},"landmarks":{"hasNav":true,"hasMain":true,"hasHeader":true,"hasFooter":true,"skipToContentLink":true},"scripts":{"total":16,"external":[{"src":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js","defer":false,"async":false,"type":null,"inHead":true},{"src":"https://kodud.embach.ee/wp-content/plugins/sitepress-multilingual-cms/res/js/cookies/language-cookie.js","defer":true,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/jquery.d34d86e241c9422e.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/core.f01dd0977277031a.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/js/global.04cbabbf7670bc75.js","defer":false,"async":false,"type":null,"inHead":false},{"src":"https://kodud.embach.ee/wp-includes/js/jquery/jquery-migrate.min.js","defer":false,"async":false,"type":null,"inHead":false}],"inline":[{"bytes":90,"type":null},{"bytes":225,"type":null},{"bytes":12580,"type":"module"},{"bytes":210,"type":null},{"bytes":2195,"type":null},{"bytes":437,"type":null},{"bytes":3448,"type":null},{"bytes":1132,"type":null},{"bytes":384,"type":"speculationrules"}],"deferCount":1,"asyncCount":0,"blockingCount":6,"speculationRules":true},"styles":{"externalCount":5,"external":[{"href":"https://cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.min.css","media":null},{"href":"https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.css","media":null},{"href":"https://fonts.googleapis.com/css?family=Open%20Sans%3A400%2C400i%2C600%2C700%2C700i&subset=cyrillic&display=swap","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/core.ee73bb30d0edd749.css","media":"all"},{"href":"https://kodud.embach.ee/wp-content/themes/embach/inc/theme/css/global.b4c11ae504f2ee08.css","media":"all"}],"inlineCount":3,"inlineBytes":9668},"images":{"total":2,"items":[{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/portree_0048-e1783936753672-100x100.jpg","alt":"","width":100,"height":100,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[100,300,1024,150,768,200,400,800,1252,155,310],"inPicture":false,"domOrder":0},{"src":"https://kodud.embach.ee/wp-content/uploads/sites/3/2026/07/tartu.svg","alt":"","width":400,"height":440,"loading":"lazy","hasSrcset":true,"hasSizes":true,"fetchPriority":null,"srcsetWidths":[],"inPicture":false,"domOrder":1}],"withoutAlt":0,"withoutDimensions":0,"withoutLazyLoading":0},"links":{"anchors":[{"href":"https://kodud.embach.ee/kontakt/#main","text":"Skip to main content"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://embach.ee/","text":"Embach ehitus"},{"href":"tel:+3725115633","text":"(+372) 511 56 33"},{"href":"mailto:toomas.rell@embach.ee","text":"toomas.rell@embach.ee"},{"href":"tel:3727300020","text":"(+372) 730 0020"},{"href":"email:embach@embach.ee","text":"embach@embach.ee"},{"href":"http://embach.ee/kodud/koik-arendused/","text":"Järelteenindus"},{"href":"https://kodud.embach.ee/","text":""},{"href":"https://kodud.embach.ee/kontakt/#","text":"Teenused"},{"href":"http://embach.ee/teenused/","text":"Ehitusteenused"},{"href":"http://embach.ee/projektid/","text":"Projektid"},{"href":"https://kodud.embach.ee/kontakt/#","text":"Järelteenindus"},{"href":"https://kodud.embach.ee/kontakt/#","text":"Kodud"},{"href":"https://kodud.embach.ee/koik-arendused/","text":"Kõik arendused"},{"href":"https://kodud.embach.ee/kontakt/#","text":"Kodu ostmine"},{"href":"https://kodud.embach.ee/kontakt/#","text":"Meist"},{"href":"https://kodud.embach.ee/kontakt/#","text":"Meeskond"},{"href":"http://embach.ee/too-embachis/","text":"Töö Embachis"},{"href":"https://kodud.embach.ee/kontakt/","text":"Kontakt"},{"href":"https://www.instagram.com/embachehitus/","text":"Instagram"},{"href":"https://www.facebook.com/p/Embach-Ehitus-100063728323807/","text":"Facebook"},{"href":"https://www.linkedin.com/posts/tripod-grupp_embach-ehitus-projekteerimise-projektijuht-activity-7432407444598857728-Gs7e","text":"Linkedin"},{"href":"https://playandnope.com/","text":"Play & Nope Alliance"}],"vagueRepeats":[{"text":"kõik arendused","count":2},{"text":"kontakt","count":2},{"text":"järelteenindus","count":2}],"externalCount":13,"preconnectCount":1,"preloadCount":2},"forms":[],"backgroundImages":{"total":0,"items":[]},"priorities":[{"title":"6 render-blocking external scripts","severity":"medium","detail":"Only 1 defer, 0 async; add defer/async to non-critical scripts"}]}},{"tool":"checklist","status":"ok","durationMs":0,"data":{"items":[{"id":"caching","title":"Page caching plugin / CDN active","status":"pass","detail":"Caching plugin detected (WP Rocket)","evidence":["HTML markers: WP Rocket","generator: WP Rocket 3.23"]},{"id":"lazyload","title":"Images lazy-loaded","status":"pass","detail":"All raster images use loading=\"lazy\" (1 SVG excluded).","evidence":[]},{"id":"heroEager","title":"Hero image eagerly loaded","status":"fail","detail":"Hero image has loading=\"lazy\", which delays LCP (inferred from DOM order/size — Lighthouse LCP element unavailable). Use loading=\"eager\" (or omit loading) and add fetchpriority=\"high\".","evidence":["hero: …ee/wp-content/uploads/sites/3/2026/07/portree_0048-e1783936753672-100x100.jpg","loading: lazy","fetchpriority: (not set)"]},{"id":"heroBackground","title":"Hero is a real <img> (not a CSS background-image)","status":"n/a","detail":"No CSS background-images detected on raster-image-eligible elements.","evidence":[]},{"id":"responsive","title":"Responsive images (srcset / <picture>)","status":"n/a","detail":"Only 1 raster image on the page (1 SVG excluded) — responsive-image rule does not apply.","evidence":[]},{"id":"imageSizes","title":"Reasonable number of image sizes","status":"n/a","detail":"Too few raster images to evaluate srcset width variety.","evidence":[]},{"id":"scriptsFooter","title":"JS scripts not blocking in <head>","status":"warn","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async.","evidence":["https://cdn.jsdelivr.net/gh/orestbida/iframemanager@1.3.0/dist/iframemanager.js","…//cdn.jsdelivr.net/gh/orestbida/cookieconsent@3.0.1/dist/cookieconsent.umd.js"]}],"summary":{"passed":2,"warned":1,"failed":1,"notApplicable":3},"priorities":[{"title":"Hero image eagerly loaded","severity":"high","detail":"Hero image has loading=\"lazy\", which delays LCP (inferred from DOM order/size — Lighthouse LCP element unavailable). Use loading=\"eager\" (or omit loading) and add fetchpriority=\"high\"."},{"title":"JS scripts not blocking in <head>","severity":"medium","detail":"2 render-blocking scripts in <head>. Move to footer or add defer/async."}]}}],"coverage":{"pct":100,"missing":[]}}],"coverage":{"pagesAudited":5,"pagesAttempted":5,"pct":100,"missing":[]}}