{"id":3638,"date":"2026-09-12T10:40:37","date_gmt":"2026-09-12T10:40:37","guid":{"rendered":"https:\/\/glennabraas.com\/?page_id=3638"},"modified":"2026-09-16T15:21:10","modified_gmt":"2026-09-16T15:21:10","slug":"ai-101","status":"publish","type":"page","link":"https:\/\/glennabraas.com\/nl\/projects\/ai-101\/","title":{"rendered":"AI 101"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3638\" class=\"elementor elementor-3638 elementor-bc-flex-widget\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a706100 e-con-full e-flex e-con e-parent\" data-id=\"a706100\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-42851de elementor-widget elementor-widget-html\" data-id=\"42851de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style id=\"ga-pt-css\">div.ga-pt[aria-hidden=\"true\"]{position:fixed;inset:0;z-index:2147483000;pointer-events:none;background-image:linear-gradient(90deg,#FDBA74,#DD99DD)}div.ga-pt[aria-hidden=\"true\"]{clip-path:inset(0 0 0 0);animation:ga-pt-in 465ms cubic-bezier(.65,0,.35,1) 90ms both}@keyframes ga-pt-in{to{clip-path:inset(0 0 0 100%)}}div.ga-pt.ga-pt-noin[aria-hidden=\"true\"]{animation:none;clip-path:inset(0 0 0 100%)}div.ga-pt.ga-pt-go[aria-hidden=\"true\"]{animation:ga-pt-out 255ms cubic-bezier(.65,0,.35,1) both}@keyframes ga-pt-out{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@view-transition{navigation:auto}:active-view-transition-type(ga-page)::view-transition-group(*),:active-view-transition-type(ga-page)::view-transition-image-pair(*),:active-view-transition-type(ga-page)::view-transition-new(*){animation:none}:active-view-transition-type(ga-page)::view-transition-old(*){display:none}@media (prefers-reduced-motion:reduce){div.ga-pt[aria-hidden=\"true\"]{display:none!important}@view-transition{navigation:none}}<\/style>\n<div class=\"ga-pt ga-pt-noin\" aria-hidden=\"true\"><\/div>\n<script id=\"ga-pt-js\">\n(function () {\n  var el = document.querySelector(\"div.ga-pt[aria-hidden='true']\");\n  if (!el) return;\n  var reduce = false;\n  try { reduce = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches; } catch (e) {}\n  if (reduce) return;\n  \/* Native: the browser can hold the old page and swap to the new one itself\n     (cross-document view transitions, with types). Then a click is never\n     held back - the sweep starts as the browser starts fetching, and the\n     navigation is the browser's own from the first millisecond. Without it\n     (Firefox today), the old way: the click waits for the sweep, 375ms at\n     the most. *\/\n  var native = !!(window.CSSViewTransitionRule && window.PageSwapEvent);\n  if (native) {\n    var tag = function (e) {\n      var vt = e.viewTransition;\n      if (!vt) return;\n      if (vt.types) vt.types.add(\"ga-page\");\n      \/* A transition the browser skips - the next page painted before this\n         rule was parsed, or it took too long - rejects its promises. That is\n         not a fault: the navigation still happens, only without the held\n         frame. Caught, so it is not reported as one. *\/\n      var hush = function () {};\n      if (vt.ready) vt.ready.catch(hush);\n      if (vt.finished) vt.finished.catch(hush);\n      if (vt.updateCallbackDone) vt.updateCallbackDone.catch(hush);\n    };\n    window.addEventListener(\"pageswap\", tag);\n    window.addEventListener(\"pagereveal\", tag);\n  }\n  \/* Coming back through the bfcache restores the DOM as it was when you left\n     \u2014 which is mid-sweep, fully covered. Clear it or the page stays behind a\n     wall of peach. *\/\n  window.addEventListener(\"pageshow\", function (e) {\n    if (e.persisted) el.classList.remove(\"ga-pt-go\");\n  });\n  window.addEventListener(\"pagehide\", function () { el.classList.remove(\"ga-pt-go\"); });\n  document.addEventListener(\"click\", function (e) {\n    if (e.defaultPrevented || e.button !== 0) return;\n    if (e.metaKey || e.ctrlKey || e.shiftKey || e.altKey) return;\n    var a = e.target && e.target.closest ? e.target.closest(\"a\") : null;\n    if (!a || !a.href) return;\n    if (a.target && a.target !== \"_self\") return;\n    if (a.hasAttribute(\"download\") || a.getAttribute(\"rel\") === \"external\") return;\n    var raw = a.getAttribute(\"href\") || \"\";\n    if (!raw || raw.charAt(0) === \"#\") return;\n    if (\/^(mailto:|tel:|javascript:)\/i.test(raw)) return;\n    var u;\n    try { u = new URL(a.href, location.href); } catch (err) { return; }\n    if (u.origin !== location.origin) return;\n    \/* an in-page jump is not a page change *\/\n    if (u.pathname === location.pathname && u.search === location.search) return;\n    \/* anything the browser will hand to a download or a viewer, leave alone *\/\n    if (\/\\.(zip|pdf|jpe?g|png|gif|webp|svg|mp4|mp3|docx?|xlsx?)$\/i.test(u.pathname)) return;\n    if (native) {\n      \/* The click goes through untouched. If the navigation never happens -\n         a stopped load, a response with no page - the curtain lifts again\n         rather than leaving the reader behind it. *\/\n      el.classList.add(\"ga-pt-go\");\n      setTimeout(function () { el.classList.remove(\"ga-pt-go\"); }, 6000);\n      return;\n    }\n    e.preventDefault();\n    el.classList.add(\"ga-pt-go\");\n    \/* Navigate twice over: when the sweep finishes, and on a timer regardless.\n       The timer is the one that matters \u2014 it means a click is never lost, no\n       matter what the animation does or does not do. *\/\n    var gone = false;\n    var leave = function () { if (gone) return; gone = true; location.href = a.href; };\n    el.addEventListener(\"animationend\", leave, { once: true });\n    setTimeout(leave, 375);\n  }, true);\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f6f2717 e-con-full e-flex e-con e-parent\" data-id=\"f6f2717\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d87cda4 elementor-widget elementor-widget-html\" data-id=\"d87cda4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script id=\"ga-x-js\" data-kit=\"a03b2c0233\">(function () {\n\"use strict\";\nvar root = document.documentElement;\nvar reduced = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\nroot.classList.add(\"ga-js\");\nvar NL = \/^nl\/i.test(root.getAttribute(\"lang\") || \"\");\nfunction say(en, nl) { return NL ? nl : en; }\nvar CREDIT = \/\u00a9\\s*\\d{4}\/;\nfunction ready(fn) {\nif (document.readyState !== \"loading\") fn();\nelse document.addEventListener(\"DOMContentLoaded\", fn);\n}\nvar host = null;\nfunction markHost() {\nvar tag = document.getElementById(\"ga-x-css\") || document.getElementById(\"ga-x-js\");\nhost = tag ? tag.closest(\".e-con\") : null;\nif (host) host.classList.add(\"ga-x-host\");\nreturn host;\n}\nfunction isMine(el) {\nif (host && (el === host || host.contains(el))) return true;\nreturn !!(el && el.closest && el.closest(\".ga-tpl-page\"));\n}\nfunction findHeader() {\nvar el = null;\nvar marked = [].filter.call(document.querySelectorAll(\".she-header-yes\"), function (c) { return !isMine(c); });\nfor (var mi = 0; mi < marked.length; mi++) {\nif (window.getComputedStyle(marked[mi]).display !== \"none\") { el = marked[mi]; break; }\n}\nif (!el && marked.length) el = marked[0];\nif (!el) el = document.querySelector(\".ehf-header .e-con, .elementor-location-header .e-con\");\nif (!el) {\nvar cons = document.querySelectorAll(\".e-con\");\nfor (var i = 0; i < cons.length; i++) {\nif (!isMine(cons[i])) { el = cons[i]; break; }\n}\n}\nreturn el && !isMine(el) ? el : null;\n}\nfunction findArticle() {\nvar best = null, bestCount = 0;\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con)) return;\nvar n = con.querySelectorAll(\":scope > .elementor-widget-text-editor\").length;\nif (n > bestCount) { bestCount = n; best = con; }\n});\nreturn bestCount >= 2 ? best : null;\n}\nvar STAGGER = 60, STAGGER_MAX = 6;\nfunction token(name, fallback) {\nvar v = parseFloat(window.getComputedStyle(root).getPropertyValue(name));\nreturn isNaN(v) ? fallback : v;\n}\nfunction staggerOf(i) { return Math.min(i, STAGGER_MAX) * STAGGER; }\nvar breathe = !reduced && \"IntersectionObserver\" in window;\nvar scrollV = 0, scrollY0 = window.scrollY || window.pageYOffset || 0, scrollT0 = 0, scrollRaf = 0, restT = 0;\nwindow.addEventListener(\"scroll\", function () {\nif (scrollRaf || !window.requestAnimationFrame) return;\nscrollRaf = requestAnimationFrame(function (t) {\nscrollRaf = 0;\nvar y = window.scrollY || window.pageYOffset || 0;\nvar dt = Math.max(1, t - scrollT0), v = Math.abs(y - scrollY0) \/ dt;\nscrollV = dt > 120 ? v : scrollV * 0.6 + v * 0.4;\nscrollY0 = y; scrollT0 = t;\nif (!root.classList.contains(\"ga-scrolling\")) root.classList.add(\"ga-scrolling\");\nclearTimeout(restT);\nrestT = setTimeout(function () { root.classList.remove(\"ga-scrolling\"); }, 200);\n});\n}, { passive: true });\nfunction flying() { return scrollV > 1.2 && performance.now() - scrollT0 < 160; }\nvar REACH = \"100000px 0px 0px 0px\";\nfunction quickOf(e) { return flying() || e.boundingClientRect.bottom < 0; }\nvar watched = new Map();\nvar motionIO = (!reduced && \"IntersectionObserver\" in window) ? new IntersectionObserver(function (entries) {\nentries.forEach(function (e) {\nif (!e.isIntersecting || !watched.has(e.target)) return;\nmotionIO.unobserve(e.target);\nvar fns = watched.get(e.target), quick = quickOf(e);\nwatched.delete(e.target);\nif (quick) e.target.classList.add(\"ga-quick\");\nfns.forEach(function (fn) { fn(false, quick); });\n});\n}, { threshold: 0.2, rootMargin: REACH }) : null;\nfunction onIn(el, fn) {\nif (!el) return;\nif (!motionIO) { fn(true, false); return; }\nif (watched.has(el)) { watched.get(el).push(fn); return; }\nwatched.set(el, [fn]);\nmotionIO.observe(el);\n}\nfunction countTo(node, to, delay) {\nvar dec = (String(to).split(\".\")[1] || \"\").length;\nvar show = function (v) { node.textContent = dec ? v.toFixed(dec) : String(Math.round(v)); };\nif (reduced || !window.requestAnimationFrame) { show(to); return; }\nvar D = token(\"--ga-t-count\", 1000), t0 = null;\nshow(0);\nsetTimeout(function () {\nrequestAnimationFrame(function tick(now) {\nif (t0 === null) t0 = now;\nvar p = Math.min(1, (now - t0) \/ D);\nshow((1 - Math.pow(1 - p, 3)) * to);\nif (p < 1) requestAnimationFrame(tick);\n});\n}, delay || 0);\nsetTimeout(function () { show(to); }, (delay || 0) + D + 120);\n}\nfunction transition(update) {\nif (!reduced && document.startViewTransition) {\ntry { document.startViewTransition(update); return; } catch (e) {  }\n}\nupdate();\n}\nvar MON_EN = [\"JAN\", \"FEB\", \"MAR\", \"APR\", \"MAY\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OCT\", \"NOV\", \"DEC\"];\nvar MON_NL = [\"JAN\", \"FEB\", \"MRT\", \"APR\", \"MEI\", \"JUN\", \"JUL\", \"AUG\", \"SEP\", \"OKT\", \"NOV\", \"DEC\"];\nfunction saidDate(t) {\nvar m = String(t).trim().match(\/^(\\d{1,2})-(\\d{1,2})-(\\d{4})$\/);\nif (!m || +m[2] < 1 || +m[2] > 12) return null;\nreturn (+m[1]) + \" \" + (NL ? MON_NL : MON_EN)[+m[2] - 1] + \" \" + m[3];\n}\nwindow.gaMotion = { onIn: onIn, countTo: countTo, transition: transition, reduced: reduced };\nready(function () {\nmarkHost();\nvar STRAY = \"b,i,em,strong,u,s,small,span,mark,sub,sup\";\nfor (var pass = 0; pass < 4; pass++) {\nvar wrapped = [].filter.call(document.querySelectorAll(STRAY), function (n) {\nreturn n.querySelector(\".elementor-widget, .e-con\");\n});\nif (!wrapped.length) break;\nwrapped.forEach(function (n) {\nvar par = n.parentNode;\nif (!par) return;\nwhile (n.firstChild) par.insertBefore(n.firstChild, n);\npar.removeChild(n);\n});\n}\nvar header = findHeader();\nvar logo = null;\nif (header) {\nheader.classList.add(\"ga-x-header\");\nlogo = header.querySelector(\".elementor-widget-heading\");\nif (logo) logo.classList.add(\"ga-x-logo\");\nvar isDesktopHeader = !header.classList.contains(\"elementor-hidden-desktop\");\nvar links = [];\nheader.querySelectorAll(\".elementor-widget-heading\").forEach(function (w) {\nif (w === logo) return;\nif (\/^(NOTES|NOTITIES)$\/i.test(w.textContent.trim())) { w.classList.add(\"ga-h-hide\"); return; }\nlinks.push(w);\n});\nvar sc = header.querySelector(\".elementor-widget-shortcode\");\nvar realGrid = header.querySelector(\":scope > .ga-h-grid\");\nif (isDesktopHeader && realGrid) {\n} else if (isDesktopHeader && logo && links.length >= 4) {\nvar grid = document.createElement(\"div\");\ngrid.className = \"ga-h-grid\";\n[].forEach.call(header.children, function (c) { c.classList.add(\"ga-h-old\"); });\n[links[0], links[1], logo, links[2], links[3]].forEach(function (w) { grid.appendChild(w); });\nvar other = sc ? sc.querySelector(\".trp-switcher-dropdown-list a[href], .trp-ls-shortcode-language a[href]:not(.trp-ls-shortcode-disabled-language)\") : null;\nif (other) {\nvar cur = (document.documentElement.lang || \"en\").slice(0, 2).toUpperCase();\nvar m = (other.getAttribute(\"href\") || \"\").match(\/^https?:\\\/\\\/[^\\\/]+\\\/([a-z]{2})(?:\\\/|$)\/i);\nvar alt = m ? m[1].toUpperCase() : (cur === \"EN\" ? \"NL\" : \"EN\");\nvar box = document.createElement(\"div\"); box.className = \"ga-lang\";\nvar curEl = document.createElement(\"span\"); curEl.className = \"ga-lang-cur\"; curEl.textContent = cur; curEl.setAttribute(\"aria-current\", \"true\");\nvar altEl = document.createElement(\"a\"); altEl.className = \"ga-lang-alt\"; altEl.href = other.href; altEl.textContent = alt;\naltEl.setAttribute(\"lang\", alt.toLowerCase());\naltEl.setAttribute(\"hreflang\", alt.toLowerCase());\nvar img = other.querySelector(\"img\"); if (img && img.alt) altEl.title = img.alt;\n(cur < alt ? [curEl, altEl] : [altEl, curEl]).forEach(function (n) { box.appendChild(n); });\ngrid.appendChild(box);\nsc.classList.add(\"ga-h-hide\");\n} else if (sc) {\ngrid.appendChild(sc);\n}\nheader.appendChild(grid);\nheader.classList.add(\"ga-h-centred\");\n}\nheader.classList.add(\"ga-h-done\");\n}\ndocument.querySelectorAll(\".she-header-yes\").forEach(function (h) { h.classList.add(\"ga-h-done\"); });\ndocument.querySelectorAll(\".hfe-nav-menu .menu-item\").forEach(function (li) {\nvar a = li.querySelector(\"a\");\nif (a && \/^(NOTES|NOTITIES)$\/i.test(a.textContent.trim())) li.classList.add(\"ga-h-hide\");\n});\ndocument.querySelectorAll(\"div.hfe-nav-menu.hfe-nav-menu-layout\").forEach(function (wrap) {\nif (isMine(wrap) || wrap.hasAttribute(\"data-ga-mnav\")) return;\nvar ul = wrap.querySelector(\"ul.hfe-nav-menu\");\nvar toggle = wrap.querySelector(\".hfe-nav-menu__toggle\");\nif (!ul || !toggle) return;\nwrap.classList.add(\"ga-mnav\"); wrap.setAttribute(\"data-ga-mnav\", \"1\");\nvar here = location.pathname.replace(\/\\\/+$\/, \"\") || \"\/\";\nul.querySelectorAll(\"a.hfe-menu-item\").forEach(function (a) {\nif (!a.querySelector(\".ga-nav-label\")) {\nvar lab = document.createElement(\"span\");\nlab.className = \"ga-nav-label\";\nwhile (a.firstChild) lab.appendChild(a.firstChild);\na.appendChild(lab);\n}\nvar href = a.getAttribute(\"href\") || \"\";\nvar m = href.match(\/^(?:https?:\\\/\\\/[^\\\/]+)?(\\\/[^?#]*)\/);\nvar path = m ? m[1].replace(\/\\\/+$\/, \"\") || \"\/\" : null;\nif (path && path === here) {\na.classList.add(\"ga-nav-here\");\na.setAttribute(\"aria-current\", \"page\");\n}\n});\nvar tpItem = ul.querySelector(\"li.trp-language-switcher-container, li.trp-menu-ls-item\");\nvar tpLink = tpItem ? tpItem.querySelector(\"a[href]\") : null;\nif (tpLink && !ul.querySelector(\".ga-mnav-lang\")) {\nvar cur = (document.documentElement.lang || \"en\").slice(0, 2).toUpperCase();\nvar mm = (tpLink.getAttribute(\"href\") || \"\").match(\/^https?:\\\/\\\/[^\\\/]+\\\/([a-z]{2})(?:\\\/|$)\/i);\nvar alt = mm ? mm[1].toUpperCase() : (cur === \"EN\" ? \"NL\" : \"EN\");\nvar li = document.createElement(\"li\");\nli.className = \"ga-mnav-lang\";\nvar box = document.createElement(\"div\");\nbox.className = \"ga-lang\";\nvar curEl = document.createElement(\"span\");\ncurEl.className = \"ga-lang-cur\"; curEl.textContent = cur; curEl.setAttribute(\"aria-current\", \"true\");\nvar altEl = document.createElement(\"a\");\naltEl.className = \"ga-lang-alt\"; altEl.href = tpLink.href; altEl.textContent = alt;\n(cur < alt ? [curEl, altEl] : [altEl, curEl]).forEach(function (n) { box.appendChild(n); });\nli.appendChild(box);\nul.appendChild(li);\n}\nvar scrim = document.querySelector(\".ga-mnav-scrim\");\nif (!scrim) {\nscrim = document.createElement(\"div\");\nscrim.className = \"ga-mnav-scrim\";\nscrim.setAttribute(\"aria-hidden\", \"true\");\ndocument.body.appendChild(scrim);\n}\nvar bar = wrap.closest(\".she-header-yes\") || wrap.closest(\".e-con\");\nfunction measure() {\nif (!bar) return;\nvar b = Math.round(bar.getBoundingClientRect().bottom);\ndocument.documentElement.style.setProperty(\"--ga-hh\", (b > 0 ? b : 0) + \"px\");\n}\nfunction setOpen(on) {\nmeasure();\nvar was = document.documentElement.classList.contains(\"ga-menu-open\");\ndocument.documentElement.classList.toggle(\"ga-menu-open\", !!on);\ntoggle.setAttribute(\"aria-expanded\", on ? \"true\" : \"false\");\nclearTimeout(setOpen.t);\nif (was && !on) {\ndocument.documentElement.classList.add(\"ga-menu-out\");\nsetOpen.t = setTimeout(function () { document.documentElement.classList.remove(\"ga-menu-out\"); }, 420);\nif (ul.contains(document.activeElement)) toggle.focus({ preventScroll: true });\n} else if (on && !was) {\ndocument.documentElement.classList.remove(\"ga-menu-out\");\nvar firstLink = ul.querySelector(\"a[href]\");\nif (firstLink) setOpen.t = setTimeout(function () { firstLink.focus({ preventScroll: true }); }, 360);\n}\n}\nvar fresh = toggle.cloneNode(true);\ntoggle.parentNode.replaceChild(fresh, toggle);\ntoggle = fresh;\ntoggle.setAttribute(\"aria-haspopup\", \"true\");\nmeasure();\nsetOpen(false);\nwindow.addEventListener(\"resize\", measure);\nvar measureRaf = 0;\nwindow.addEventListener(\"scroll\", function () {\nif (measureRaf || !document.documentElement.classList.contains(\"ga-menu-open\")) return;\nmeasureRaf = requestAnimationFrame(function () { measureRaf = 0; measure(); });\n}, { passive: true });\ntoggle.addEventListener(\"click\", function (e) {\ne.preventDefault();\nsetOpen(!document.documentElement.classList.contains(\"ga-menu-open\"));\n});\ntoggle.addEventListener(\"keydown\", function (e) {\nif (e.key === \"Enter\" || e.key === \" \" || e.key === \"Spacebar\") {\ne.preventDefault();\nsetOpen(!document.documentElement.classList.contains(\"ga-menu-open\"));\n}\n});\nscrim.addEventListener(\"click\", function () { setOpen(false); });\nscrim.addEventListener(\"touchmove\", function (e) { e.preventDefault(); }, { passive: false });\ndocument.addEventListener(\"keydown\", function (e) {\nif (e.key === \"Escape\") setOpen(false);\n});\nul.addEventListener(\"click\", function (e) {\nif (e.target.closest(\"a\")) setOpen(false);\n});\n});\nvar form = document.querySelector(\".wpcf7\");\nif (form) {\nvar fc = form.closest(\".e-con\") || form.parentElement;\nif (fc) fc.classList.add(\"ga-x-form\");\n}\nvar article = findArticle();\nif (article) article.classList.add(\"ga-article\");\nvar hero = null;\nvar DO = \/^(SEND|CONTACT|VERSTUREN|VERZENDEN)$\/i;\nfunction tagButton(el) {\nif (!el || isMine(el)) return;\nvar label = (el.value || el.textContent || \"\").trim();\nvar href = el.getAttribute(\"href\");\nvar bg = window.getComputedStyle(el).backgroundColor.replace(\/\\s\/g, \"\");\nel.classList.add(\"ga-btn\");\nel.classList.add(DO.test(label) ? \"ga-btn-do\" : \"ga-btn-go\");\nif (\/^(SOON|BINNENKORT)$\/i.test(label) || (el.tagName === \"A\" && (!href || href === \"#\" || href === \"\"))) {\nel.classList.add(\"ga-btn-off\");\nel.removeAttribute(\"href\");\nel.setAttribute(\"aria-disabled\", \"true\");\n} else if (bg === \"rgb(221,153,221)\" || bg === \"rgba(221,153,221,1)\") {\nel.classList.add(\"ga-btn-2\");\n}\nvar wrap = el.closest(\".elementor-widget\");\nif (wrap) wrap.classList.add(\"ga-btn-wrap\");\n}\ndocument.querySelectorAll(\"a.elementskit-btn, a.ekit-double-btn, .ekit-btn, a.elementor-button, input.wpcf7-submit\").forEach(tagButton);\nvar scoreEl = null, scoreVal = 0;\ndocument.querySelectorAll(\".elementor-heading-title\").forEach(function (h) {\nif (scoreEl || isMine(h)) return;\nvar m = h.textContent.trim().match(\/^(\\d{1,3})\\\/100$\/);\nif (m) { scoreEl = h; scoreVal = parseInt(m[1], 10); }\n});\nvar slateEl = null;\nif (scoreEl) {\nvar numW = scoreEl.closest(\".elementor-widget\");\nvar cell = numW && numW.closest(\".e-con\");\nslateEl = cell && cell.parentElement ? cell.parentElement.closest(\".e-con\") : null;\nif (numW && cell && slateEl && !isMine(slateEl)) {\nnumW.classList.add(\"ga-score-num\");\ncell.classList.add(\"ga-score-cell\");\nslateEl.classList.add(\"ga-score\");\n[].forEach.call(slateEl.children, function (k) {\nif (k !== cell && k.classList && k.classList.contains(\"e-con\")) k.classList.add(\"ga-score-verdict\");\n});\nslateEl.querySelectorAll(\".elementor-widget-heading\").forEach(function (w) {\nif (\/^(FINAL SCORE|VERDICT|EINDSCORE|CONCLUSIE)$\/i.test(w.textContent.trim())) w.classList.add(\"ga-slate-label\");\n});\nscoreEl.innerHTML = '<span class=\"ga-num\">' + scoreVal + '<\/span><span class=\"ga-suffix\">\/100<\/span>';\n}\n}\nif (article) {\narticle.querySelectorAll(\".elementor-widget-heading\").forEach(function (w) {\nif (w.classList.contains(\"ga-slate-label\") || w.classList.contains(\"ga-score-num\")) return;\nvar t = w.querySelector(\".elementor-heading-title\");\nif (!t) return;\nvar st = window.getComputedStyle(t);\nif (parseInt(st.fontSize, 10) >= 28 && \/Courier\/i.test(st.fontFamily)) w.classList.add(\"ga-subhead\");\n});\n}\ndocument.querySelectorAll(\".elementor-widget-heading .elementor-heading-title\").forEach(function (t) {\nif (isMine(t) || t.tagName === \"H1\") return;\nvar st2 = window.getComputedStyle(t);\nvar txt = t.textContent.trim();\nvar onTimeline = \/timeline\/i.test(location.pathname) || \/Timeline\/i.test(document.title || \"\");\nif (!onTimeline && parseInt(st2.fontSize, 10) >= 40 && \/Sora\/i.test(st2.fontFamily) && txt === txt.toUpperCase()) {\nvar w2 = t.closest(\".elementor-widget\");\nif (w2 && !(hero && hero.contains(w2))) {\nw2.classList.add(\"ga-section-title\");\nif (st2.textAlign === \"center\") w2.classList.add(\"ga-section-title--c\");\n}\n}\n});\ndocument.querySelectorAll(\".elementor-widget-text-editor\").forEach(function (w) {\nif (isMine(w)) return;\nvar q = w.querySelector(\"blockquote\");\nif (q && w.textContent.trim() === q.textContent.trim()) w.classList.add(\"ga-pull\");\n});\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-callout\")) return;\nvar kids = [].filter.call(con.children, function (k) { return k.classList && k.classList.contains(\"elementor-widget\"); });\nif (kids.length !== 2) return;\nif (!kids[0].classList.contains(\"elementor-widget-heading\")) return;\nif (!\/^(WARNING|WAARSCHUWING|BELANGRIJK)$\/.test(kids[0].textContent.trim().toUpperCase())) return;\nif (!kids[1].classList.contains(\"elementor-widget-text-editor\")) return;\ncon.classList.add(\"ga-callout\"); con.setAttribute(\"data-ga-callout\", \"1\");\nkids[0].classList.add(\"ga-callout-tab\");\nkids[1].classList.add(\"ga-callout-box\");\n});\nfunction emptyCell(label, status, body, lit) {\nvar e = document.createElement(\"div\");\ne.className = \"ga-empty\" + (lit ? \" is-lit\" : \"\");\ne.innerHTML = '<div class=\"ga-empty-bay\"><span class=\"ga-empty-lab\"><\/span><span class=\"ga-empty-status\"><\/span><\/div><div class=\"ga-empty-body\"><\/div>';\ne.querySelector(\".ga-empty-lab\").textContent = label;\ne.querySelector(\".ga-empty-status\").textContent = status;\ne.querySelector(\".ga-empty-body\").textContent = body;\nreturn e;\n}\ndocument.querySelectorAll(\".eael-post-grid\").forEach(function (g) {\nif (isMine(g)) return;\nif (g.querySelectorAll(\".eael-grid-post\").length === 0 && !g.querySelector(\".ga-empty\")) {\ng.appendChild(emptyCell(say(\"STATUS\", \"STATUS\"), say(\"SOON\", \"BINNENKORT\"),\nsay(\"Nothing else in this category yet.\",\n\"Nog niets anders in deze categorie.\"), false));\n}\n});\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.querySelector(\".ga-empty\")) return;\nvar hs = con.querySelectorAll(\":scope > .elementor-widget-heading\");\nif (hs.length !== 1) return;\nif (!\/^(ALL PROJECTS|ALLE PROJECTEN)$\/.test(hs[0].textContent.trim().toUpperCase())) return;\nif (con.querySelector(\".elementor-widget-image, .ga-prow\")) return;\ncon.appendChild(emptyCell(say(\"STATUS\", \"STATUS\"), say(\"SOON\", \"BINNENKORT\"),\nsay(\"The only project so far is the one above.\",\n\"Het enige project tot nu toe is het project hierboven.\"), false));\n});\ndocument.querySelectorAll(\"body .e-con\").forEach(function (con) {\nif (isMine(con) || con === header || (con.parentElement && con.parentElement.closest(\".e-con\"))) return;\nvar bg = window.getComputedStyle(con).backgroundImage;\nif (bg && bg !== \"none\" && \/url\\(\/.test(bg) && !CREDIT.test(con.textContent)) con.classList.add(\"ga-band\");\n});\ndocument.querySelectorAll(\".elementor-widget-heading\").forEach(function (w) {\nif (isMine(w)) return;\nvar t = w.textContent.trim();\nif (\/(\u2192|->|&rarr;)\\s*$\/.test(t) && w.querySelector(\"a\")) w.classList.add(\"ga-textlink\");\n});\nif (header) {\nvar here = location.pathname.replace(\/\\\/+$\/, \"\") || \"\/\";\nvar draftTitle = \/GA-X \u00b7 (.+)$\/.exec(document.title || \"\");\nvar SECTION = {\n\"\/project-hail-mary\": \"news\",\n\"\/project-hail-mary-spoilers\": \"news\",\n\"\/the-drama\": \"news\",\n\"\/the-drama-spoilers\": \"news\",\n\"\/narcopop\": \"news\",\n\"\/narcopop-mula-b-review\": \"news\",\n\"\/pokemon-the-first-movie\": \"news\",\n\"\/scoreboard\": \"news\",\n\"\/timeline\": \"about\"\n};\nvar nlPre = \/^\\\/nl(?=\\\/|$)\/.test(here) ? \"\/nl\" : \"\";\nvar rawHere = here.replace(\/^\\\/nl(?=\\\/|$)\/, \"\") || \"\/\";\nvar onBeta = \/^\\\/beta(-|$)\/.test(rawHere);\nvar slug = onBeta\n? (rawHere === \"\/beta\" ? \"\/\" : rawHere.replace(\/^\\\/beta-\/, \"\/\"))\n: rawHere;\nvar sect = SECTION[slug];\nvar wantPath = sect\n? nlPre + (onBeta ? \"\/beta-\" + sect : \"\/\" + sect)\n: null;\nheader.querySelectorAll(\".elementor-widget-heading\").forEach(function (w) {\nvar a = w.querySelector(\"a\");\nif (!a) return;\nvar path = (a.getAttribute(\"href\") || \"\").replace(\/^https?:\\\/\\\/[^\\\/]+\/, \"\").replace(\/\\\/+$\/, \"\") || \"\/\";\nvar hit = here !== \"\/\" && path === here;\nif (!hit && wantPath) hit = path === wantPath;\nif (!hit && draftTitle) hit = w.textContent.trim().toUpperCase() === draftTitle[1].trim().toUpperCase();\nif (hit) w.classList.add(\"ga-nav-current\");\n});\n}\n(function () {\nvar tops = [];\ndocument.querySelectorAll(\"body > .e-con, .elementor-section-wrap > .e-con, .elementor > .e-con\").forEach(function (c) {\nif (!isMine(c)) tops.push(c);\n});\nvar isDate = function (w) { return \/^\\d{1,2}-\\d{1,2}-\\d{4}$\/.test(w.textContent.trim()); };\nvar isLong = function (w) { return w.textContent.trim().length > 80; };\nvar rh = null, idx = -1;\nvar named = [].filter.call(document.querySelectorAll(\".ga-rhero\"), function (c) {\nreturn !isMine(c);\n})[0];\nif (named) {\nrh = named;\nidx = tops.indexOf(rh);\n} else {\ntops.forEach(function (c, i) {\nif (rh) return;\nif (!c.querySelector(\"h1.elementor-heading-title\")) return;\nvar hh = [].slice.call(c.querySelectorAll(\".elementor-widget-heading\"));\nif (!hh.some(isDate) || !hh.some(isLong)) return;\nrh = c; idx = i;\n});\n}\nif (!rh || rh.hasAttribute(\"data-ga-rhero\")) return;\nhero = rh;\nrh.classList.add(\"ga-rhero\"); rh.setAttribute(\"data-ga-rhero\", \"1\");\nvar hs = [].slice.call(rh.querySelectorAll(\".elementor-widget-heading\"));\nvar title = rh.querySelector(\"h1.elementor-heading-title\").closest(\".elementor-widget\");\nvar date = hs.filter(isDate)[0];\nvar lede = hs.filter(isLong).sort(function (x, y) {\nreturn y.textContent.length - x.textContent.length;\n})[0];\nvar kind = hs.filter(function (w) {\nvar t = w.textContent.trim();\nreturn w !== title && w !== date && w !== lede && t === t.toUpperCase() && \/REVIEW|RECENSIE\/.test(t);\n})[0];\nvar artist = hs.filter(function (w) {\nreturn w !== title && w !== date && w !== lede && w !== kind;\n})[0];\nvar art = rh.querySelector(\".elementor-widget-image\");\nif (!art && idx > 0) {\nvar imgs = tops[idx - 1].querySelectorAll(\".elementor-widget-image\");\nif (imgs.length === 1) {\nart = imgs[0];\nrh.appendChild(art);\ntops[idx - 1].classList.add(\"ga-rhero-empty\");\n}\n}\nif (art) {\nvar artImg = art.querySelector(\"img\");\nif (artImg) artImg.setAttribute(\"sizes\", \"(min-width: 768px) 300px, 240px\");\n}\nif (title) title.classList.add(\"ga-rh-title\");\nif (kind) kind.classList.add(\"ga-rh-kind\");\nif (lede) lede.classList.add(\"ga-rh-lede\");\nif (art) art.classList.add(\"ga-rh-art\");\nif (date) { date.classList.add(\"ga-rh-date\"); date.classList.add(\"ga-meta-date\"); }\nif (artist) artist.classList.add(\"ga-rh-artist\");\nvar meta = rh.querySelector(\":scope > .ga-rh-meta\");\nif (!meta && artist && date) {\nmeta = document.createElement(\"div\");\nmeta.className = \"ga-rh-meta\";\nmeta.appendChild(artist);\nmeta.appendChild(date);\nrh.appendChild(meta);\n}\n[title, kind, lede, art].forEach(function (w) {\nif (!w) return;\nvar up = w.parentElement ? w.parentElement.closest(\".e-con\") : null;\nwhile (up && up !== rh) {\nup.classList.add(\"ga-rhero-pass\");\nup = up.parentElement ? up.parentElement.closest(\".e-con\") : null;\n}\n});\n})();\n(function () {\nvar hp = location.pathname.replace(\/^\\\/nl(?=\\\/|$)\/, \"\").replace(\/\\\/+$\/, \"\");\nvar isHome = hp === \"\" || hp === \"\/beta\" || \/GA-X\\s*\u00b7\\s*Home\/.test(document.title || \"\");\nif (!isHome) return;\nvar intro = null;\ndocument.querySelectorAll(\"body > .e-con, .elementor-section-wrap > .e-con, .elementor > .e-con\").forEach(function (con) {\nif (intro || isMine(con) || con === header) return;\nif (!con.querySelector(\"h1.elementor-heading-title\")) return;\nif (!con.querySelector(\".elementor-widget-image img\")) return;\nif (!con.querySelector(\".ekit-btn, .elementskit-btn\")) return;\nintro = con;\n});\nif (!intro || intro.hasAttribute(\"data-ga-intro\")) return;\nintro.classList.add(\"ga-intro\"); intro.setAttribute(\"data-ga-intro\", \"1\");\nvar col = intro.querySelector(\"h1.elementor-heading-title\").closest(\".e-con\");\nwhile (col && col !== intro && !col.querySelector(\".ekit-btn, .elementskit-btn\")) {\ncol = col.parentElement ? col.parentElement.closest(\".e-con\") : null;\n}\nif (col && col !== intro) col.classList.add(\"ga-intro-col\");\nvar realPlate = intro.querySelector(\":scope > .ga-intro-plate\");\nif (realPlate) {\n[].forEach.call(realPlate.children, function (c) {\nif (c === col || (c.classList && c.classList.contains(\"ga-intro-col\"))) return;\nif (c.classList && c.classList.contains(\"e-con\")\n&& c.querySelector(\".elementor-widget-image img\")) {\nc.classList.add(\"ga-intro-art\");\n}\n});\n} else {\nvar artCol = null;\n[].forEach.call(intro.children, function (c) {\nif (artCol || c === col || !c.classList || !c.classList.contains(\"e-con\")) return;\nif (c.querySelector(\".elementor-widget-image img\")) artCol = c;\n});\nif (col && artCol && artCol !== col && col.parentElement === intro) {\nvar plate = document.createElement(\"div\");\nplate.className = \"ga-intro-plate\";\nintro.insertBefore(plate, col);\nplate.appendChild(artCol);\nplate.appendChild(col);\nartCol.classList.add(\"ga-intro-art\");\n}\n}\nvar wash = document.createElement(\"div\");\nwash.className = \"ga-intro-wash\";\nwash.setAttribute(\"aria-hidden\", \"true\");\nintro.insertBefore(wash, intro.firstChild);\nvar track = document.createElement(\"div\");\ntrack.className = \"ga-intro-track\";\ntrack.setAttribute(\"aria-hidden\", \"true\");\nvar fill = document.createElement(\"i\");\ntrack.appendChild(fill);\nintro.insertBefore(track, intro.firstChild);\nvar tick = function () {\nvar r = intro.getBoundingClientRect();\nvar run = Math.max(1, r.height * 0.45);\nvar p = (0 - r.top) \/ run;\np = p < 0 ? 0 : (p > 1 ? 1 : p);\nfill.style.height = (12 + p * 88) + \"%\";\n};\ntick();\nwindow.addEventListener(\"scroll\", tick, { passive: true });\nwindow.addEventListener(\"resize\", tick);\n})();\nif (article) {\narticle.querySelectorAll(\".elementor-widget-text-editor img\").forEach(function (img) {\nif (img.closest(\".ga-figure\")) return;\nvar fig = document.createElement(\"figure\");\nfig.className = \"ga-figure\";\nimg.parentNode.insertBefore(fig, img);\nfig.appendChild(img);\nvar cap = (img.getAttribute(\"alt\") || \"\").trim();\nif (cap) {\nvar fc2 = document.createElement(\"figcaption\");\nfc2.textContent = cap;\nfig.appendChild(fc2);\n}\n});\n}\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-twin\")) return;\nvar tc = [].filter.call(con.children, function (c) {\nreturn c.classList && c.classList.contains(\"e-con\");\n});\nif (tc.length !== 2) return;\nvar hs = [tc[0].querySelectorAll(\".elementor-widget-heading\"),\ntc[1].querySelectorAll(\".elementor-widget-heading\")];\nif (hs[0].length !== 2 || hs[1].length !== 2) return;\nif (!\/^(READING|JE LEEST)$\/.test(hs[0][0].textContent.trim().toUpperCase())) return;\nif (!\/^(SWITCH TO|WISSEL NAAR)$\/.test(hs[1][0].textContent.trim().toUpperCase())) return;\ncon.classList.add(\"ga-twin\"); con.setAttribute(\"data-ga-twin\", \"1\");\ntc.forEach(function (cell, i) {\ncell.classList.add(\"ga-twin-cell\");\nhs[i][0].classList.add(\"ga-twin-lab\");\nhs[i][1].classList.add(\"ga-twin-name\");\n});\ntc[0].classList.add(\"ga-twin-current\");\n});\nif (document.querySelector(\".ga-twin\") && slateEl) {\nslateEl.querySelectorAll(\".ga-textlink\").forEach(function (w) { w.classList.add(\"ga-twin-dupe\"); });\n}\nvar ramp = null;\nvar theirs = document.querySelector(\".eael-reading-progress\");\nif (article && !theirs) {\nramp = document.createElement(\"div\");\nramp.className = \"ga-read\";\nramp.appendChild(document.createElement(\"i\"));\ndocument.body.appendChild(ramp);\n}\nvar ticking = false;\nvar band = null;\nfunction onScroll() {\nif (ticking) return;\nticking = true;\nrequestAnimationFrame(function () {\nvar y = window.scrollY || window.pageYOffset;\nroot.classList.toggle(\"ga-scrolled\", y > 80);\nif (header) {\nvar hb = header.getBoundingClientRect().bottom;\nvar wrap = document.querySelector(\".eael-reading-progress-wrap\") || ramp;\nif (wrap && hb > 0 && hb < 200) wrap.style.top = hb + \"px\";\n}\nif (article) {\nvar box = article.getBoundingClientRect();\nif (ramp) {\nvar total = box.height - window.innerHeight;\nvar done = total > 0 ? (-box.top) \/ total : 0;\ndone = Math.max(0, Math.min(1, done));\nramp.firstChild.style.transform = \"scaleX(\" + done.toFixed(4) + \")\";\n}\nif (rail) {\nif (!band) band = document.querySelector(\".ga-rh-band\");\nrail.style.left = Math.max(12, box.left - 96) + \"px\";\nvar railTop = rail.getBoundingClientRect().top;\nvar bandClear = !band\n|| band.getBoundingClientRect().bottom <= railTop;\nvar onScreen = box.top < window.innerHeight * 0.5\n&& box.bottom > 220 && bandClear;\nrail.classList.toggle(\"is-on\", onScreen);\n}\n}\nticking = false;\n});\n}\nwindow.addEventListener(\"scroll\", onScroll, { passive: true });\nwindow.addEventListener(\"resize\", onScroll, { passive: true });\nonScroll();\n(function () {\nvar hero = document.querySelector(\".ga-rhero\");\nif (!hero || hero.querySelector(\":scope > .ga-rh-band\")) return;\nvar band = document.createElement(\"div\");\nband.className = \"ga-rh-band\";\nband.setAttribute(\"aria-hidden\", \"true\");\nhero.insertBefore(band, hero.firstChild);\n})();\n(function () {\nvar lede = document.querySelector(\".ga-rh-lede\");\nvar art = document.querySelector(\".ga-article\");\nif (lede && art && !art.contains(lede)) {\nart.insertBefore(lede, art.firstChild);\nlede.classList.add(\"ga-rh-lede-moved\");\n}\n})();\nif (article) {\narticle.querySelectorAll(\".ga-subhead\").forEach(function (h) {\nvar n = h.nextElementSibling;\nwhile (n && !n.classList.contains(\"elementor-widget-text-editor\")) {\nif (n.classList.contains(\"ga-subhead\")) { n = null; break; }\nn = n.nextElementSibling;\n}\nwhile (n && (n.classList.contains(\"ga-pull\") || n.classList.contains(\"ga-callout\"))) {\nn = n.nextElementSibling;\nwhile (n && !n.classList.contains(\"elementor-widget-text-editor\")) {\nif (n.classList.contains(\"ga-subhead\")) { n = null; break; }\nn = n.nextElementSibling;\n}\n}\nif (!n) return;\nvar host = n.querySelector(\".elementor-widget-container\");\nif (!host) return;\nfor (;;) {\nvar kid = null;\nfor (var i = 0; i < host.children.length; i++) {\nvar k = host.children[i];\nif (\/^(P|DIV)$\/.test(k.tagName) && k.textContent.trim().length >= 80) { kid = k; break; }\n}\nif (!kid) break;\nhost = kid;\n}\nif (host.closest(\"blockquote\")) return;\nif (host.textContent.trim().length < 80) return;\nhost.classList.add(\"ga-dropcap\");\n});\n}\nvar rail = null;\nvar heads = [];\nif (article) {\narticle.querySelectorAll(\".ga-subhead .elementor-heading-title\").forEach(function (h) { heads.push(h); });\n}\nif (heads.length >= 3 && article) {\nrail = document.createElement(\"nav\");\nrail.className = \"ga-rail\";\nrail.setAttribute(\"aria-label\", say(\"Sections\", \"Secties\"));\nheads.forEach(function (h, i) {\nvar id = \"ga-sec-\" + (i + 1);\nh.id = id;\nvar a = document.createElement(\"a\");\na.href = \"#\" + id;\na.textContent = String(i + 1).padStart(2, \"0\");\na.title = h.textContent.trim();\nrail.appendChild(a);\n});\ndocument.body.appendChild(rail);\nvar links = rail.querySelectorAll(\"a\");\nvar spy = new IntersectionObserver(function (entries) {\nentries.forEach(function (e) {\nif (!e.isIntersecting) return;\nvar idx = heads.indexOf(e.target);\nlinks.forEach(function (l, i) { l.classList.toggle(\"is-current\", i === idx); });\n});\n}, { rootMargin: \"-120px 0px -70% 0px\" });\nheads.forEach(function (h) { spy.observe(h); });\n}\ndocument.querySelectorAll(\".eael-post-grid\").forEach(function (grid) {\nvar up = grid.parentElement;\nwhile (up && up !== document.body) {\nif (up.classList.contains(\"e-con\") || up.classList.contains(\"elementor-widget\")) {\nup.classList.add(\"ga-nozoom\");\n}\nup = up.parentElement;\n}\n});\nvar CHAPTER_SERIES = [[\"ai101\", \"AI 101\"], [\"ai-agency\", \"AI & Agency\"]];\nvar CHAPTER_NO = {\"3338\":\"01\",\"3393\":\"03\",\"3407\":\"02\",\"3410\":\"04\",\"3412\":\"05\",\"3414\":\"06\",\"3416\":\"07\",\"3418\":\"08\",\"3420\":\"09\",\"3490\":\"01\",\"3492\":\"02\",\"3494\":\"03\",\"3496\":\"04\",\"3498\":\"05\",\"3500\":\"06\",\"3502\":\"07\",\"3504\":\"08\",\"3506\":\"09\",\"3508\":\"10\"};\nvar CHAPTER_TOTAL = {\"ai101\":9,\"ai-agency\":10};\nvar CHAPTER_PARTS = {\"ai101\":[[3338,\"what-ai-is\",\"What AI Actually Is\"],[3407,\"where-ai-came-from-and-the-hype-around-it\",\"Where AI Came From and the Hype Around It\"],[3393,\"the-different-kinds-of-ai\",\"The Different Kinds of AI\"],[3410,\"a-closer-look-at-the-language-model\",\"A Closer Look at the Language Model\"],[3412,\"a-closer-look-at-image-generators\",\"A Closer Look at Image Generators\"],[3414,\"a-closer-look-at-agents\",\"A Closer Look at Agents\"],[3416,\"what-it-can-do-when-you-guide-it\",\"What It Can Do When You Guide It\"],[3418,\"youre-not-behind\",\"You're Not Behind\"],[3420,\"the-last-word-is-yours\",\"The Last Word Is Yours\"]],\"ai-agency\":[[3490,\"the-ai-mindset\",\"The AI Mindset\"],[3492,\"the-ethics-of-using-it\",\"The Ethics of Using It\"],[3494,\"keeping-your-own-mind\",\"Keeping Your Own Mind\"],[3496,\"the-machine-that-talks-back\",\"The Machine That Talks Back\"],[3498,\"the-workplace-revolution\",\"The Workplace Revolution\"],[3500,\"whos-steering-you\",\"Who's Steering You\"],[3502,\"judged-by-a-machine\",\"Judged by a Machine\"],[3504,\"the-dark-side\",\"The Dark Side\"],[3506,\"when-the-tool-acts-on-its-own\",\"When the Tool Acts on Its Own\"],[3508,\"where-you-land\",\"Where You Land\"]]};\ndocument.querySelectorAll(\".eael-post-appender\").forEach(function (grid) {\nvar posts = grid.querySelectorAll(\".eael-grid-post\");\nif (posts.length <= 3) return;\ngrid.classList.add(\"ga-rows\");\nvar panel = grid.closest(\".e-con\");\nif (panel) panel.classList.add(\"ga-rows-panel\");\nposts.forEach(function (row) {\nvar link = row.querySelector(\".eael-grid-post-link\");\nif (!link) return;\nvar wrap = row.querySelector(\".eael-entry-wrapper\");\nif (wrap && !wrap.querySelector(\".ga-row-kind\")) {\nvar cls = row.className;\nvar kind = \"\";\nif (\/music-review\/.test(cls)) kind = say(\"MUSIC REVIEW\", \"MUZIEK RECENSIE\");\nelse if (\/movie-review\/.test(cls)) kind = say(\"MOVIE REVIEW\", \"FILM RECENSIE\");\nelse {\nfor (var si = 0; si < CHAPTER_SERIES.length; si++) {\nif (cls.indexOf(\"category-\" + CHAPTER_SERIES[si][0]) > -1 ||\ncls.indexOf(\"-\" + CHAPTER_SERIES[si][0]) > -1) {\nkind = say(\"CHAPTER\", \"HOOFDSTUK\") + \"  \u00b7  \" + CHAPTER_SERIES[si][1];\nbreak;\n}\n}\nif (!kind && \/category-[\\w-]*\\barticle\\b|category-article\/.test(cls)) kind = say(\"ARTICLE\", \"ARTIKEL\");\nif (!kind && \/category-[\\w-]*essay\/.test(cls)) kind = say(\"ESSAY\", \"ESSAY\");\n}\nif (kind) {\nvar k = document.createElement(\"span\"); k.className = \"ga-row-kind\"; k.textContent = kind;\nwrap.insertBefore(k, wrap.firstChild);\n}\nvar pid = (cls.match(\/eael-pg-post-(\\d+)\/) || [])[1];\nvar no = pid && CHAPTER_NO[pid];\nvar tLink = row.querySelector(\".eael-entry-title a\");\nif (no && tLink && !tLink.querySelector(\".ga-row-no\")) {\nvar nEl = document.createElement(\"span\");\nnEl.className = \"ga-row-no\";\nnEl.textContent = no;\ntLink.insertBefore(nEl, tLink.firstChild);\n}\nvar rb = document.createElement(\"a\");\nrb.className = \"ga-row-read ga-btn ga-btn-go\"; rb.href = link.href; rb.textContent = say(\"READ NOW\", \"NU LEZEN\");\nwrap.appendChild(rb);\n}\nrow.addEventListener(\"click\", function (e) {\nif (e.target.closest(\"a\")) return;\nwindow.location.href = link.href;\n});\n});\n});\nvar boardStats = null;\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-board\")) return;\nvar rows = [].filter.call(con.children, function (c) {\nreturn c.classList && c.classList.contains(\"e-con\");\n});\nif (rows.length < 2) return;\nvar hi = -1, headCells = null;\nrows.forEach(function (r, i) {\nif (hi > -1) return;\nvar hc = r.querySelectorAll(\":scope > .elementor-widget-heading\");\nif (hc.length !== 4) return;\nvar labs = [];\nhc.forEach(function (h) { labs.push(h.textContent.trim().toUpperCase()); });\nvar j = labs.join(\"|\");\nif (j === \"TITLE|KIND|FILED|SCORE\" || j === \"TITEL|SOORT|DATUM|SCORE\") { hi = i; headCells = hc; }\n});\nif (hi < 0) return;\ncon.classList.add(\"ga-board\"); con.setAttribute(\"data-ga-board\", \"1\");\nvar head = rows[hi];\nhead.classList.add(\"ga-board-row\", \"ga-board-head\");\nvar body = rows.slice(hi + 1);\nbody.forEach(function (r) { r.classList.add(\"ga-board-row\"); });\nfunction cellText(row, i) {\nvar c = row.querySelectorAll(\":scope > .elementor-widget-heading\")[i];\nreturn c ? c.textContent.trim() : \"\";\n}\nfunction dateKey(t) {\nvar m = t.match(\/^(\\d{1,2})-(\\d{1,2})-(\\d{4})$\/);\nif (!m) return 0;\nreturn (+m[3]) * 10000 + (+m[2]) * 100 + (+m[1]);\n}\nbody.forEach(function (r, ri) {\nr.setAttribute(\"data-ga-score\", String(parseInt(cellText(r, 3), 10) || 0));\nr.setAttribute(\"data-ga-when\", String(dateKey(cellText(r, 2))));\nr.style.viewTransitionName = \"ga-row-\" + ri;\n});\ncon.classList.add(\"ga-board-scored\");\nbody.forEach(function (r, ri) {\nvar sc = r.querySelectorAll(\":scope > .elementor-widget-heading\")[3];\nvar n = +r.getAttribute(\"data-ga-score\");\nif (!sc) return;\nsc.classList.add(\"ga-board-score\");\nsc.style.setProperty(\"--ga-s\", String(Math.max(0, Math.min(100, n)) \/ 100));\nsc.style.setProperty(\"--ga-i\", String(Math.min(ri, STAGGER_MAX)));\nvar t = sc.querySelector(\".elementor-heading-title\");\nvar leaf = t;\nwhile (leaf && leaf.children.length === 1) leaf = leaf.children[0];\nif (leaf && leaf.children.length === 0 && \/^\\d{1,3}$\/.test(leaf.textContent.trim())) {\nleaf.classList.add(\"ga-board-n\");\n}\n});\nonIn(con, function (still) {\ncon.classList.add(\"is-in\");\nif (still) return;\nbody.forEach(function (r, ri) {\nvar leaf = r.querySelector(\".ga-board-n\");\nif (leaf) countTo(leaf, +r.getAttribute(\"data-ga-score\"), staggerOf(ri) * 2 \/ 3);\n});\n});\nvar sum = document.createElement(\"div\");\nsum.className = \"ga-board-sum\";\n[[\"n\", say(\"REVIEWS\", \"REVIEWS\")], [\"avg\", say(\"AVERAGE\", \"GEMIDDELD\")],\n[\"hi\", say(\"HIGHEST\", \"HOOGSTE\")], [\"lo\", say(\"LOWEST\", \"LAAGSTE\")]].forEach(function (c) {\nvar cellS = document.createElement(\"div\");\ncellS.className = \"ga-board-sum-cell\" + (c[0] === \"avg\" ? \" is-lit\" : \"\");\nvar lab = document.createElement(\"span\");\nlab.className = \"ga-board-sum-l\";\nlab.textContent = c[1];\nvar val = document.createElement(\"span\");\nval.className = \"ga-board-sum-v\";\nval.setAttribute(\"data-k\", c[0]);\ncellS.appendChild(lab);\ncellS.appendChild(val);\nsum.appendChild(cellS);\n});\ncon.insertBefore(sum, rows[0]);\nboardStats = function (animate) {\nvar shown = body.filter(function (r) { return !r.classList.contains(\"ga-filtered-out\"); });\nvar sc = shown.map(function (r) { return +r.getAttribute(\"data-ga-score\"); });\nvar vals = {\nn: sc.length,\navg: sc.length ? Math.round(sc.reduce(function (x, y) { return x + y; }, 0) \/ sc.length) : 0,\nhi: sc.length ? Math.max.apply(null, sc) : 0,\nlo: sc.length ? Math.min.apply(null, sc) : 0\n};\nsum.querySelectorAll(\".ga-board-sum-v\").forEach(function (v, vi) {\nvar to = vals[v.getAttribute(\"data-k\")];\nif (animate) countTo(v, to, staggerOf(vi));\nelse v.textContent = String(to);\n});\n};\nboardStats(false);\nonIn(sum, function (still) { if (!still) boardStats(true); });\nvar dir = {};\n[0, 1, 2, 3].forEach(function (col) {\nvar cell = headCells[col];\ncell.classList.add(\"ga-sortable\");\ncell.setAttribute(\"role\", \"button\");\ncell.setAttribute(\"tabindex\", \"0\");\ncell.setAttribute(\"aria-label\", say(\"Sort by \", \"Sorteer op \") + cell.textContent.trim().toLowerCase());\nfunction sort() {\ndir[col] = dir[col] === \"asc\" ? \"desc\" : \"asc\";\nvar sign = dir[col] === \"asc\" ? 1 : -1;\nvar sorted = body.slice().sort(function (a, b) {\nif (col === 3) return (a.getAttribute(\"data-ga-score\") - b.getAttribute(\"data-ga-score\")) * sign;\nif (col === 2) return (a.getAttribute(\"data-ga-when\") - b.getAttribute(\"data-ga-when\")) * sign;\nreturn cellText(a, col).localeCompare(cellText(b, col)) * sign;\n});\ntransition(function () {\nsorted.forEach(function (r) { con.appendChild(r); });\nheadCells.forEach(function (h) { h.classList.remove(\"is-sorted\", \"is-asc\", \"is-desc\"); });\ncell.classList.add(\"is-sorted\", dir[col] === \"asc\" ? \"is-asc\" : \"is-desc\");\n});\n}\ncell.addEventListener(\"click\", sort);\ncell.addEventListener(\"keydown\", function (e) {\nif (e.key === \"Enter\" || e.key === \" \") { e.preventDefault(); sort(); }\n});\n});\nheadCells[3].classList.add(\"is-sorted\", \"is-desc\");\ndir[3] = \"asc\";\nvar h1b = con.querySelector(\":scope > .elementor-widget-heading\");\nif (h1b) h1b.classList.add(\"ga-board-title\");\nvar ldb = con.querySelector(\":scope > .elementor-widget-text-editor\");\nif (ldb) ldb.classList.add(\"ga-board-lede\");\ncon.classList.add(\"ga-board-body\");\n});\nvar isNum100 = function (w) { return \/^\\d{1,3}\\\/100$\/.test(w.textContent.trim()); };\nvar isCardDate = function (w) { return \/^\\d{1,2}-\\d{1,2}-\\d{4}$\/.test(w.textContent.trim()); };\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-ledgerrow\")) return;\nif (con.parentElement\n&& con.parentElement.closest(\".ga-ledger, .ga-score, .ga-board\")) return;\nvar hs = [].slice.call(con.querySelectorAll(\".elementor-widget-heading\"));\nvar num = hs.filter(isNum100)[0];\nvar date = hs.filter(isCardDate)[0];\nvar title = hs.filter(function (w) { return w !== num && w !== date && w.querySelector(\"a\"); })[0];\nvar art = con.querySelector(\".elementor-widget-image img\");\nif (!num || !date || !title || !art) return;\ncon.setAttribute(\"data-ga-ledgerrow\", \"1\");\nvar inner = [].filter.call(con.children, function (k) { return k.classList && k.classList.contains(\"e-con\"); });\nif (inner.some(function (k) {\nreturn k.contains(num) && k.contains(date) && k.contains(title) && k.contains(art);\n})) return;\ncon.classList.add(\"ga-ledger\");\nnum.classList.add(\"ga-card-num\");\ndate.classList.add(\"ga-card-date\");\ntitle.classList.add(\"ga-card-title\");\nhs.forEach(function (w) {\nvar t = w.textContent.trim();\nif (w !== num && w !== date && w !== title && t === t.toUpperCase() && \/REVIEW|RECENSIE\/.test(t)) {\nw.classList.add(\"ga-card-kind\");\n}\n});\nvar verdict = con.querySelector(\".elementor-widget-text-editor\");\nif (verdict) verdict.classList.add(\"ga-card-verdict\");\nvar imgw = art.closest(\".elementor-widget-image\");\nif (imgw) imgw.classList.add(\"ga-card-art\");\nart.setAttribute(\"sizes\", \"(min-width: 1025px) 360px, 110px\");\nvar head = num.closest(\".e-con\"); if (head && head !== con) head.classList.add(\"ga-card-head\");\nvar body = imgw ? imgw.closest(\".e-con\") : null; if (body && body !== con) body.classList.add(\"ga-card-body\");\nvar words = title.closest(\".e-con\"); if (words && words !== con && words !== body) words.classList.add(\"ga-card-words\");\nvar foot = date.closest(\".e-con\"); if (foot && foot !== con) foot.classList.add(\"ga-card-foot\");\nif (con.parentElement && con.parentElement.classList.contains(\"e-con\")) {\ncon.parentElement.classList.add(\"ga-ledger-row\");\n}\nvar a = title.querySelector(\"a\");\nif (a) con.addEventListener(\"click\", function (e) {\nif (e.target.closest(\"a\")) return;\nwindow.location.href = a.href;\n});\ncon.style.cursor = \"pointer\";\n});\nvar isNum = function (w) { return \/^\\d{1,3}$\/.test(w.textContent.trim()); };\nvar isDate = function (w) { return \/^\\d{1,2}-\\d{1,2}-\\d{4}$\/.test(w.textContent.trim()); };\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-card\")) return;\nif (con.parentElement\n&& con.parentElement.closest(\".ga-lid, .ga-ledger, .ga-score, .ga-board\")) return;\nvar hs = [].slice.call(con.querySelectorAll(\".elementor-widget-heading\"));\nvar num = hs.filter(isNum)[0], date = hs.filter(isDate)[0];\nvar title = hs.filter(function (w) { return !isNum(w) && !isDate(w) && w.querySelector(\"a\"); })[0];\nif (!num || !date || !title) return;\nvar inner = [].filter.call(con.children, function (k) { return k.classList && k.classList.contains(\"e-con\"); });\nvar holdsAll = function (k) { return k.contains(num) && k.contains(date) && k.contains(title); };\nvar directImg = [].filter.call(con.children, function (k) { return k.classList && k.classList.contains(\"elementor-widget-image\"); })[0];\nif (inner.some(holdsAll) && !directImg) return;\nvar img = directImg ? directImg.querySelector(\"img\") : null;\ncon.classList.add(img ? \"ga-lid\" : \"ga-ledger\");\ncon.setAttribute(\"data-ga-card\", \"1\");\nnum.classList.add(\"ga-card-num\"); date.classList.add(\"ga-card-date\"); title.classList.add(\"ga-card-title\");\nvar verdict = con.querySelector(\".elementor-widget-text-editor\");\nif (verdict) verdict.classList.add(\"ga-card-verdict\");\nhs.forEach(function (w) {\nvar t = w.textContent.trim();\nif (w !== num && w !== date && w !== title && t === t.toUpperCase() && \/REVIEW|RECENSIE\/.test(t)) w.classList.add(\"ga-card-kind\");\n});\nif (img) {\nvar row = num.closest(\".e-con\"); if (row) row.classList.add(\"ga-card-score\");\nvar row2 = row && row.parentElement ? row.parentElement.closest(\".e-con\") : null;\nif (row2 && row2 !== con) row2.classList.add(\"ga-card-row\");\nif (con.parentElement && con.parentElement.classList.contains(\"e-con\")) {\ncon.parentElement.classList.add(\"ga-lid-row\");\n}\n} else {\nvar foot = num.closest(\".e-con\"); if (foot && foot !== con) foot.classList.add(\"ga-card-foot\");\n}\nvar a = title.querySelector(\"a\");\nif (a) con.addEventListener(\"click\", function (e) {\nif (e.target.closest(\"a\")) return;\nwindow.location.href = a.href;\n});\ncon.style.cursor = \"pointer\";\n});\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-feature\") || con.closest(\"[data-ga-feature]\")) return;\nvar kids = [].filter.call(con.children, function (k) { return k.classList && (k.classList.contains(\"e-con\") || k.classList.contains(\"elementor-widget\")); });\nif (kids.length !== 2) return;\nvar art = kids.filter(function (k) { return k.classList.contains(\"elementor-widget-image\"); })[0];\nvar body = kids.filter(function (k) { return k.classList.contains(\"e-con\"); })[0];\nif (!art || !body) return;\nvar status = [].filter.call(body.querySelectorAll(\".ga-btn\"), function (b) { return \/^(SOON|LIVE|BINNENKORT)$\/i.test((b.textContent || \"\").trim()); })[0];\nif (!status) return;\ncon.classList.add(\"ga-feature\"); con.setAttribute(\"data-ga-feature\", \"1\");\nart.classList.add(\"ga-feature-art\");\nbody.classList.add(\"ga-feature-body\");\nstatus.classList.add(\"ga-status\");\nvar fh = [].slice.call(body.querySelectorAll(\":scope > .elementor-widget-heading\"));\nvar fd = fh.filter(isDate)[0];\nif (fd) fd.classList.add(\"ga-feature-date\");\nvar frest = fh.filter(function (w) { return w !== fd; });\nif (frest[0]) frest[0].classList.add(\"ga-feature-lab\");\nif (frest[1]) frest[1].classList.add(\"ga-feature-title\");\nvar ft = body.querySelector(\":scope > .elementor-widget-text-editor\");\nif (ft) ft.classList.add(\"ga-feature-text\");\nvar fs = status.closest(\".elementor-widget\");\nif (fs) fs.classList.add(\"ga-feature-status\");\nvar go = [].filter.call(con.querySelectorAll(\".ga-btn\"), function (bt) {\nreturn !bt.classList.contains(\"ga-btn-off\");\n})[0];\nif (go) {\nvar homeCell = go.parentNode;\nvar cta = document.createElement(\"div\");\ncta.className = \"ga-feature-cta\";\nvar mq = window.matchMedia(\"(max-width: 767px)\");\nvar place = function () {\nif (mq.matches) {\nif (go.parentNode !== cta) {\ncta.appendChild(go);\nif (cta.parentNode !== con.parentNode) con.parentNode.insertBefore(cta, con.nextSibling);\n}\n} else if (go.parentNode === cta) {\nhomeCell.appendChild(go);\nif (cta.parentNode) cta.parentNode.removeChild(cta);\n}\n};\nplace();\nif (mq.addEventListener) mq.addEventListener(\"change\", place);\n}\n});\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-skills\")) return;\nvar cells = [].filter.call(con.children, function (k) {\nreturn k.classList && k.classList.contains(\"e-con\");\n});\nif (cells.length < 4) return;\nvar ok = cells.every(function (cell) {\nvar kids = [].filter.call(cell.children, function (k) {\nreturn k.classList && k.classList.contains(\"elementor-widget\");\n});\nreturn kids.length === 2 &&\nkids[0].classList.contains(\"elementor-widget-image\") &&\nkids[1].classList.contains(\"elementor-widget-heading\");\n});\nif (ok) { con.classList.add(\"ga-skills\"); con.setAttribute(\"data-ga-skills\", \"1\"); }\n});\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-404\")) return;\nvar hs404 = con.querySelectorAll(\":scope > .elementor-widget-heading\");\nif (!hs404.length || hs404[0].textContent.trim() !== \"404\") return;\ncon.classList.add(\"ga-404\"); con.setAttribute(\"data-ga-404\", \"1\");\nif (hs404[1]) hs404[1].classList.add(\"ga-404-label\");\nfor (var oi = 2; oi < hs404.length; oi++) hs404[oi].classList.add(\"ga-404-out\");\n});\nvar skipTo = article;\nif (!skipTo) {\nvar cons2 = document.querySelectorAll(\".e-con\");\nfor (var si = 0; si < cons2.length; si++) {\nif (!isMine(cons2[si]) && cons2[si] !== header) { skipTo = cons2[si]; break; }\n}\n}\nif (skipTo) {\nif (!skipTo.id) skipTo.id = \"ga-main\";\nvar skip = document.createElement(\"a\");\nskip.className = \"ga-skip\";\nskip.href = \"#\" + skipTo.id;\nskip.textContent = say(\"Skip to content\", \"Naar de inhoud\");\nskip.addEventListener(\"click\", function () {\nskipTo.setAttribute(\"tabindex\", \"-1\");\nskipTo.focus();\n});\ndocument.body.insertBefore(skip, document.body.firstChild);\n}\nvar credit = null;\ndocument.querySelectorAll(\".elementor-widget-text-editor\").forEach(function (w) {\nif (!credit && !isMine(w) && CREDIT.test(w.textContent)) credit = w;\n});\nif (credit) {\nvar foot = credit.closest(\".e-con\");\nwhile (foot && foot.parentElement) {\nvar upf = foot.parentElement.closest(\".e-con\");\nif (!upf || isMine(upf)) break;\nfoot = upf;\n}\nif (foot && !isMine(foot)) {\nfoot.classList.add(\"ga-foot\");\ncredit.classList.add(\"ga-foot-credit\");\nvar rules = foot.querySelectorAll(\".elementor-widget-divider\");\nfor (var ri = 0; ri < rules.length; ri++) {\nrules[ri].classList.add(ri === 0 ? \"ga-foot-rule\" : \"ga-foot-hair\");\n}\nvar navBest = null, navN = 0;\nfoot.querySelectorAll(\".e-con\").forEach(function (c) {\nvar n = c.querySelectorAll(\":scope > .elementor-widget-heading\").length;\nif (n > navN) { navN = n; navBest = c; }\n});\nif (navBest && navN >= 3) navBest.classList.add(\"ga-foot-nav\");\n}\n}\nvar CH_RE = \/ai101|ai-agency\/;\nvar FILTERS = {\nALL: null, MOVIES: \"movie-review\", MUSIC: \"music-review\", CHAPTERS: CH_RE,\nALLE: null, FILMS: \"movie-review\", MUZIEK: \"music-review\", HOOFDSTUKKEN: CH_RE\n};\nvar FILTER_SETS = [\n\"ALL|MOVIES|MUSIC\", \"ALLE|FILMS|MUZIEK\",\n\"ALL|MOVIES|MUSIC|CHAPTERS\", \"ALLE|FILMS|MUZIEK|HOOFDSTUKKEN\"\n];\ndocument.querySelectorAll(\".e-con\").forEach(function (con) {\nif (isMine(con) || con.hasAttribute(\"data-ga-filter\")) return;\nvar fc = [].filter.call(con.children, function (c) {\nreturn c.classList && c.classList.contains(\"e-con\");\n});\nif (fc.length !== 3 && fc.length !== 4) return;\nvar labels = fc.map(function (c) {\nvar h = c.querySelectorAll(\".elementor-widget-heading\");\nreturn h.length === 1 ? h[0].textContent.trim().toUpperCase() : null;\n});\nif (FILTER_SETS.indexOf(labels.join(\"|\")) < 0) return;\nvar grids = [];\ndocument.querySelectorAll(\".eael-post-appender\").forEach(function (g) {\nif (g.querySelectorAll(\".eael-grid-post\").length > 3) grids.push(g);\n});\nvar boardRows = [].slice.call(document.querySelectorAll(\".ga-board .ga-board-row:not(.ga-board-head)\"));\nif (!grids.length && !boardRows.length) return;\ncon.classList.add(\"ga-filter\"); con.setAttribute(\"data-ga-filter\", \"1\");\nif (fc.length === 4) con.classList.add(\"ga-filter-4\");\nif (grids.length) {\nvar gridBox = grids[0].closest(\".e-con\");\nwhile (gridBox && gridBox.parentElement !== con.parentElement) {\ngridBox = gridBox.parentElement ? gridBox.parentElement.closest(\".e-con\") : null;\n}\nvar below = gridBox &&\n(con.compareDocumentPosition(gridBox) & Node.DOCUMENT_POSITION_PRECEDING);\nif (below) gridBox.parentNode.insertBefore(con, gridBox);\n}\nvar pill = document.createElement(\"span\");\npill.className = \"ga-filter-pill\";\npill.setAttribute(\"aria-hidden\", \"true\");\ncon.appendChild(pill);\ncon.classList.add(\"ga-filter--pill\");\nfunction placePill(target, moving) {\npill.classList.toggle(\"is-moving\", !!moving);\npill.style.width = target.offsetWidth + \"px\";\npill.style.height = target.offsetHeight + \"px\";\npill.style.transform = \"translate(\" + target.offsetLeft + \"px,\" + target.offsetTop + \"px)\";\n}\nif (window.ResizeObserver) {\nnew ResizeObserver(function () {\nvar cur = con.querySelector(\".ga-filter-cell.is-current\");\nif (cur) placePill(cur, false);\n}).observe(con);\n}\ngrids.forEach(function (g, gi) {\n[].forEach.call(g.querySelectorAll(\".eael-grid-post\"), function (card, ci) {\ncard.style.viewTransitionName = \"ga-card-\" + gi + \"-\" + ci;\n});\n});\nfc.forEach(function (cell, i) {\ncell.classList.add(\"ga-filter-cell\");\ncell.setAttribute(\"role\", \"button\");\ncell.setAttribute(\"tabindex\", \"0\");\nvar want = FILTERS[labels[i]];\ncell.setAttribute(\"aria-pressed\", i === 0 ? \"true\" : \"false\");\nfunction apply() {\nplacePill(cell, true);\ntransition(update);\n}\nfunction update() {\nfc.forEach(function (c) { c.classList.remove(\"is-current\"); c.setAttribute(\"aria-pressed\", \"false\"); });\ncell.classList.add(\"is-current\");\ncell.setAttribute(\"aria-pressed\", \"true\");\ngrids.forEach(function (g) {\ng.querySelectorAll(\".eael-grid-post\").forEach(function (card) {\nvar hit = !want || (want instanceof RegExp\n? want.test(card.className) : card.className.indexOf(want) > -1);\ncard.classList.toggle(\"ga-filtered-out\", !hit);\n});\n});\nboardRows.forEach(function (r) {\nvar kc = r.querySelectorAll(\":scope > .elementor-widget-heading\")[1];\nvar kind = kc ? kc.textContent.trim().toUpperCase() : \"\";\nvar hitR = !want ? true\n: want === \"movie-review\" ? \/^(MOVIE|FILM)$\/.test(kind)\n: want === \"music-review\" ? \/^(MUSIC|MUZIEK)$\/.test(kind)\n: false;\nr.classList.toggle(\"ga-filtered-out\", !hitR);\n});\nif (boardRows.length && boardStats) boardStats(false);\n}\ncell.addEventListener(\"click\", apply);\ncell.addEventListener(\"keydown\", function (e) {\nif (e.key === \"Enter\" || e.key === \" \") { e.preventDefault(); apply(); }\n});\nif (i === 0) { cell.classList.add(\"is-current\"); placePill(cell, false); }\n});\n});\nvar pagePath = location.pathname.replace(\/^\\\/nl(?=\\\/|$)\/, \"\").replace(\/\\\/+$\/, \"\");\nvar curtain = document.querySelector(\"div.ga-pt[aria-hidden='true']:not(.ga-pt-noin):not(.e-con)\");\nif (curtain && !reduced) root.style.setProperty(\"--ga-arrive\", \"480ms\");\nfunction printIt(title) {\nif (!title || title.hasAttribute(\"data-ga-print\")) return;\ntitle.setAttribute(\"data-ga-print\", \"1\");\nvar plain = title.children.length === 0 && title.textContent.trim().split(\/\\s+\/).length > 1;\nif (!plain) { title.classList.add(\"ga-print\"); return; }\nvar words = title.textContent.trim().split(\/\\s+\/);\ntitle.textContent = \"\";\nwords.forEach(function (w, wi) {\nvar s = document.createElement(\"span\");\ns.className = \"ga-print ga-pw\";\ns.style.setProperty(\"--ga-i\", String(Math.min(wi, STAGGER_MAX)));\ns.textContent = w;\ntitle.appendChild(s);\nif (wi < words.length - 1) title.appendChild(document.createTextNode(\" \"));\n});\n}\ndocument.querySelectorAll(\".ga-intro h1.elementor-heading-title\").forEach(function (t) {\nif (!isMine(t)) printIt(t);\n});\ndocument.querySelectorAll(\".ga-404 .elementor-widget-heading:first-of-type .elementor-heading-title\").forEach(printIt);\ndocument.querySelectorAll(\".ga-intro .elementor-widget-image\").forEach(function (w) {\nvar box = w.closest(\".ga-intro-art\") || w.querySelector(\".elementor-widget-container\");\nif (box) box.classList.add(\"ga-duo\");\n});\n(function () {\nif (pagePath !== \"\" && pagePath !== \"\/beta\") return;\nvar marks = [].slice.call(document.querySelectorAll(\".ga-skills .elementor-widget-image\"));\ndocument.querySelectorAll(\".ga-section-title\").forEach(function (h) {\nif (!\/^(SKILLS|VAARDIGHEDEN)$\/i.test(h.textContent.trim())) return;\nvar band = h.closest(\".e-con\");\nband = band && band.parentElement ? band.parentElement.closest(\".e-con\") || band : band;\nif (!band) return;\nband.querySelectorAll(\".e-con > .elementor-widget-image\").forEach(function (w) {\nif (marks.indexOf(w) < 0) marks.push(w);\n});\n});\nmarks.forEach(function (w, mi) {\nif (isMine(w)) return;\nw.classList.add(\"ga-mark\");\nw.style.setProperty(\"--ga-i\", String(mi % 3));\nonIn(w, function () { w.classList.add(\"is-in\"); });\n});\n})();\nif (pagePath === \"\/about\") {\nvar aboutImg = null;\ndocument.querySelectorAll(\".elementor-widget-image img\").forEach(function (im) {\nif (!aboutImg && !isMine(im) && !im.closest(\".ga-x-header, .ga-foot\")) aboutImg = im;\n});\nif (aboutImg && !aboutImg.parentElement.querySelector(\":scope > .ga-ring\")) {\nvar ring = document.createElement(\"span\");\nring.className = \"ga-ring\";\nring.setAttribute(\"aria-hidden\", \"true\");\nvar host = aboutImg.parentElement;\nhost.classList.add(\"ga-ring-host\");\nhost.appendChild(ring);\nvar fitRing = function () {\nring.style.left = aboutImg.offsetLeft + \"px\";\nring.style.top = aboutImg.offsetTop + \"px\";\nring.style.width = aboutImg.offsetWidth + \"px\";\nring.style.height = aboutImg.offsetHeight + \"px\";\n};\nfitRing();\nif (window.ResizeObserver) new ResizeObserver(fitRing).observe(aboutImg);\nelse window.addEventListener(\"resize\", fitRing);\naboutImg.addEventListener(\"load\", fitRing);\nonIn(ring, function () { ring.classList.add(\"is-in\"); });\n}\n}\ndocument.querySelectorAll(\".ga-x-form .wpcf7\").forEach(function (wrap) {\nvar form = wrap.querySelector(\"form\");\nif (!form || form.hasAttribute(\"data-ga-form\")) return;\nform.setAttribute(\"data-ga-form\", \"1\");\nvar submit = form.querySelector(\"input.wpcf7-submit\");\nvar label = submit ? submit.value : \"\", held = 0;\nfunction word(v) { if (submit && v) submit.value = v; }\nfunction state(s) {\nform.classList.remove(\"ga-is-sending\", \"ga-is-sent\", \"ga-is-invalid\");\nif (s) form.classList.add(s);\n}\nwrap.addEventListener(\"wpcf7beforesubmit\", function () { clearTimeout(held); state(\"ga-is-sending\"); word(say(\"SENDING\", \"VERZENDEN\")); });\nwrap.addEventListener(\"wpcf7mailsent\", function () {\nstate(\"ga-is-sent\"); word(say(\"SENT \u2713\", \"VERZONDEN \u2713\"));\nheld = setTimeout(function () { state(null); word(label); }, 3000);\n});\nwrap.addEventListener(\"wpcf7invalid\", function () { state(\"ga-is-invalid\"); word(label); });\nwrap.addEventListener(\"wpcf7spam\", function () { state(null); word(label); });\nwrap.addEventListener(\"wpcf7mailfailed\", function () { state(null); word(label); });\n});\n(function () {\nif (pagePath !== \"\/projects\" || !window.fetch) return;\nvar SERIES_OF = { \"\/projects\/ai-101\": \"ai101\", \"\/projects\/ai-and-agency\": \"ai-agency\" };\nvar rows = [];\ndocument.querySelectorAll(\".ga-prow, .ga-feature\").forEach(function (row) {\nif (isMine(row)) return;\nvar a = row.querySelector(\"a.ga-btn[href], a[href]\");\nif (!a) return;\nvar p = (a.pathname || \"\").replace(\/^\\\/nl(?=\\\/|$)\/, \"\").replace(\/\\\/+$\/, \"\");\nvar slug = SERIES_OF[p];\nif (slug && CHAPTER_TOTAL[slug]) rows.push({ row: row, slug: slug });\n});\nif (!rows.length) return;\nfetch(\"\/wp-json\/wp\/v2\/categories?slug=ai101,ai-agency&_fields=slug,count\", { credentials: \"omit\" })\n.then(function (r) { return r.ok ? r.json() : []; })\n.then(function (cats) {\nvar live = {};\n(cats || []).forEach(function (c) { live[c.slug] = c.count; });\nrows.forEach(function (o, oi) {\nif (!(o.slug in live)) return;\nvar total = CHAPTER_TOTAL[o.slug], n = Math.min(live[o.slug], total);\nvar text = o.row.querySelector(\".ga-feature-text\") ||\n[].slice.call(o.row.querySelectorAll(\".elementor-widget-text-editor\")).pop();\nif (!text || o.row.querySelector(\".ga-prog\")) return;\nvar line = document.createElement(\"div\");\nline.className = \"ga-prog\" + (n === 0 ? \" is-soon\" : \"\");\nvar num = document.createElement(\"span\");\nnum.className = \"ga-prog-n\";\nnum.textContent = String(n);\nline.appendChild(num);\nline.appendChild(document.createTextNode(\nsay(\" of \", \" van \") + total + (n === 0 ? say(\" \u00b7 coming\", \" \u00b7 komt eraan\") : say(\" live\", \" live\"))));\nvar bar = document.createElement(\"i\");\nbar.style.setProperty(\"--ga-s\", String(n \/ total));\nline.appendChild(bar);\n(text.querySelector(\".elementor-widget-container\") || text).appendChild(line);\nonIn(line, function (still) {\nline.classList.add(\"is-in\");\nif (!still && n) countTo(num, n, staggerOf(oi));\n});\n});\n})\n.catch(function () {  });\n})();\nfunction lightArt(box) {\nif (!box || isMine(box) || box.hasAttribute(\"data-ga-art\")) return;\nvar img = box.querySelector(\"img\");\nif (!img) return;\nbox.setAttribute(\"data-ga-art\", \"1\");\nfunction set() {\nvar src = img.currentSrc || img.src;\nif (!src) return;\nbox.style.setProperty(\"--ga-art\", 'url(\"' + src.replace(\/\"\/g, \"%22\") + '\")');\nbox.classList.add(\"ga-art-lit\");\n}\nif (img.complete && img.naturalWidth) set();\nelse img.addEventListener(\"load\", set, { once: true });\n}\ndocument.querySelectorAll(\".ga-rows .eael-entry-media, \" +\n\".ga-lid > .elementor-widget-image > .elementor-widget-container, \" +\n\".ga-ledger .ga-card-art > .elementor-widget-container\").forEach(lightArt);\ndocument.querySelectorAll(\".ga-rhero\").forEach(function (hero) {\nif (isMine(hero) || hero.querySelector(\".ga-rh-glow\")) return;\nvar art = hero.querySelector(\".ga-rh-art img\");\nif (!art) return;\nvar glow = document.createElement(\"span\");\nglow.className = \"ga-rh-glow\";\nglow.setAttribute(\"aria-hidden\", \"true\");\nvar band = hero.querySelector(\".ga-rh-band\") || hero;\nband.insertBefore(glow, band.firstChild);\nfunction lit() {\nvar src = art.currentSrc || art.src;\nif (!src) return;\nglow.style.setProperty(\"--ga-art\", 'url(\"' + src.replace(\/\"\/g, \"%22\") + '\")');\nhero.classList.add(\"ga-rh-lit\");\n}\nif (art.complete && art.naturalWidth) lit(); else art.addEventListener(\"load\", lit, { once: true });\n});\n(function () {\nvar KEY = \"ga-series-read\", store = {};\ntry { store = JSON.parse(window.localStorage.getItem(KEY) || \"{}\") || {}; } catch (e) { store = {}; }\nfunction save() { try { window.localStorage.setItem(KEY, JSON.stringify(store)); } catch (e) {  } }\nvar bySlug = {}, seriesOf = {};\nObject.keys(CHAPTER_PARTS).forEach(function (cat) {\n(CHAPTER_PARTS[cat] || []).forEach(function (part) {\nbySlug[part[1]] = String(part[0]);\nseriesOf[String(part[0])] = cat;\n});\n});\nfunction idOf(href) {\nvar m = String(href || \"\").replace(\/^https?:\\\/\\\/[^\\\/]+\/, \"\").replace(\/^\\\/nl(?=\\\/)\/, \"\").match(\/^\\\/([^\\\/?#]+)\\\/?$\/);\nreturn m ? bySlug[m[1]] : null;\n}\ndocument.querySelectorAll(\".ga-ch-spine a.is-soon[href]\").forEach(function (a) {\na.classList.remove(\"is-soon\");\na.classList.add(\"is-done\");\n});\nfunction mark() {\ndocument.querySelectorAll(\".ga-ch-spine a[href], .ga-bs-tile\").forEach(function (el) {\nvar a = el.matches(\"a\") ? el : el.querySelector(\"a[href]\");\nvar id = a && idOf(a.getAttribute(\"href\"));\nif (!id) return;\nel.classList.toggle(\"ga-was-read\", !!store[id] && !el.classList.contains(\"is-now\"));\n});\n}\nmark();\nvar pm = (document.body.className || \"\").match(\/postid-(\\d+)\/);\nvar here = pm && pm[1];\nvar bodyP = document.querySelectorAll(\".ga-ch-body p\");\nvar end = bodyP.length ? bodyP[bodyP.length - 1] : null;\nif (here && seriesOf[here] && end && \"IntersectionObserver\" in window) {\nvar eo = new IntersectionObserver(function (es) {\nes.forEach(function (e) {\nif (!e.isIntersecting) return;\nstore[here] = Date.now();\nsave();\neo.disconnect();\nmark();\n});\n});\neo.observe(end);\n}\ndocument.querySelectorAll(\".ga-feature\").forEach(function (feat) {\nif (isMine(feat) || feat.querySelector(\".ga-continue\")) return;\nvar link = feat.querySelector(\"a[href*='\/projects\/']\");\nvar pp = link && (link.pathname || \"\").replace(\/^\\\/nl(?=\\\/|$)\/, \"\").replace(\/\\\/+$\/, \"\");\nvar cat = pp === \"\/projects\/ai-101\" ? \"ai101\" : pp === \"\/projects\/ai-and-agency\" ? \"ai-agency\" : null;\nvar parts = cat && CHAPTER_PARTS[cat];\nif (!parts || !window.fetch) return;\nvar readN = parts.filter(function (p) { return store[String(p[0])]; }).length;\nif (!readN) return;\nvar ids = parts.map(function (p) { return p[0]; }).join(\",\");\nfetch(\"\/wp-json\/wp\/v2\/posts?include=\" + ids + \"&per_page=20&_fields=id\", { credentials: \"omit\" })\n.then(function (r) { return r.ok ? r.json() : []; })\n.then(function (live) {\nvar out = {};\n(live || []).forEach(function (p) { out[String(p.id)] = true; });\nvar next = parts.filter(function (p) { return out[String(p[0])] && !store[String(p[0])]; })[0];\nvar text = feat.querySelector(\".ga-feature-text\") || feat.querySelector(\".elementor-widget-text-editor\");\nif (!text || feat.querySelector(\".ga-continue\")) return;\nvar line;\nif (next) {\nline = document.createElement(\"a\");\nline.href = \"\/\" + (NL ? \"nl\/\" : \"\") + next[1] + \"\/\";\nvar no = String(parts.indexOf(next) + 1);\nline.textContent = say(\"CONTINUE \u00b7 \", \"VERDER \u00b7 \") + (no.length < 2 ? \"0\" + no : no) + \"  \" + next[2] + \" \u2192\";\n} else {\nline = document.createElement(\"span\");\nline.textContent = say(\"UP TO DATE \u00b7 \", \"BIJ \u00b7 \") + readN + say(\" READ\", \" GELEZEN\");\n}\nline.className = \"ga-continue\";\n(text.querySelector(\".elementor-widget-container\") || text).appendChild(line);\n})\n.catch(function () {  });\n});\n})();\nvar cards = document.querySelectorAll(\".eael-grid-post, .ga-score, .ga-lid, .ga-ledger, .ga-feature, .ga-prow\");\ncards.forEach(function (c, i) {\nif (breathe && c.closest(\".ga-rows\")) return;\nc.classList.add(\"ga-reveal\", \"ga-ruled\");\nc.style.setProperty(\"--ga-delay\", (i % 6) * 60 + \"ms\");\n});\nif (!reduced && \"IntersectionObserver\" in window) {\nvar io = new IntersectionObserver(function (entries) {\nentries.forEach(function (e) {\nif (!e.isIntersecting) return;\nvar card = e.target, quick = quickOf(e);\nif (quick) card.classList.add(\"ga-quick\");\ncard.classList.add(\"is-in\");\nio.unobserve(card);\nsetTimeout(function () {\ncard.style.setProperty(\"--ga-delay\", \"0ms\");\ncard.classList.add(\"ga-settled\");\n}, quick ? 260 : 1200);\n});\n}, { threshold: 0.2, rootMargin: REACH });\ndocument.querySelectorAll(\".ga-reveal\").forEach(function (el) { io.observe(el); });\n} else {\ndocument.querySelectorAll(\".ga-reveal\").forEach(function (el) { el.classList.add(\"is-in\"); });\n}\nvar numSpan = scoreEl ? scoreEl.querySelector(\".ga-num\") : null;\nif (numSpan && !breathe) {\nvar slateBox = scoreEl.closest(\".ga-score\") || scoreEl;\nonIn(slateBox, function (still) {\nif (still) { slateBox.classList.add(\"is-counted\"); return; }\ncountTo(numSpan, scoreVal, 200);\nsetTimeout(function () { slateBox.classList.add(\"is-counted\"); }, 200 + token(\"--ga-t-count\", 1000));\n});\n}\nvar slot = document.querySelector(\"[data-ga-meta]\");\nif (!slot) {\nvar dwrap = document.querySelector(\".ga-meta-date\");\nvar dateEl = null;\nif (dwrap) {\ndateEl = [].slice.call(dwrap.querySelectorAll(\".elementor-heading-title\")).filter(function (t) {\nreturn \/\\d{1,2}-\\d{1,2}-\\d{4}\/.test(t.textContent);\n})[0] || dwrap.querySelector(\".elementor-heading-title\");\n}\nif (dateEl) {\nslot = document.createElement(\"span\");\nslot.className = \"ga-meta-derived\";\ndateEl.appendChild(slot);\n}\n}\nif (slot && article) {\nvar words = article.textContent.trim().split(\/\\s+\/).length;\nvar mins = Math.max(1, Math.round(words \/ 220));\nvar pre = slot.className === \"ga-meta-derived\" ? \"  \u00b7  \" : \"\";\nslot.textContent = \"\";\nvar mEl = document.createElement(\"span\");\nmEl.className = \"ga-meta-min\";\nmEl.textContent = pre + mins + \" MIN\";\nslot.appendChild(mEl);\nvar sEl = document.createElement(\"span\");\nsEl.className = \"ga-meta-sections\";\nsEl.textContent = \"  \u00b7  \" + (heads.length || 1) + say(\" SECTIONS\", \" SECTIES\");\nslot.appendChild(sEl);\n}\ndocument.querySelectorAll(\".elementor-heading-title\").forEach(function (t) {\nif (isMine(t) || t.hasAttribute(\"data-ga-date\")) return;\nvar walk = document.createTreeWalker(t, NodeFilter.SHOW_TEXT, null), node;\nwhile ((node = walk.nextNode())) {\nvar said = saidDate(node.nodeValue);\nif (!said) continue;\nt.setAttribute(\"data-ga-date\", node.nodeValue.trim());\nnode.nodeValue = node.nodeValue.replace(node.nodeValue.trim(), said);\nbreak;\n}\n});\n(function () {\nif (!document.createTreeWalker || !document.body) return;\nvar walkM = document.createTreeWalker(document.body, 4, null), tn;\nvar hits = [];\nwhile ((tn = walkM.nextNode())) {\nvar v = tn.nodeValue;\nif (v.indexOf(\"\u00b7\") < 0 || !\/\\d{1,2}-\\d{1,2}-\\d{4}\/.test(v)) continue;\nvar pe = tn.parentElement;\nif (!pe || isMine(pe) || pe.closest(\"script, style, textarea, input\")) continue;\nhits.push(tn);\n}\nhits.forEach(function (node) {\nnode.nodeValue = node.nodeValue.replace(\/(^|\u00b7\\s*)(\\d{1,2}-\\d{1,2}-\\d{4})(?=\\s*(\u00b7|$))\/g, function (all, pre, d) {\nreturn pre + (saidDate(d) || d);\n});\n});\n})();\nvar MONTHS = [\"january|januari\", \"february|februari\", \"march|maart\", \"april\", \"may|mei\", \"june|juni\",\n\"july|juli\", \"august|augustus\", \"september\", \"october|oktober\", \"november\", \"december\"];\ndocument.querySelectorAll(\".eael-grid-post time\").forEach(function (tm) {\nif (tm.hasAttribute(\"data-ga-date\") || tm.children.length) return;\nvar d = tm.textContent.trim().match(\/^(\\d{1,2})\\s+([A-Za-z]+)\\s+(\\d{4})$\/);\nif (!d) return;\nvar mi = -1;\nMONTHS.forEach(function (names, i) { if (names.split(\"|\").indexOf(d[2].toLowerCase()) > -1) mi = i; });\nif (mi < 0) return;\ntm.setAttribute(\"data-ga-date\", tm.textContent.trim());\ntm.textContent = saidDate(d[1] + \"-\" + (mi + 1) + \"-\" + d[3]);\nvar age = (Date.now() - new Date(+d[3], mi, +d[1]).getTime()) \/ 864e5;\nvar kindEl = tm.closest(\".eael-grid-post\");\nkindEl = kindEl && kindEl.querySelector(\".ga-row-kind\");\nif (age >= 0 && age < 10 && kindEl && !kindEl.querySelector(\".ga-new\")) {\nvar nw = document.createElement(\"span\");\nnw.className = \"ga-new\";\nnw.textContent = say(\"NEW\", \"NIEUW\");\nkindEl.appendChild(nw);\n}\n});\nif (breathe) root.classList.add(\"ga-breathe\");\nvar breathers = [];\nvar awakeIO = breathe ? new IntersectionObserver(function (es) {\nes.forEach(function (e) { e.target.classList.toggle(\"ga-awake\", e.isIntersecting); });\n}, { threshold: 0 }) : null;\nfunction whileSeen(el) {\nif (!awakeIO || !el || isMine(el) || breathers.indexOf(el) > -1) return;\nbreathers.push(el);\nawakeIO.observe(el);\n}\nif (breathe) {\ndocument.addEventListener(\"visibilitychange\", function () {\nroot.classList.toggle(\"ga-tab-hidden\", document.hidden);\nbreathers.forEach(function (el) {\nif (document.hidden) { el.classList.remove(\"ga-awake\"); return; }\nawakeIO.unobserve(el);\nawakeIO.observe(el);\n});\n});\n}\nvar seenIOs = {}, seenFns = new Map();\nfunction onSeen(el, share, fn) {\nif (!el) return;\nif (!breathe) { fn(true, false); return; }\nvar key = String(share);\nif (!seenIOs[key]) {\nseenIOs[key] = new IntersectionObserver(function (es) {\nes.forEach(function (e) {\nif (!e.isIntersecting || !seenFns.has(e.target)) return;\nseenIOs[key].unobserve(e.target);\nvar f = seenFns.get(e.target), quick = quickOf(e);\nseenFns.delete(e.target);\nif (quick) e.target.classList.add(\"ga-quick\");\nf(false, quick);\n});\n}, { threshold: share, rootMargin: REACH });\n}\nseenFns.set(el, fn);\nseenIOs[key].observe(el);\n}\nfunction wordsOf(box, masked) {\nvar out = [];\nif (!box || !document.createTreeWalker) return out;\nvar walk = document.createTreeWalker(box, 4, null), tn, nodes = [];\nwhile ((tn = walk.nextNode())) nodes.push(tn);\nnodes.forEach(function (node) {\nif (!node.nodeValue.trim() || !node.parentNode) return;\nif (node.parentElement && node.parentElement.closest(\"script, style, .ga-lw, .ga-mw\")) return;\nvar frag = document.createDocumentFragment();\nnode.nodeValue.split(\/(\\s+)\/).forEach(function (part) {\nif (!part) return;\nif (!part.trim()) { frag.appendChild(document.createTextNode(part)); return; }\nvar w = document.createElement(\"span\");\nif (masked) {\nw.className = \"ga-mw\";\nvar inner = document.createElement(\"span\");\ninner.className = \"ga-mi\";\ninner.textContent = part;\nw.appendChild(inner);\n} else {\nw.className = \"ga-lw\";\nw.textContent = part;\n}\nfrag.appendChild(w);\nout.push(w);\n});\nnode.parentNode.replaceChild(frag, node);\n});\nreturn out;\n}\nfunction lineIndex(words) {\nvar top = null, n = -1;\nwords.forEach(function (w) {\nvar t = w.offsetTop;\nif (top === null || t > top + 2) { n++; top = t; }\nw.style.setProperty(\"--ga-ln\", String(n));\n});\nreturn n + 1;\n}\nfunction measured(words, then) {\nvar go = function () { var lines = lineIndex(words); if (then) then(lines); };\ngo();\nif (document.fonts && document.fonts.ready) document.fonts.ready.then(go);\n}\nfunction linesIn(w, dek) {\nif (!breathe || !w || isMine(w) || w.hasAttribute(\"data-ga-lines\")) return;\nvar box = w.classList.contains(\"elementor-widget\") ? (w.querySelector(\".elementor-widget-container\") || w) : w;\nvar words = wordsOf(box, false);\nif (!words.length) return;\nw.setAttribute(\"data-ga-lines\", \"1\");\nw.classList.add(\"ga-lines\");\nif (dek) w.classList.add(\"ga-lines--dek\");\nmeasured(words);\n}\nfunction typeIt(el, start) {\nif (!breathe || !el || isMine(el) || el.hasAttribute(\"data-ga-type\") || el.children.length) return;\nvar txt = el.textContent;\nif (!txt.trim() || txt.trim().length > 64) return;\nel.setAttribute(\"data-ga-type\", \"1\");\nvar heading = \/^H[1-6]$\/.test(el.tagName);\nif (heading) el.setAttribute(\"aria-label\", txt.trim());\nel.textContent = \"\";\nvar box = document.createElement(\"span\");\nif (heading) box.setAttribute(\"aria-hidden\", \"true\");\nvar n = 0;\nfor (var ci = 0; ci < txt.length; ci++) {\nvar ch = txt.charAt(ci);\nif (\/\\s\/.test(ch)) { box.appendChild(document.createTextNode(ch)); continue; }\nvar s = document.createElement(\"span\");\ns.className = \"ga-tw\";\ns.style.setProperty(\"--ga-c\", String(n++));\ns.textContent = ch;\nbox.appendChild(s);\n}\nel.appendChild(box);\nel.style.setProperty(\"--ga-tw0\", start + \"ms\");\nel.style.setProperty(\"--ga-tws\", Math.min(26, 700 \/ Math.max(1, n)).toFixed(1) + \"ms\");\n}\nfunction wordRise(title) {\nif (!breathe || !title || title.hasAttribute(\"data-ga-wr\")) return;\ntitle.setAttribute(\"data-ga-wr\", \"1\");\nvar plain = title.children.length === 0;\nif (!plain) { title.classList.add(\"ga-wr\"); return; }\nvar words = title.textContent.trim().split(\/\\s+\/);\ntitle.textContent = \"\";\nwords.forEach(function (w, wi) {\nvar s = document.createElement(\"span\");\ns.className = \"ga-wr\";\ns.style.setProperty(\"--ga-i\", String(wi));\ns.textContent = w;\ntitle.appendChild(s);\nif (wi < words.length - 1) title.appendChild(document.createTextNode(\" \"));\n});\n}\nvar homeHero = document.querySelector(\".elementor-3554 > .ga-hh\");\nif (homeHero) {\nwhileSeen(homeHero);\nvar cue = homeHero.querySelector(\".ga-hh-cue\");\nif (cue && breathe) {\nvar cueOff = function () {\nif ((window.scrollY || window.pageYOffset || 0) < 4) return;\ncue.classList.add(\"ga-cue-done\");\nwindow.removeEventListener(\"scroll\", cueOff);\n};\nwindow.addEventListener(\"scroll\", cueOff, { passive: true });\n}\n}\nvar homeShelfSec = document.querySelector(\".elementor-3554 > .ga-hs\");\nif (homeShelfSec) onSeen(homeShelfSec, 0.2, function () { homeShelfSec.classList.add(\"is-in\"); });\ndocument.querySelectorAll(\".ga-shelf\").forEach(function (sh) {\nif (isMine(sh) || sh.hasAttribute(\"data-ga-shelf\")) return;\nsh.setAttribute(\"data-ga-shelf\", \"1\");\nvar strip = sh.querySelector(\".ga-shelf-strip\");\nif (!strip) return;\n[\"is-l\", \"is-r\"].forEach(function (k) {\nvar f = document.createElement(\"i\");\nf.className = \"ga-shelf-fade \" + k;\nf.setAttribute(\"aria-hidden\", \"true\");\nsh.appendChild(f);\n});\nsh.querySelectorAll(\".ga-shelf-bay img\").forEach(function (im) {\nvar bay = im.parentNode;\nvar lit = function () {\nvar src = im.currentSrc || im.src;\nif (!src) return;\nbay.style.setProperty(\"--ga-art\", 'url(\"' + src.replace(\/\"\/g, \"%22\") + '\")');\nif (im.naturalWidth && Math.abs(im.naturalWidth - im.naturalHeight) < 4) bay.classList.add(\"is-full\");\n};\nif (im.complete && im.naturalWidth) lit(); else im.addEventListener(\"load\", lit, { once: true });\n});\nif (!breathe || !window.requestAnimationFrame) return;\nvar items = [].slice.call(strip.children);\nif (!items.length) return;\nitems.forEach(function (li) {\nvar c = li.cloneNode(true);\nc.setAttribute(\"aria-hidden\", \"true\");\nc.classList.add(\"ga-shelf-clone\");\nc.querySelectorAll(\"a\").forEach(function (a) { a.setAttribute(\"tabindex\", \"-1\"); });\nstrip.appendChild(c);\n});\nif (!strip.animate) return;\nsh.classList.add(\"ga-drift\");\nsh.style.touchAction = \"pan-y\";\nvar lap = 0, anim = null, want = true, seen = false, ramp = 0, resumeT = 0, drag = null, moved = false;\nvar lapMs = function () { return window.innerWidth <= 767 ? 60000 : 40000; };\nvar mod = function (t, d) { return ((t % d) + d) % d; };\nfunction build() {\nvar dur = lapMs(), frac = 0, rate = 1, held = false;\nif (anim) {\nvar od = anim.effect.getTiming().duration;\nfrac = mod(anim.currentTime || 0, od) \/ od;\nrate = anim.playbackRate;\nheld = anim.playState === \"paused\";\nanim.cancel();\n}\nlap = strip.children[items.length].offsetLeft - items[0].offsetLeft;\nanim = strip.animate([{ transform: \"translate3d(0, 0, 0)\" }, { transform: \"translate3d(\" + (-lap) + \"px, 0, 0)\" }],\n{ duration: dur, iterations: Infinity });\nanim.currentTime = frac * dur;\nanim.playbackRate = rate;\nif (held || !seen) anim.pause();\n}\nbuild();\nvar rebuildT = 0;\nwindow.addEventListener(\"resize\", function () { clearTimeout(rebuildT); rebuildT = setTimeout(build, 150); });\nfunction rateTo(target, ms, shape) {\ncancelAnimationFrame(ramp);\nvar from = anim.playbackRate, t0 = performance.now();\nif (target > 0) { if (anim.playState === \"paused\") anim.play(); }\n(function step(now) {\nvar p = Math.min(1, Math.max(0, (now - t0) \/ ms));\nanim.playbackRate = from + (target - from) * shape(p);\nif (p < 1) ramp = requestAnimationFrame(step);\nelse if (target === 0) anim.pause();\n})(t0);\n}\nfunction stop() { clearTimeout(resumeT); want = false; rateTo(0, 800, function (p) { return 1 - Math.pow(1 - p, 2.5); }); }\nfunction resumeLater() {\nclearTimeout(resumeT);\nresumeT = setTimeout(function () { want = true; if (seen) rateTo(1, 800, function (p) { return p * p; }); }, 800);\n}\nnew IntersectionObserver(function (es) {\nes.forEach(function (e) {\nseen = e.isIntersecting;\nif (!seen) { cancelAnimationFrame(ramp); anim.pause(); }\nelse if (want && !document.hidden) { anim.playbackRate = 1; anim.play(); }\n});\n}, { threshold: 0 }).observe(sh);\ndocument.addEventListener(\"visibilitychange\", function () {\nif (document.hidden) anim.pause(); else if (seen && want) anim.play();\n});\nfunction shiftBy(px) { var d = anim.effect.getTiming().duration; anim.currentTime = mod((anim.currentTime || 0) + px \/ lap * d, d); }\nsh.addEventListener(\"pointerenter\", function (e) { if (e.pointerType === \"mouse\") stop(); });\nsh.addEventListener(\"pointerleave\", function (e) { if (e.pointerType === \"mouse\") resumeLater(); });\nsh.addEventListener(\"focusin\", function (e) {\nstop();\nvar tile = e.target.closest ? e.target.closest(\"li\") : null;\nif (!tile) return;\nvar r = tile.getBoundingClientRect(), b = sh.getBoundingClientRect();\nif (r.left < b.left + 40) shiftBy(-(b.left + 40 - r.left));\nelse if (r.right > b.right - 60) shiftBy(r.right - (b.right - 60));\n});\nsh.addEventListener(\"focusout\", function (e) { if (!sh.contains(e.relatedTarget)) resumeLater(); });\nsh.addEventListener(\"pointerdown\", function (e) {\nif (e.pointerType === \"mouse\") return;\nclearTimeout(resumeT); cancelAnimationFrame(ramp);\nwant = false; anim.pause(); anim.playbackRate = 0;\ndrag = { x0: e.clientX, t: anim.currentTime || 0 };\nmoved = false;\n});\nsh.addEventListener(\"pointermove\", function (e) {\nif (!drag) return;\nvar dx = e.clientX - drag.x0, d = anim.effect.getTiming().duration;\nif (Math.abs(dx) > 6) moved = true;\nanim.currentTime = mod(drag.t - dx \/ lap * d, d);\n});\nvar release = function () { if (!drag) return; drag = null; resumeLater(); };\nsh.addEventListener(\"pointerup\", release);\nsh.addEventListener(\"pointercancel\", release);\nsh.addEventListener(\"click\", function (e) { if (moved) { e.preventDefault(); moved = false; } }, true);\n});\nvar breathTitles = [];\ndocument.querySelectorAll(\"h1.elementor-heading-title, h1.ga-ch-title\").forEach(function (t) {\nif (isMine(t) || t.closest(\".she-header-yes, .ga-x-header, footer, .ga-hh\")) return;\nbreathTitles.push(t);\nwhileSeen(t);\n});\nfunction arriveSkip(w) {\nreturn isMine(w) || !!w.querySelector(\"h1\") || !!w.closest(\".ga-reveal, .ga-arrive\")\n|| w.classList.contains(\"elementor-invisible\")\n|| w.matches(\".elementor-widget-image, .elementor-widget-html, .ga-rh-kind, .ga-rh-lede, .ga-section-title\");\n}\nbreathTitles.forEach(function (t) {\nif (t.classList.contains(\"ga-ch-title\")) { wordRise(t); return; }\nif (t.closest(\".ga-rh-title\")) { wordRise(t); return; }\nif (t.classList.contains(\"ga-pc-title\") || t.classList.contains(\"ga-ph-name\")) return;\nprintIt(t);\nif (!breathe) return;\nvar hero = t.closest(\".ga-band\");\nvar own = t.closest(\".elementor-widget\");\nvar list = [];\nif (hero) {\nif (hero.hasAttribute(\"data-ga-arrive\")) return;\nhero.setAttribute(\"data-ga-arrive\", \"1\");\nlist = [].slice.call(hero.querySelectorAll(\".elementor-widget\"));\n} else if (own) {\nfor (var nx = own.nextElementSibling; nx && list.length < 3; nx = nx.nextElementSibling) {\nif (nx.classList.contains(\"elementor-widget\")) list.push(nx);\n}\nlist.unshift(own);\n}\nvar seenT = false, above = 0, under = 0, acts = 0;\nlist.forEach(function (w) {\nif (w.contains(t)) { seenT = true; return; }\nif (arriveSkip(w)) return;\nvar act = w.matches(\".elementor-widget-button, .elementor-widget-elementskit-dual-button, .elementor-widget-elementskit-button\") || !!w.querySelector(\"a.ga-btn\");\nvar d = !seenT ? 250 + Math.min(above++, 3) * 80\n: act ? 1110 + Math.min(acts++, 3) * 80\n: 1030 + Math.min(under++, 4) * 80;\nw.classList.add(\"ga-arrive\");\nw.style.setProperty(\"--ga-d\", d + \"ms\");\n});\nif (hero && !hero.querySelector(\":scope > .ga-air\")) {\nvar air = document.createElement(\"i\");\nair.className = \"ga-air\";\nair.setAttribute(\"aria-hidden\", \"true\");\nhero.insertBefore(air, hero.firstChild);\nwhileSeen(hero);\n}\n});\nvar leaners = [];\nif (breathe) {\nvar leanStart = performance.now() + (curtain ? 480 : 0) + 2600;\nvar breathOf = function (p) { return (1 - Math.cos(Math.PI * Math.max(0, Math.min(1, p)))) \/ 2; };\nvar swell = function (p, a, b) { return p <= a ? 0 : p <= b ? breathOf((p - a) \/ (b - a)) : breathOf((1 - p) \/ (1 - b)); };\nbreathTitles.forEach(function (t) {\nvar parts = t.classList.contains(\"ga-print\") ? [t] : [].slice.call(t.querySelectorAll(\".ga-print\"));\nif (parts.length) leaners.push({ el: t, set: function (p) { var k = (0.35 * swell(p, 0, 0.5)).toFixed(3); parts.forEach(function (x) { x.style.setProperty(\"--ga-k\", k); }); } });\n});\nvar hhTitle = homeHero && homeHero.querySelector(\".ga-hh-title .elementor-heading-title\");\nif (hhTitle) leaners.push({ el: homeHero, set: function (p) {\nhhTitle.style.setProperty(\"--ga-l4\", swell(p, 0, 0.5).toFixed(3));\nhhTitle.style.setProperty(\"--ga-l3\", swell(p, 0.075, 0.575).toFixed(3));\nhhTitle.style.setProperty(\"--ga-l2\", swell(p, 0.15, 0.65).toFixed(3));\n} });\nif (leaners.length) setInterval(function () {\nif (document.hidden || root.classList.contains(\"ga-scrolling\")) return;\nvar t = performance.now() - leanStart;\nif (t < 0) return;\nvar p = (t % 16000) \/ 16000;\nleaners.forEach(function (L) { if (L.el.classList.contains(\"ga-awake\")) L.set(p); });\n}, 250);\n}\ndocument.querySelectorAll(\".ga-ch-kick\").forEach(function (k) { typeIt(k, 200); });\ndocument.querySelectorAll(\".ga-ch-lede\").forEach(function (l) { linesIn(l, true); });\nif (breathe) document.querySelectorAll(\".ga-ch-onward\").forEach(function (o) { o.classList.add(\"ga-wayon\"); });\ndocument.querySelectorAll(\".ga-rh-kind .elementor-heading-title\").forEach(function (k) { typeIt(k, 200); });\ndocument.querySelectorAll(\".ga-rh-meta\").forEach(function (m) { linesIn(m, true); });\nvar lightBand = document.querySelector(\".ga-rh-band\");\nif (lightBand) whileSeen(lightBand);\nif (breathe) document.querySelectorAll(\".ga-section-title\").forEach(function (st) {\nif (isMine(st) || st.closest(\".ga-reveal, .ga-feature, .ga-lid, .ga-hh, .ga-hs\") || st.classList.contains(\"ga-arrive\")) return;\nvar ht = st.querySelector(\".elementor-heading-title\");\nif (ht && !ht.querySelector(\".ga-st-t\")) {\nvar sp = document.createElement(\"span\");\nsp.className = \"ga-st-t\";\nwhile (ht.firstChild) sp.appendChild(ht.firstChild);\nht.appendChild(sp);\n}\nst.classList.add(\"ga-rise\");\nvar group = [];\nfor (var sx = st.nextElementSibling; sx && group.length < 4; sx = sx.nextElementSibling) {\nif (!sx.classList.contains(\"elementor-widget\") || sx.classList.contains(\"ga-section-title\")\n|| sx.classList.contains(\"ga-reveal\") || sx.classList.contains(\"ga-arrive\")\n|| sx.querySelector(\".ga-reveal, .ga-mark, img\")) break;\ngroup.push(sx);\n}\ngroup.forEach(function (g) {\nif (g.matches(\".elementor-widget-text-editor\")) { linesIn(g, false); return; }\nvar act = g.matches(\".elementor-widget-button, .elementor-widget-elementskit-dual-button\") || !!g.querySelector(\"a.ga-btn\");\ng.classList.add(\"ga-rise\");\ng.style.setProperty(\"--ga-d\", act ? \"1200ms\" : \"480ms\");\n});\nonIn(st, function (still, quick) {\nst.classList.add(\"is-in\");\ngroup.forEach(function (g) { if (quick) g.classList.add(\"ga-quick\"); g.classList.add(\"is-in\"); });\n});\n});\nif (breathe) document.querySelectorAll(\".ga-rh-lede, .ga-pull\").forEach(function (sm) {\nif (isMine(sm) || !sm.classList.contains(\"elementor-widget\") || sm.hasAttribute(\"data-ga-stmt\")) return;\nvar box = sm.querySelector(\".elementor-widget-container\") || sm;\nvar words = wordsOf(box, true);\nif (!words.length) return;\nsm.setAttribute(\"data-ga-stmt\", \"1\");\nsm.classList.add(\"ga-stmt2\");\nvar lines = 1;\nmeasured(words, function (n) {\nlines = n;\nwords.forEach(function (w) {\nw.classList.toggle(\"ga-echo\", +w.style.getPropertyValue(\"--ga-ln\") === n - 1);\n});\n});\nwhileSeen(sm);\nonSeen(sm, 0.4, function (still, quick) {\nsm.classList.add(\"is-in\");\nsetTimeout(function () { sm.classList.add(\"ga-landed\"); }, quick ? 260 : 200 + lines * 120 + 640);\nvar echo = [].slice.call(sm.querySelectorAll(\".ga-echo > .ga-mi\"));\nif (!echo.length) return;\nvar spent = quick ? 740 : 0, last = performance.now();\nvar reveal = function (x) { var u = 1 - Math.max(0, Math.min(1, x)); return 1 - u * u * u; };\nvar iv = setInterval(function () {\nvar now = performance.now(), dt = now - last;\nlast = now;\nif (document.hidden || root.classList.contains(\"ga-scrolling\") || !sm.classList.contains(\"ga-awake\")) return;\nspent += dt;\nvar ea = reveal((spent - 740) \/ 500), dr = Math.max(0, Math.min(1, (spent - 740) \/ 5260));\necho.forEach(function (w) {\nw.style.setProperty(\"--ga-ea\", ea.toFixed(3));\nw.style.setProperty(\"--ga-echo\", dr.toFixed(3));\n});\nif (dr >= 1) clearInterval(iv);\n}, 100);\n});\n});\nfunction rollIn(slate, num, val) {\nvar txt = num.textContent.trim();\nif (!\/^\\d{1,3}$\/.test(txt)) return false;\nvar cs = window.getComputedStyle(num.parentNode || num);\nvar lh = parseFloat(cs.lineHeight);\nif (isNaN(lh)) lh = parseFloat(cs.fontSize) * 1.2;\nvar sr = document.createElement(\"span\");\nsr.className = \"ga-sr\";\nsr.textContent = txt;\nvar roll = document.createElement(\"span\");\nroll.className = \"ga-roll\";\nroll.setAttribute(\"aria-hidden\", \"true\");\nroll.style.setProperty(\"--ga-lh\", lh.toFixed(2) + \"px\");\ntxt.split(\"\").forEach(function (d) {\nvar rd = document.createElement(\"span\");\nrd.className = \"ga-rd\";\nvar rs = document.createElement(\"span\");\nrs.className = \"ga-rs\";\nfor (var k = 0; k < 20; k++) {\nvar s = document.createElement(\"span\");\ns.textContent = String(k % 10);\nrs.appendChild(s);\n}\nrs.style.setProperty(\"--ga-rt\", String(10 + +d));\nrd.style.setProperty(\"--ga-di\", String(roll.children.length));\nrd.style.setProperty(\"--ga-dn\", String(txt.length));\nrd.appendChild(rs);\nroll.appendChild(rd);\n});\nnum.textContent = \"\";\nnum.appendChild(sr);\nnum.appendChild(roll);\nslate.style.setProperty(\"--ga-sf\", String(Math.max(0, Math.min(1, val \/ 100))));\nonSeen(slate, 0.5, function () {\nslate.classList.add(\"is-counting\");\nsetTimeout(function () { slate.classList.add(\"is-counted\"); }, 1300);\n});\nreturn true;\n}\nif (breathe && numSpan) {\nvar slate6 = scoreEl.closest(\".ga-score\") || scoreEl;\nif (!slate6.hasAttribute(\"data-ga-roll\")) {\nslate6.setAttribute(\"data-ga-roll\", \"1\");\nrollIn(slate6, numSpan, scoreVal);\n}\n}\nvar DEVELOP = \".ga-rows .eael-entry-media, .ga-lid > .elementor-widget-image > .elementor-widget-container, \" +\n\".ga-ledger .ga-card-art > .elementor-widget-container, .ga-rh-art > .elementor-widget-container, \" +\n\".ga-ch-square, .ga-pt-cover, .ga-prow > .elementor-widget-image > .elementor-widget-container\";\nif (breathe) document.querySelectorAll(DEVELOP).forEach(function (m, mi) {\nif (isMine(m) || m.hasAttribute(\"data-ga-dev\")) return;\nvar img = m.querySelector(\"img\");\nif (!img) return;\nm.setAttribute(\"data-ga-dev\", \"1\");\nm.classList.add(\"ga-develop\", \"ga-art-x\");\nm.style.setProperty(\"--ga-h\", String(mi % 7));\nif (m.matches(\".ga-rh-art > .elementor-widget-container, .ga-ch-square, .ga-pt-cover\")) m.classList.add(\"ga-breath4\");\nvar dev = document.createElement(\"i\");\ndev.className = \"ga-dev\";\ndev.setAttribute(\"aria-hidden\", \"true\");\nm.appendChild(dev);\nvar done = function () {\nonSeen(m, 1 \/ 3, function (still, quick) {\nm.classList.add(\"is-in\");\nsetTimeout(function () { m.classList.add(\"ga-developed\"); }, quick ? 420 : 1400);\n});\n};\nif (img.decode) img.decode().then(done, done);\nelse if (img.complete) done();\nelse img.addEventListener(\"load\", done, { once: true });\nif (!m.closest(\".ga-rows\")) whileSeen(m);\n});\nvar depthEls = [];\nif (breathe) document.querySelectorAll(\".ga-rh-art > .elementor-widget-container, .ga-pt-cover\").forEach(function (d) {\nif (isMine(d)) return;\nd.classList.add(\"ga-depth\");\ndepthEls.push(d);\n});\nfunction depthMeasure() {\nvar phone = window.innerWidth <= 767, f = phone ? 0.05 : 0.1, cap = phone ? 24 : 48;\ndepthEls.forEach(function (d) { d.style.setProperty(\"--ga-dr\", Math.min(cap, Math.round((window.innerHeight + d.offsetHeight) * f)) + \"px\"); });\n}\nif (depthEls.length) { depthMeasure(); window.addEventListener(\"resize\", depthMeasure); }\nvar IX = \".ga-rows .eael-grid-post, .ga-board-row, .ga-pt-prow, .ga-ch-spine a\";\nvar ixBatch = [], ixTimer = 0;\nvar ixIO = breathe ? new IntersectionObserver(function (es) {\nes.forEach(function (e) {\nif (!e.isIntersecting) return;\nixIO.unobserve(e.target);\nif (quickOf(e)) { e.target.classList.add(\"ga-quick\", \"is-in\"); return; }\nixBatch.push({ row: e.target, top: e.boundingClientRect.top });\n});\nclearTimeout(ixTimer);\nixTimer = setTimeout(function () {\nixBatch.sort(function (a, b) { return a.top - b.top; });\nixBatch.forEach(function (o, i) { o.row.style.setProperty(\"--ga-xn\", String(Math.min(i, 12))); o.row.classList.add(\"is-in\"); });\nixBatch = [];\n}, 16);\n}, { threshold: 0.2, rootMargin: REACH }) : null;\nvar finePointer = window.matchMedia(\"(hover: hover) and (pointer: fine)\").matches;\nif (breathe) document.querySelectorAll(IX).forEach(function (row) {\nif (isMine(row) || row.classList.contains(\"ga-board-head\") || row.hasAttribute(\"data-ga-ix\")) return;\nrow.setAttribute(\"data-ga-ix\", \"1\");\nrow.classList.add(\"ga-ix\");\nrow.classList.remove(\"ga-reveal\");\nvar spine = row.matches(\".ga-ch-spine a\");\nif (!spine) {\nvar hair = document.createElement(\"i\");\nhair.className = \"ga-ix-hair\";\nhair.setAttribute(\"aria-hidden\", \"true\");\nrow.appendChild(hair);\nvar plate = document.createElement(\"i\");\nplate.className = \"ga-ix-plate\";\nplate.setAttribute(\"aria-hidden\", \"true\");\nrow.insertBefore(plate, row.firstChild);\nrow.classList.add(\"ga-ix-p\");\nvar ttl = row.querySelector(\".eael-entry-title, .elementor-widget-heading:first-of-type .elementor-heading-title\");\nif (ttl) ttl.classList.add(\"ga-ix-title\");\nif (finePointer) {\nrow.addEventListener(\"pointerenter\", function () { if (!flying()) row.classList.add(\"ga-ix-hover\"); });\nrow.addEventListener(\"pointermove\", function () { if (!flying() && !row.classList.contains(\"ga-ix-hover\")) row.classList.add(\"ga-ix-hover\"); }, { passive: true });\nrow.addEventListener(\"pointerleave\", function () { row.classList.remove(\"ga-ix-hover\"); });\n}\nrow.addEventListener(\"focusin\", function () { row.classList.add(\"ga-ix-hover\"); });\nrow.addEventListener(\"focusout\", function () { row.classList.remove(\"ga-ix-hover\"); });\n}\nixIO.observe(row);\n});\ndocument.querySelectorAll(\".ga-bs-tile\").forEach(function (tile) {\nvar sib = tile.parentNode ? [].slice.call(tile.parentNode.children).indexOf(tile) : 0;\ntile.style.setProperty(\"--ga-xn\", String(Math.min(Math.max(sib, 0), 12)));\n});\nif (breathe) document.querySelectorAll(\".ga-ledger, .ga-prow, .ga-feature, .ga-lid, .eael-grid-post\").forEach(function (card) {\nif (isMine(card) || card.closest(\".ga-rows\") || card.hasAttribute(\"data-ga-card\")) return;\ncard.setAttribute(\"data-ga-card\", \"1\");\ncard.classList.add(\"ga-card-x\");\nvar t = null;\n[\".ga-card-title .elementor-heading-title\", \".eael-entry-title\", \"h3.elementor-heading-title\", \"h2.elementor-heading-title\"].some(function (q) { t = card.querySelector(q); return !!t; });\nif (t && !t.querySelector(\".ga-card-ul\")) {\nif (window.getComputedStyle(t).position === \"static\") t.style.position = \"relative\";\nvar ul = document.createElement(\"i\");\nul.className = \"ga-card-ul\";\nul.setAttribute(\"aria-hidden\", \"true\");\nt.appendChild(ul);\n}\n});\ndocument.querySelectorAll(\"a.ga-btn, .ga-ch-btn, .ga-card-x a\").forEach(function (a) {\nif (isMine(a) || a.querySelector(\".ga-arw, .ga-card-arw\") || !document.createTreeWalker) return;\nvar walk = document.createTreeWalker(a, 4, null), tn, hit = null;\nwhile ((tn = walk.nextNode())) { if (\/\u2192\\s*$\/.test(tn.nodeValue)) hit = tn; }\nif (!hit) return;\nvar i = hit.nodeValue.lastIndexOf(\"\u2192\");\nvar tail = hit.splitText(i);\ntail.nodeValue = tail.nodeValue.replace(\/\\s+$\/, \"\");\nvar s = document.createElement(\"span\");\ns.className = a.classList.contains(\"ga-btn\") || a.classList.contains(\"ga-ch-btn\") ? \"ga-arw\" : \"ga-card-arw\";\ns.setAttribute(\"aria-hidden\", \"true\");\nvar host = tail.parentNode;\nhost.replaceChild(s, tail);\ns.appendChild(tail);\nif (host === a && \/flex|grid\/.test(window.getComputedStyle(a).display)) {\nvar lbl = document.createElement(\"span\");\nlbl.className = \"ga-lbl\";\nwhile (a.firstChild) lbl.appendChild(a.firstChild);\na.appendChild(lbl);\n}\n});\nvar LIGHT = \".ga-ledger, .ga-prow, .ga-feature, .ga-score, .eael-grid-post-holder, .ga-board-row, .ga-pt-prow\";\nfunction glowIn(card) {\nvar g = card.querySelector(\":scope > .ga-glow\");\nif (!g) {\ng = document.createElement(\"i\");\ng.className = \"ga-glow\";\ng.setAttribute(\"aria-hidden\", \"true\");\ncard.insertBefore(g, card.firstChild);\ncard.classList.add(\"ga-glow-host\");\n}\ncard.gaGlow = g;\nreturn g;\n}\nif (breathe && finePointer) {\nvar litGrid = null, litCards = [], rects = null, gx = 0, gy = 0, tx = 0, ty = 0, glowRaf = 0, inGrid = false;\nvar REACH_PX = 380;\nwindow.addEventListener(\"scroll\", function () { rects = null; }, { passive: true });\nwindow.addEventListener(\"resize\", function () { rects = null; });\nvar glowTick = function () {\nglowRaf = 0;\ngx += (tx - gx) * 0.12;\ngy += (ty - gy) * 0.12;\nif (!rects) rects = litCards.map(function (c) { return c.getBoundingClientRect(); });\nfor (var gi = 0; gi < litCards.length; gi++) {\nvar r = rects[gi], g = litCards[gi].gaGlow;\nif (!g || gx < r.left - REACH_PX || gx > r.right + REACH_PX || gy < r.top - REACH_PX || gy > r.bottom + REACH_PX) continue;\ng.style.setProperty(\"--ga-mx\", Math.round(gx - r.left) + \"px\");\ng.style.setProperty(\"--ga-my\", Math.round(gy - r.top) + \"px\");\n}\nif (inGrid || Math.abs(tx - gx) + Math.abs(ty - gy) > 0.5) glowRaf = requestAnimationFrame(glowTick);\n};\ndocument.addEventListener(\"pointermove\", function (e) {\nvar c = e.target && e.target.closest ? e.target.closest(LIGHT) : null;\nif (c && isMine(c)) c = null;\nvar grid = c ? (c.matches(\".eael-grid-post-holder\") ? c.closest(\".eael-post-grid, .eael-post-grid-container\") || c.parentNode : c.parentNode) : null;\ntx = e.clientX; ty = e.clientY;\nif (grid !== litGrid) {\nlitCards.forEach(function (k) { k.classList.remove(\"ga-glow-on\"); });\nlitGrid = grid;\nlitCards = grid ? [].filter.call(grid.querySelectorAll(LIGHT), function (k) { return !isMine(k); }) : [];\nrects = null;\nif (litCards.length) { gx = tx; gy = ty; }\nlitCards.forEach(function (k) { glowIn(k); k.classList.add(\"ga-glow-on\"); });\n}\ninGrid = !!grid;\nif (!glowRaf && litCards.length) glowRaf = requestAnimationFrame(glowTick);\n}, { passive: true });\nroot.addEventListener(\"pointerleave\", function () {\nlitCards.forEach(function (k) { k.classList.remove(\"ga-glow-on\"); });\nlitGrid = null; litCards = []; inGrid = false;\n});\n} else if (breathe) {\ndocument.addEventListener(\"pointerdown\", function (e) {\nvar c = e.target && e.target.closest ? e.target.closest(LIGHT) : null;\nif (!c || isMine(c)) return;\nvar g = glowIn(c);\nvar r = c.getBoundingClientRect();\ng.style.setProperty(\"--ga-mx\", Math.round(e.clientX - r.left) + \"px\");\ng.style.setProperty(\"--ga-my\", Math.round(e.clientY - r.top) + \"px\");\nc.classList.remove(\"ga-bloom\");\nvoid c.offsetWidth;\nc.classList.add(\"ga-bloom\");\nsetTimeout(function () { c.classList.remove(\"ga-bloom\"); }, 560);\n}, { passive: true });\n}\nvar WAIT = \".ga-btn-off, .ga-prog.is-soon, .ga-bs-tile.is-soon, .ga-ch-spine .is-soon, span.ga-ch-btn, .ga-pt-prow.is-soon, .ga-pt-entry.is-soon\";\nif (breathe) {\nvar waitN = new Map();\ndocument.querySelectorAll(WAIT).forEach(function (w) {\nif (isMine(w)) return;\nvar p = w.parentNode, n = waitN.get(p) || 0;\nwaitN.set(p, n + 1);\nw.classList.add(\"ga-wait\");\nw.style.setProperty(\"--ga-wn\", String(n % 8));\nwhileSeen(w);\n});\n}\nvar breathHeads = [].filter.call(document.querySelectorAll(\".she-header-yes\"), function (h) { return !isMine(h); });\nif (breathe && breathHeads.length) {\nvar headY = window.scrollY || window.pageYOffset || 0, headTick = false;\nwindow.addEventListener(\"scroll\", function () {\nif (headTick) return;\nheadTick = true;\nrequestAnimationFrame(function () {\nheadTick = false;\nvar y = window.scrollY || window.pageYOffset || 0, dy = y - headY;\nif (Math.abs(dy) < 8) return;\nheadY = y;\nvar fe = document.activeElement;\nvar focusIn = !!fe && fe !== document.body && fe.matches && fe.matches(\":focus-visible\")\n&& breathHeads.some(function (h) { return h.contains(fe); });\nvar away = dy > 0 && y > 120 && !focusIn && !root.classList.contains(\"ga-menu-open\");\nif (away === root.classList.contains(\"ga-head-away\")) return;\nroot.classList.toggle(\"ga-head-away\", away);\nsetTimeout(function () {\nvar bar = document.querySelector(\".eael-reading-progress-wrap, .ga-read\");\nif (root.classList.contains(\"ga-head-away\")) { if (bar) bar.style.top = \"0px\"; }\nelse onScroll();\n}, 260);\n});\n}, { passive: true });\ndocument.addEventListener(\"focusin\", function (e) {\nvar kb = e.target && e.target.matches && e.target.matches(\":focus-visible\");\nif (kb && breathHeads.some(function (h) { return h.contains(e.target); })) root.classList.remove(\"ga-head-away\");\n});\n}\ndocument.querySelectorAll(\".ga-mnav nav li\").forEach(function (li, li2) {\nli.style.setProperty(\"--ga-li\", String(Math.min(li2, 8)));\n});\nonScroll();\n});\n})();<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-07d7ea0 e-con-full e-flex e-con e-parent\" data-id=\"07d7ea0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-220a6df elementor-widget elementor-widget-html\" data-id=\"220a6df\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style id=\"ga-bs-css\">.ga-bs-bill,.ga-bs-main{position:relative}body{background-color:var(--ga-ink)}.ga-bs-bill{overflow:hidden;color:var(--ga-ink) !important;background-image:var(--ga-sweep) !important;background-size:200% 100% !important;animation:ga-bs-travel 18s linear infinite}@keyframes ga-bs-travel{from{background-position:0 0}to{background-position:-200% 0}}.ga-bs-bill::before{content:\"\";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle 60vw at 28% 45%,rgba(248,250,252,.5),rgba(248,250,252,0) 100%);animation:ga-bs-breathe 9s var(--ga-ease-out) infinite alternate}@keyframes ga-bs-breathe{from{transform:scale(1)}to{transform:scale(1.16)}}.ga-bs-bill>.e-con-inner,.ga-bs-bill>.elementor-widget-wrap{position:relative;z-index:2}.ga-bs-billwrap{position:relative;z-index:2}.ga-bs-bill .ga-bs-lab .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;text-transform:uppercase;color:var(--ga-ink) !important}.ga-bs-name .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:150px !important;line-height:.86 !important;letter-spacing:-.05em;color:var(--ga-ink) !important;margin:18px 0 26px}.ga-bs-name i{font-style:normal;display:inline-block}.ga-bs-word{display:inline-block;white-space:nowrap}html.ga-bs-on .ga-bs-name i{clip-path:inset(0 100% 0 0);transition:clip-path var(--ga-t-reveal) var(--ga-ease-reveal);transition-delay:var(--ga-delay,0ms)}html.ga-bs-on .ga-bs-name.is-in i{clip-path:inset(0 0 0 0)}.ga-bs-lt{flex:1 1 auto !important;min-width:0 !important}.ga-bs-lede{max-width:620px !important}.ga-bs-date{text-align:right}.ga-bs-lede,.ga-bs-lede p{font-family:var(--ga-body) !important;font-weight:400 !important;font-size:19px !important;line-height:30px !important;color:var(--ga-ink) !important;margin:0}.ga-bs-date .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:64px !important;line-height:.9 !important;letter-spacing:-.04em;color:var(--ga-ink) !important;font-variant-numeric:tabular-nums}.ga-bs-bill .ga-section-title .elementor-heading-title::after,.ga-bs-tile .elementor-heading-title::after{display:none !important}.ga-bs-date .ga-bs-from{display:block;font-family:var(--ga-mono);font-weight:700;font-size:12px;line-height:1;letter-spacing:3px;margin-bottom:12px}.ga-bs-stamp .elementor-heading-title{display:inline-block;background:var(--ga-ink);color:var(--ga-peach) !important;font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:14px !important;line-height:1 !important;letter-spacing:2px;padding:16px 26px;border-radius:22px}@media (min-width:768px){.ga-bs-stamp{position:absolute;right:20px;top:0;width:auto !important;z-index:4}}.ga-bs-sq img{display:block;width:100%;aspect-ratio:1 \/ 1;object-fit:cover;box-shadow:inset 0 0 0 1px rgba(6,8,19,.25)}.ga-bs-rt{flex:0 0 auto !important;width:auto !important;max-width:none !important;align-items:flex-end !important;gap:0 !important}.ga-bs-sq{width:200px !important;max-width:200px !important;margin:0 0 24px !important}@media (max-width:767px){.ga-bs-billwrap>.e-con-inner,.ga-bs-billwrap{flex-direction:column !important}.ga-bs-lt,.ga-bs-rt{display:contents !important}.ga-bs-billwrap .ga-bs-lab{order:1}.ga-bs-billwrap .ga-bs-name{order:2}.ga-bs-billwrap .ga-bs-sq{order:3;margin:4px 0 24px !important}.ga-bs-billwrap .ga-bs-lede{order:4}.ga-bs-billwrap .ga-bs-date{order:5;margin-top:26px !important}}html.ga-bs-on .ga-bs-stamp .elementor-heading-title{opacity:0}html.ga-bs-on .ga-bs-stamp.is-in .elementor-heading-title{animation:ga-bs-stamp .55s var(--ga-ease-out) both}@keyframes ga-bs-stamp{from{opacity:0;transform:scale(1.6)}60%{opacity:1;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ga-bs-pull{position:relative;padding-left:26px;margin:96px 0 0;max-width:860px}.ga-bs-pull::before{content:\"\";position:absolute;left:0;top:2px;bottom:2px;width:2px;background:linear-gradient(180deg,var(--ga-peach),var(--ga-lilac))}.ga-bs-pull,.ga-bs-pull p{font-family:var(--ga-body) !important;font-weight:300 !important;font-size:22px !important;line-height:33px !important;color:var(--ga-ghost) !important}.ga-bs-pull p{margin:0}.ga-bs-pull w{display:inline-block;margin-right:.28em}html.ga-bs-on .ga-bs-pull w{opacity:0;transform:translateY(18px);transition:opacity var(--ga-t-reveal) var(--ga-ease-reveal),transform var(--ga-t-reveal) var(--ga-ease-reveal);transition-delay:var(--ga-delay,0ms)}html.ga-bs-on .ga-bs-pull.is-in w{opacity:1;transform:none}.ga-bs-caret{display:inline-block;width:3px;height:1em;vertical-align:-.15em;margin-left:4px;background:var(--ga-ramp);animation:ga-bs-blink .8s steps(1) infinite}@keyframes ga-bs-blink{50%{opacity:0}}.ga-bs-terms{gap:28px !important;margin:28px 0 0 !important}.ga-bs-term{border-top:1px solid rgba(253,186,116,.45);padding-top:16px !important;gap:10px !important}.ga-bs-term-l .elementor-heading-title{display:inline-block;font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;text-transform:uppercase;color:var(--ga-peach) !important;border:1px solid rgba(253,186,116,.5);padding:9px 12px}html.ga-bs-on .ga-bs-term-l .elementor-heading-title{opacity:0}html.ga-js .is-in>.ga-bs-term-l .elementor-heading-title,html.ga-bs-on .ga-bs-term.is-in .ga-bs-term-l .elementor-heading-title{animation:ga-bs-flat .5s var(--ga-ease-out) both;animation-delay:var(--ga-delay,0ms)}@keyframes ga-bs-flat{from{opacity:0;transform:scale(1.45)}60%{opacity:1;transform:scale(.97)}to{opacity:1;transform:none}}.ga-bs-term-b,.ga-bs-term-b p{font-family:var(--ga-body) !important;font-weight:300 !important;font-size:15px !important;line-height:24px !important;color:var(--ga-ghost) !important;margin:0}.ga-bs-intro,.ga-bs-intro p{font-family:var(--ga-body) !important;font-weight:400 !important;font-size:16px !important;line-height:30px !important;color:var(--ga-ghost) !important}.ga-bs-intro{max-width:860px;margin:56px 0 0 !important}.ga-bs-intro p + p{margin-top:18px}.ga-bs-sub .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:32px !important;line-height:1.1 !important;letter-spacing:-.02em;color:var(--ga-peach) !important}.ga-bs-sub{margin:72px 0 0 !important}.ga-bs-tiles{display:grid !important;grid-template-columns:repeat(3,1fr);gap:22px !important;margin:28px 0 0 !important;align-items:stretch}.ga-bs-tiles>.e-con,.ga-bs-tiles>.elementor-widget-wrap{width:auto !important}.ga-bs-tile{position:relative;overflow:hidden;border:1px solid rgba(104,118,138,.45);padding:34px 34px 30px !important;gap:0 !important;justify-content:space-between !important;transition:border-color var(--ga-t-base) var(--ga-ease-out),color var(--ga-t-base) var(--ga-ease-out)}html.ga-bs-on .ga-bs-tile{opacity:0;transform:translateY(28px);transition:opacity var(--ga-t-reveal) var(--ga-ease-reveal),transform var(--ga-t-reveal) var(--ga-ease-reveal),border-color var(--ga-t-base) var(--ga-ease-out);transition-delay:var(--ga-delay,0ms)}html.ga-bs-on .ga-bs-tile.is-in{opacity:1;transform:none}.ga-bs-num .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:72px !important;line-height:.86 !important;letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:var(--ga-ramp);-webkit-background-clip:text;background-clip:text;color:transparent !important;-webkit-text-fill-color:transparent}.ga-bs-t .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:22px !important;line-height:1.18 !important;letter-spacing:-.02em;color:var(--ga-ghost) !important;margin:16px 0 10px}.ga-bs-s,.ga-bs-s p{font-family:var(--ga-body) !important;font-weight:300 !important;font-size:15px !important;line-height:24px !important;color:var(--ga-ghost) !important;margin:0}.ga-bs-read .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:12px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-peach) !important;margin-top:24px;display:block}.ga-bs-read .elementor-heading-title a{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:20px;color:var(--ga-peach);text-decoration:none;box-shadow:inset 0 0 0 1px var(--ga-peach);transition:background-image var(--ga-t-base) var(--ga-ease-out),color var(--ga-t-base) var(--ga-ease-out)}.ga-bs-read .elementor-heading-title a::after{content:\"\u2192\"}.ga-bs-read .elementor-heading-title a:hover,.ga-bs-read .elementor-heading-title a:active,.ga-bs-read .elementor-heading-title a:focus-visible{background-image:var(--ga-ramp);color:var(--ga-ink);box-shadow:inset 0 0 0 1px transparent}.ga-bs-tile.is-live:hover .ga-bs-read .elementor-heading-title a,.ga-bs-tile.is-live:active .ga-bs-read .elementor-heading-title a,.ga-bs-tile.is-live.is-pressed .ga-bs-read .elementor-heading-title a,.ga-bs-tile.is-live.is-sel .ga-bs-read .elementor-heading-title a,.ga-bs-tile.is-live:focus-within .ga-bs-read .elementor-heading-title a{color:var(--ga-ink);box-shadow:inset 0 0 0 1px var(--ga-ink);background-image:none}.ga-bs-read b,.ga-bs-read em{font:inherit;font-style:normal}.ga-bs-read a em{display:none}.ga-bs-read span[data-ga-live] b{display:none}.ga-bs-tile.is-soon{border-color:transparent;opacity:.62}html.ga-bs-on .ga-bs-tile.is-soon.is-in{opacity:.62}.ga-bs-tile.is-soon::after{content:\"\";position:absolute;inset:0;pointer-events:none;border:2px dashed rgba(104,118,138,.8)}html.ga-bs-on .ga-bs-tile.is-soon::after{clip-path:inset(0 100% 0 0);transition:clip-path 900ms var(--ga-ease-reveal);transition-delay:calc(var(--ga-delay,0ms) + 200ms)}html.ga-bs-on .ga-bs-tile.is-soon.is-in::after{clip-path:inset(0 0 0 0)}.ga-bs-tile.is-live:hover,.ga-bs-tile.is-live:active,.ga-bs-tile.is-live.is-pressed,.ga-bs-tile.is-live.is-sel,.ga-bs-tile.is-live:focus-within{border-color:transparent;color:var(--ga-ink) !important}.ga-bs-tile.is-live::before{content:\"\";position:absolute;inset:0;z-index:0;opacity:0;background-image:var(--ga-sweep);background-size:200% 100%;transition:opacity var(--ga-t-base) var(--ga-ease-out)}.ga-bs-tile.is-live:hover::before,.ga-bs-tile.is-live:active::before,.ga-bs-tile.is-live.is-pressed::before,.ga-bs-tile.is-live.is-sel::before,.ga-bs-tile.is-live:focus-within::before{opacity:1;animation:ga-bs-travel 6s linear infinite}.ga-bs-tile>*{position:relative;z-index:1}.ga-bs-tile.is-live:hover .elementor-heading-title,.ga-bs-tile.is-live:hover p,.ga-bs-tile.is-live:active .elementor-heading-title,.ga-bs-tile.is-live:active p,.ga-bs-tile.is-live.is-pressed .elementor-heading-title,.ga-bs-tile.is-live.is-pressed p,.ga-bs-tile.is-live.is-sel .elementor-heading-title,.ga-bs-tile.is-live.is-sel p,.ga-bs-tile.is-live:focus-within .elementor-heading-title,.ga-bs-tile.is-live:focus-within p{color:var(--ga-ink) !important}.ga-bs-tile.is-live:hover .ga-bs-num .elementor-heading-title,.ga-bs-tile.is-live:active .ga-bs-num .elementor-heading-title,.ga-bs-tile.is-live.is-pressed .ga-bs-num .elementor-heading-title,.ga-bs-tile.is-live.is-sel .ga-bs-num .elementor-heading-title,.ga-bs-tile.is-live:focus-within .ga-bs-num .elementor-heading-title{background:none;-webkit-text-fill-color:var(--ga-ink);color:var(--ga-ink) !important}.ga-bs-tile a.ga-bs-hit{position:absolute;inset:0;z-index:2}.ga-bs-tiles>.ga-bs-tile.is-last-wide{grid-column:1 \/ -1}.ga-bs-plate{position:relative;overflow:hidden;margin:72px 0 !important;border:1px solid rgba(253,186,116,.5);padding:56px 64px !important}.ga-bs-plate .ga-bs-lab .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:20px !important;line-height:1.1 !important;letter-spacing:3px;text-transform:uppercase;color:var(--ga-peach) !important}.ga-bs-p,.ga-bs-p p{font-family:var(--ga-body) !important;font-weight:400 !important;font-size:19px !important;line-height:30px !important;color:var(--ga-ghost) !important;margin:18px 0 0}.ga-bs-over{position:absolute;inset:0;z-index:3;background:var(--ga-peach);padding:56px 64px;pointer-events:none;clip-path:inset(0 100% 0 0);transition:clip-path 700ms var(--ga-ease-reveal)}.ga-bs-plate.is-in .ga-bs-over{clip-path:inset(0 0 0 0)}.ga-bs-over>*,.ga-bs-over .e-con-inner,.ga-bs-over .elementor-widget-wrap{padding:0 !important;margin:0 !important;width:100% !important;max-width:none !important}.ga-bs-over .ga-bs-lab .elementor-heading-title,.ga-bs-over .ga-bs-p,.ga-bs-over .ga-bs-p p{color:var(--ga-ink) !important}.ga-bs-over::after{content:\"\";position:absolute;right:0;top:0;bottom:0;width:6px;background:var(--ga-ink);opacity:.9;transition:opacity var(--ga-t-base) var(--ga-ease-out) 640ms}.ga-bs-plate.is-in .ga-bs-over::after{opacity:0}.ga-bs-prog{position:fixed;left:24px;top:140px;bottom:140px;width:44px;z-index:5;opacity:0;pointer-events:none;transition:opacity var(--ga-t-base) var(--ga-ease-out)}.ga-bs-prog.is-on{opacity:1}.ga-bs-prog .ga-bs-track{position:absolute;left:21px;top:0;bottom:0;width:2px;background:rgba(104,118,138,.35)}.ga-bs-prog .ga-bs-fill{position:absolute;left:21px;top:0;width:2px;height:0;background:var(--ga-ramp);transition:height var(--ga-t-fast) linear}.ga-bs-prog i{position:absolute;left:14px;top:var(--at);width:16px;height:2px;background:var(--ga-steel);transition:background var(--ga-t-base) var(--ga-ease-out),width var(--ga-t-base) var(--ga-ease-out),left var(--ga-t-base) var(--ga-ease-out)}.ga-bs-prog i.is-done{background:var(--ga-peach)}.ga-bs-prog i.is-at{left:9px;width:26px;background:var(--ga-ghost)}.ga-bs-prog i b{position:absolute;left:34px;top:-6px;font-family:var(--ga-mono);font-weight:700;font-size:11px;line-height:1;letter-spacing:1px;color:var(--ga-ghost);white-space:nowrap;opacity:0;transition:opacity var(--ga-t-base) var(--ga-ease-out)}.ga-bs-prog i.is-at b{opacity:1}@media (max-width:767px){.ga-bs-name .elementor-heading-title{font-size:min(96px,20vw) !important;margin:14px 0 20px}.ga-bs-lede,.ga-bs-lede p{font-size:16px !important;line-height:26px !important}.ga-bs-date .elementor-heading-title{font-size:40px !important}.ga-bs-date{text-align:left}.ga-bs-stamp .elementor-heading-title{font-size:12px !important;padding:12px 18px}.ga-bs-pull,.ga-bs-pull p{font-size:19px !important;line-height:27px !important}.ga-bs-pull{padding-left:18px;margin-top:56px}.ga-bs-terms{gap:22px !important;margin-top:32px !important}.ga-bs-terms .ga-bs-term{width:100% !important}.ga-bs-intro{margin-top:40px !important}.ga-bs-sub{margin-top:52px !important}.ga-bs-sub .elementor-heading-title{font-size:28px !important}.ga-bs-tiles{grid-template-columns:1fr;gap:14px !important}.ga-bs-tile{padding:22px 20px 18px !important}.ga-bs-num .elementor-heading-title{font-size:48px !important}.ga-bs-t .elementor-heading-title{font-size:20px !important;margin:12px 0 8px}.ga-bs-plate{padding:28px 20px !important;margin:48px 0 !important}.ga-bs-plate .ga-bs-lab .elementor-heading-title{font-size:16px !important;letter-spacing:2.5px}.ga-bs-over{padding:28px 20px;transition-duration:360ms}.ga-bs-over::after{transition-delay:320ms}.ga-bs-p,.ga-bs-p p{font-size:16px !important;line-height:26px !important}.ga-bs-prog{left:0;right:0;top:0;bottom:auto;width:auto;height:12px}.ga-bs-prog .ga-bs-track{left:0;right:0;top:0;bottom:auto;width:auto;height:2px}.ga-bs-prog .ga-bs-fill{left:0;top:0;height:2px;width:0;transition:width var(--ga-t-fast) linear}.ga-bs-prog i{left:var(--at);top:0;width:2px;height:8px;margin-left:-1px}.ga-bs-prog i.is-at{left:var(--at);width:2px;height:12px}.ga-bs-prog i b{display:none}}@media (prefers-reduced-motion:reduce){html.ga-bs-on .ga-bs-name i,html.ga-bs-on .ga-bs-tile.is-soon::after{clip-path:inset(0 0 0 0) !important}html.ga-bs-on .ga-bs-pull w{opacity:1 !important;transform:none !important}html.ga-bs-on .ga-bs-tile{opacity:1 !important;transform:none !important}html.ga-bs-on .ga-bs-tile.is-soon{opacity:.62 !important}html.ga-bs-on .ga-bs-stamp .elementor-heading-title{opacity:1 !important}html.ga-bs-on .ga-bs-term-l .elementor-heading-title{opacity:1 !important}.ga-bs-bill,.ga-bs-bill::before{animation:none !important}.ga-bs-caret{animation:none !important}}<\/style>\n<script id=\"ga-bs-js\">(function () {\nvar root = document.documentElement;\nroot.classList.add(\"ga-js\");\nroot.classList.add(\"ga-bs-on\");\nvar TOUCH = window.matchMedia && window.matchMedia(\"(hover: none)\").matches;\nvar STEP = 60;\nvar WORD = 40;\nfunction ready(fn) {\nif (document.readyState !== \"loading\") fn();\nelse document.addEventListener(\"DOMContentLoaded\", fn);\n}\nfunction txt(el) { return (el && el.textContent || \"\").trim(); }\nfunction ease(t) { return 1 - Math.pow(1 - t, 3); }\nready(function () {\nif (!document.querySelector(\".ga-bs-bill\")) { root.classList.remove(\"ga-bs-on\"); return; }\ntry { setup(); } catch (e) {\nroot.classList.remove(\"ga-bs-on\");\nthrow e;\n}\n});\nfunction setup() {\nvar reduced = window.matchMedia && window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\nvar pending = [];\nfunction onIn(el, fn) {\nif (!el) return;\nif (!(\"IntersectionObserver\" in window)) { fn(); return; }\npending.push({ el: el, fn: fn });\n}\nvar name = document.querySelector(\".ga-bs-name .elementor-heading-title\");\nif (name && !name.querySelector(\"i\")) {\nvar words = txt(name).split(\" \");\nname.textContent = \"\";\nvar n = 0;\nwords.forEach(function (w, wi) {\nif (wi) name.appendChild(document.createTextNode(\" \"));\nvar box = document.createElement(\"span\");\nbox.className = \"ga-bs-word\";\nw.split(\"\").forEach(function (c) {\nvar g = document.createElement(\"i\");\ng.textContent = c;\ng.style.setProperty(\"--ga-delay\", (n++ * STEP) + \"ms\");\nbox.appendChild(g);\n});\nname.appendChild(box);\n});\n}\nfunction fitName() {\nif (!name) return;\nvar boxes = name.querySelectorAll(\".ga-bs-word\");\nif (!boxes.length) return;\nname.style.fontSize = \"\";\nvar avail = name.clientWidth;\nif (!avail) return;\nvar widest = 0;\nfor (var i = 0; i < boxes.length; i++) {\nvar w = boxes[i].getBoundingClientRect().width;\nif (w > widest) widest = w;\n}\nif (!widest || widest <= avail) return;\nvar base = parseFloat(window.getComputedStyle(name).fontSize);\nif (!base) return;\nname.style.fontSize = Math.floor(base * (avail \/ widest)) + \"px\";\n}\nfitName();\nvar fitT;\nwindow.addEventListener(\"resize\", function () {\nclearTimeout(fitT);\nfitT = setTimeout(fitName, 120);\n});\nvar dateEl = document.querySelector(\".ga-bs-date .elementor-heading-title\");\nvar from = dateEl && dateEl.querySelector(\".ga-bs-from\");\nif (dateEl) {\nvar whole = txt(dateEl).replace(txt(from), \"\").trim();\nvar parts = whole.match(\/(\\d{1,2})-(\\d{1,2})-(\\d{4})\/);\nif (parts && !reduced) {\nvar d = +parts[1], m = +parts[2], y = +parts[3];\nvar slot = document.createElement(\"span\");\nslot.textContent = whole;\ndateEl.textContent = \"\";\nif (from) dateEl.appendChild(from);\ndateEl.appendChild(slot);\nvar t0 = null, DUR = 900;\nvar run = function (now) {\nif (t0 === null) t0 = now;\nvar p = ease(Math.min(1, (now - t0) \/ DUR));\nslot.textContent = Math.max(1, Math.round(p * d)) + \"-\" +\nMath.max(1, Math.round(p * m)) + \"-\" +\n(2000 + Math.round(p * (y - 2000)));\nif (p < 1) requestAnimationFrame(run);\nelse slot.textContent = whole;\n};\nonIn(dateEl.closest(\".ga-bs-date\") || dateEl, function () { requestAnimationFrame(run); });\n}\n}\nvar pull = document.querySelector(\".ga-bs-pull\");\nvar pullP = pull && (pull.querySelector(\"p\") || pull);\nif (pullP && !pullP.querySelector(\"w\")) {\nvar words = txt(pullP).split(\/\\s+\/).filter(Boolean);\npullP.textContent = \"\";\nvar cap = (window.innerWidth <= 800) ? 560 : 900;\nvar step = Math.min(WORD, cap \/ Math.max(1, words.length - 1));\nwords.forEach(function (w, i) {\nvar el = document.createElement(\"w\");\nel.textContent = w;\nel.style.setProperty(\"--ga-delay\", Math.round(i * step) + \"ms\");\npullP.appendChild(el);\n});\nvar caret = document.createElement(\"span\");\ncaret.className = \"ga-bs-caret\";\npullP.appendChild(caret);\n}\n[].slice.call(document.querySelectorAll(\".ga-bs-term\")).forEach(function (t, i) {\nt.style.setProperty(\"--ga-delay\", (i * 120) + \"ms\");\n});\nvar tiles = [].slice.call(document.querySelectorAll(\".ga-bs-tile\"));\nvar live = 0;\ntiles.forEach(function (tile, i) {\ntile.style.setProperty(\"--ga-delay\", (i * STEP) + \"ms\");\nvar link = tile.querySelector(\"a[href]\");\nif (link && link.getAttribute(\"href\") && link.getAttribute(\"href\") !== \"#\") {\ntile.classList.add(\"is-live\");\nlive++;\nif (TOUCH) {\ntile.addEventListener(\"click\", function (e) {\nif (e.target.closest(\"a[href]\")) return;\ntiles.forEach(function (o) { o.classList.remove(\"is-sel\"); });\ntile.classList.add(\"is-sel\");\n});\n} else {\nif (!tile.querySelector(\".ga-bs-hit\")) {\nvar hit = document.createElement(\"a\");\nhit.className = \"ga-bs-hit\";\nhit.setAttribute(\"href\", link.getAttribute(\"href\"));\nhit.setAttribute(\"aria-label\", txt(tile.querySelector(\".ga-bs-t\")));\nhit.setAttribute(\"tabindex\", \"-1\");\ntile.appendChild(hit);\n}\nvar press = function (on) { tile.classList.toggle(\"is-pressed\", on); };\ntile.addEventListener(\"pointerdown\", function () { press(true); });\n[\"pointerup\", \"pointercancel\", \"pointerleave\"].forEach(function (ev) {\ntile.addEventListener(ev, function () { press(false); });\n});\n}\n} else {\ntile.classList.add(\"is-soon\");\n}\nvar num = tile.querySelector(\".ga-bs-num .elementor-heading-title\");\nif (num && !reduced) {\nvar to = parseInt(txt(num), 10);\nif (!isNaN(to)) {\nnum.textContent = \"00\";\nonIn(tile, function () {\nvar s = null, D = 700;\nvar settle = function () { num.textContent = String(to).replace(\/^(\\d)$\/, \"0$1\"); };\nvar run = function (now) {\nif (s === null) s = now;\nvar p = ease(Math.min(1, (now - s) \/ D));\nnum.textContent = String(Math.round(p * to)).replace(\/^(\\d)$\/, \"0$1\");\nif (p < 1) requestAnimationFrame(run);\nelse settle();\n};\nsetTimeout(function () { requestAnimationFrame(run); }, i * STEP);\nsetTimeout(settle, i * STEP + D + 80);\n});\n}\n}\n});\nif (tiles.length % 3 === 1 && tiles.length > 3) {\ntiles[tiles.length - 1].classList.add(\"is-last-wide\");\n}\nvar stamp = document.querySelector(\".ga-bs-stamp .elementor-heading-title\");\nif (stamp && tiles.length) {\nstamp.textContent = live + \" OF \" + tiles.length + \" LIVE\";\n}\nvar plate = document.querySelector(\".ga-bs-plate\");\nif (plate && !plate.querySelector(\".ga-bs-over\")) {\nvar over = document.createElement(\"div\");\nover.className = \"ga-bs-over\";\nover.setAttribute(\"aria-hidden\", \"true\");\n[].slice.call(plate.children).forEach(function (c) {\nvar copy = c.cloneNode(true);\ncopy.removeAttribute(\"id\");\n[].slice.call(copy.querySelectorAll(\"[id]\")).forEach(function (n) { n.removeAttribute(\"id\"); });\nover.appendChild(copy);\n});\nplate.appendChild(over);\n}\nvar prog = null;\nif (tiles.length) {\nprog = document.createElement(\"div\");\nprog.className = \"ga-bs-prog\";\nprog.setAttribute(\"aria-hidden\", \"true\");\nprog.innerHTML = '<span class=\"ga-bs-track\"><\/span><span class=\"ga-bs-fill\"><\/span>';\ntiles.forEach(function (tile, i) {\nvar tick = document.createElement(\"i\");\nvar at = tiles.length === 1 ? 0 : (i \/ (tiles.length - 1)) * 100;\ntick.style.setProperty(\"--at\", at + \"%\");\nvar b = document.createElement(\"b\");\nb.textContent = String(i + 1).replace(\/^(\\d)$\/, \"0$1\");\ntick.appendChild(b);\nprog.appendChild(tick);\n});\ndocument.body.appendChild(prog);\n}\nvar fill = prog && prog.querySelector(\".ga-bs-fill\");\nvar ticks = prog ? [].slice.call(prog.querySelectorAll(\"i\")) : [];\nvar bill = document.querySelector(\".ga-bs-bill\");\nvar raf = 0;\nfunction onScroll() {\nif (raf) return;\nraf = requestAnimationFrame(function () {\nraf = 0;\nif (!prog) return;\nvar max = document.documentElement.scrollHeight - window.innerHeight;\nvar p = max > 0 ? Math.min(1, Math.max(0, window.pageYOffset \/ max)) : 0;\nvar past = bill ? window.pageYOffset > (bill.offsetTop + bill.offsetHeight - 120) : true;\nprog.classList.toggle(\"is-on\", past && p < .995);\nif (fill) {\nif (window.matchMedia(\"(max-width: 767px)\").matches) fill.style.width = (p * 100) + \"%\";\nelse fill.style.height = (p * 100) + \"%\";\n}\nvar mid = window.pageYOffset + window.innerHeight \/ 2, near = -1, best = Infinity;\ntiles.forEach(function (tile, i) {\nvar r = tile.getBoundingClientRect();\nvar top = r.top + window.pageYOffset;\nvar d = Math.abs(top + r.height \/ 2 - mid);\nif (d < best) { best = d; near = i; }\nif (ticks[i]) ticks[i].classList.toggle(\"is-done\", top < mid);\n});\nticks.forEach(function (t, i) { t.classList.toggle(\"is-at\", i === near); });\n});\n}\nwindow.addEventListener(\"scroll\", onScroll, { passive: true });\nwindow.addEventListener(\"resize\", onScroll);\nvar marks = [\".ga-bs-name\", \".ga-bs-stamp\", \".ga-bs-pull\", \".ga-bs-term\", \".ga-bs-tile\", \".ga-bs-plate\"];\nvar watch = [];\nmarks.forEach(function (sel) {\n[].slice.call(document.querySelectorAll(sel)).forEach(function (el) { watch.push(el); });\n});\npending.forEach(function (p) { if (watch.indexOf(p.el) === -1) watch.push(p.el); });\nif (!(\"IntersectionObserver\" in window)) {\nwatch.forEach(function (el) { el.classList.add(\"is-in\"); });\n} else {\nvar io = new IntersectionObserver(function (entries) {\nentries.forEach(function (e) {\nif (!e.isIntersecting) return;\ne.target.classList.add(\"is-in\");\nio.unobserve(e.target);\npending = pending.filter(function (p) {\nif (p.el === e.target || e.target.contains(p.el)) { p.fn(); return false; }\nreturn true;\n});\n});\n}, { rootMargin: \"0px 0px -12% 0px\", threshold: 0.08 });\nwatch.forEach(function (el) { io.observe(el); });\n}\nonScroll();\n}\n})();<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d837ae8 e-con-full e-flex e-con e-parent\" data-id=\"d837ae8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-43f47b9 elementor-widget elementor-widget-html\" data-id=\"43f47b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style id=\"ga-pt-css\">.ga-pt,.ga-pt-main{position:relative}body{background-color:var(--ga-ink)}.ga-pt-lab .elementor-heading-title,.ga-pt-lab{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;text-transform:uppercase;color:var(--ga-peach) !important}.ga-pt-sub .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:32px !important;line-height:36px !important;letter-spacing:-.6px;color:var(--ga-peach) !important}.ga-pt-meta .elementor-heading-title,.ga-pt-meta{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:16px !important;letter-spacing:2px;color:var(--ga-steel-text) !important}.ga-pt-prose,.ga-pt-prose p{font-family:var(--ga-body) !important;font-weight:400 !important;font-size:17px !important;line-height:29px !important;color:var(--ga-ghost) !important;margin:0}.ga-pt-prose p + p{margin-top:18px}.ga-pt-main>.e-con + .e-con,.ga-pt-main>.e-con + .elementor-widget,.ga-pt-main>.elementor-widget + .e-con,.ga-pt-main>.elementor-widget + .elementor-widget,.ga-pt-main>.e-con-inner>.e-con + .e-con,.ga-pt-main>.e-con-inner>.e-con + .elementor-widget,.ga-pt-main>.e-con-inner>.elementor-widget + .e-con,.ga-pt-main>.e-con-inner>.elementor-widget + .elementor-widget{margin-top:56px}.ga-pt-main>.ga-pt-headrow + .e-con,.ga-pt-main>.e-con-inner>.ga-pt-headrow + .e-con{margin-top:22px}.ga-pt-headrow,.ga-pt-metarow{flex-direction:row !important;flex-wrap:wrap !important}.ga-pt-headrow{justify-content:space-between !important;align-items:flex-end !important}.ga-pt-headrow>.e-con,.ga-pt-headrow>.elementor-widget,.ga-pt-metarow>.e-con{width:auto !important;flex:0 0 auto}.ga-pt-titlepage{align-items:center !important}.ga-pt-after{align-items:flex-end !important}.ga-pt-ms>.e-con + .e-con,.ga-pt-ms>.e-con + .elementor-widget,.ga-pt-ms>.elementor-widget + .e-con,.ga-pt-ms>.elementor-widget + .elementor-widget{margin-top:40px}.ga-pt-ms>.ga-pt-entry,.ga-pt-ms>.ga-pt-rulewrap{margin-top:0 !important}.ga-pt-credits{padding-top:40px}html.ga-pt-on .ga-pt-up{opacity:0;transform:translateY(24px);transition:opacity var(--ga-t-reveal) var(--ga-ease-reveal),transform var(--ga-t-reveal) var(--ga-ease-reveal);transition-delay:var(--ga-delay,0ms)}html.ga-pt-on .ga-pt-up.is-in{opacity:1;transform:none}.ga-pt-letterbox{position:relative;overflow:hidden;padding:60px 0 !important;background-color:var(--ga-ink) !important}.ga-pt-still{position:relative;overflow:hidden;min-height:540px;background-color:var(--ga-surface-raised,#0B0E1C) !important;display:flex !important;flex-direction:column !important;justify-content:flex-end !important;align-items:flex-start !important;padding:0 150px 56px !important}.ga-pt-still::before,.ga-pt-still::after{content:\"\";position:absolute;pointer-events:none;z-index:0}.ga-pt-still::before{left:-14%;top:-22%;width:84%;height:165%;background:radial-gradient(circle closest-side,rgba(221,153,221,.28) 0%,rgba(221,153,221,.15) 32%,rgba(221,153,221,.05) 56%,rgba(221,153,221,.01) 70%,rgba(221,153,221,0) 82%);animation:ga-pt-breathe 11s var(--ga-ease-out) infinite alternate}.ga-pt-still::after{right:-6%;top:24%;width:62%;height:120%;background:radial-gradient(circle closest-side,rgba(253,186,116,.18) 0%,rgba(253,186,116,.10) 32%,rgba(253,186,116,.035) 56%,rgba(253,186,116,.01) 70%,rgba(253,186,116,0) 82%);animation:ga-pt-breathe 9s var(--ga-ease-out) 1.5s infinite alternate}@keyframes ga-pt-breathe{from{transform:scale(1)}to{transform:scale(1.14)}}.ga-pt-still>*{position:relative;z-index:2}.ga-pt-letterbox--season{padding:0 !important}.ga-pt-still--split{display:block !important;padding:0 !important;min-height:0 !important}.ga-pt-herorow{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:stretch !important;gap:0 !important;width:100%}.ga-pt-cover{position:relative;flex:0 0 38% !important;width:38% !important;display:block !important}.ga-pt-cover::after{content:\"\";position:absolute;z-index:3;top:0;bottom:0;right:0;width:4px;background:var(--ga-ramp)}.ga-pt-cover>.elementor-widget-image{width:100% !important}.ga-pt-cover .elementor-widget-image .elementor-widget-container{width:100%;line-height:0}.ga-pt-cover .elementor-widget-image img{display:block;width:100% !important;height:auto !important;aspect-ratio:1 \/ 1;object-fit:cover}.ga-pt-heroside{flex:1 1 420px !important;min-width:0;display:flex !important;flex-direction:column !important;justify-content:center !important;align-items:flex-start !important;padding:48px 80px 48px 72px !important}.ga-pt-still--split .ga-pt-heroside{position:relative;overflow:hidden;isolation:isolate}.ga-pt-still--split .ga-pt-heroside>*{position:relative;z-index:1}.ga-pt-still--split .ga-pt-heroside::before{content:var(--ga-pt-year,\"2026\");position:absolute;z-index:0;left:20px;top:auto;bottom:-0.13em;height:auto;font-family:var(--ga-sora);font-weight:800;font-size:clamp(200px,27.3vw,560px);line-height:0.78;letter-spacing:-0.034em;white-space:nowrap;background-image:var(--ga-ramp);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;opacity:0.13;pointer-events:none}.ga-pt-titleline{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:baseline !important;gap:18px !important}.ga-pt-vol .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:96px !important;line-height:90px !important;letter-spacing:-4px;color:transparent !important;-webkit-text-fill-color:transparent;-webkit-text-stroke:2px var(--ga-peach)}@supports not (-webkit-text-stroke:2px red){.ga-pt-vol .elementor-heading-title{color:var(--ga-peach) !important;-webkit-text-fill-color:currentColor}}.ga-pt-slug{position:absolute !important;left:150px;top:24px;z-index:3;width:auto !important;max-width:none !important}.ga-pt-slug .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:10px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-steel-text) !important;white-space:nowrap}.ga-pt-card .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:96px !important;line-height:90px !important;letter-spacing:-4px;color:var(--ga-ghost) !important}.ga-pt-credit .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2.5px;color:var(--ga-ghost) !important}.ga-pt-cert{border:1px solid var(--ga-peach);display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;gap:0 !important}.ga-pt-cert>.e-con,.ga-pt-cert>div{flex:1 1 0;min-width:150px;padding:16px 24px !important}.ga-pt-cert>.e-con + .e-con{border-left:1px solid rgba(253,186,116,.5)}.ga-pt-cl .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:10px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-steel-text) !important}.ga-pt-cv .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:16px !important;line-height:1 !important;letter-spacing:1px;color:var(--ga-ghost) !important;margin-top:8px}.ga-pt-metarow .ga-pt-cv .elementor-heading-title{font-size:13px !important;margin-top:6px}.ga-pt-cert .ga-pt-cell--first{background:var(--ga-peach)}.ga-pt-cert .ga-pt-cell--first .elementor-heading-title{color:var(--ga-ink) !important}.ga-pt-prog{border-top:1px solid rgba(253,186,116,.6)}.ga-pt-prow{display:flex !important;flex-direction:row !important;align-items:center !important;gap:24px !important;padding:18px 0 !important;border-bottom:1px solid rgba(104,118,138,.35);transition:background-color var(--ga-t-base) var(--ga-ease-out)}.ga-pt-prow .elementor-heading-title{font-family:var(--ga-mono) !important}.ga-pt-prow .ga-pt-week .elementor-heading-title,.ga-pt-prow .ga-pt-date .elementor-heading-title,.ga-pt-prow .ga-pt-run .elementor-heading-title{font-weight:400 !important;font-size:12px !important;line-height:1 !important;letter-spacing:1.5px;color:var(--ga-steel-text) !important}.ga-pt-prow .ga-pt-week{flex:0 0 92px}.ga-pt-prow .ga-pt-date{flex:0 0 150px}.ga-pt-prow .ga-pt-film{flex:1 1 auto}.ga-pt-prow .ga-pt-year{flex:0 0 78px}.ga-pt-prow .ga-pt-run{flex:0 0 110px}.ga-pt-prow .ga-pt-stat{flex:0 0 130px}.ga-pt-prow .ga-pt-film .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:22px !important;line-height:26px !important;letter-spacing:-.4px;color:var(--ga-ghost) !important}.ga-pt-prow .ga-pt-year .elementor-heading-title{font-weight:700 !important;font-size:13px !important;line-height:1 !important;letter-spacing:1px;color:var(--ga-ghost) !important}.ga-pt-prow .ga-pt-stat .elementor-heading-title{font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-steel-text) !important}.ga-pt-prow.is-written .ga-pt-stat .elementor-heading-title{color:var(--ga-peach) !important}.ga-pt-prow.is-soon{opacity:.62}.ga-pt-prow.is-now{border-bottom-color:transparent;padding-left:16px !important;padding-right:16px !important;background-image:var(--ga-sweep);background-size:200% 100%;animation:ga-pt-travel 7s linear infinite}@keyframes ga-pt-travel{from{background-position:0 0}to{background-position:-200% 0}}.ga-pt-prow.is-now .elementor-heading-title{color:var(--ga-ink) !important}.ga-pt-prow.is-written:hover{background-color:rgba(253,186,116,.08)}.ga-pt-prog--scored .ga-pt-run .elementor-heading-title{background:var(--ga-ramp);-webkit-background-clip:text;background-clip:text;color:transparent !important;-webkit-text-fill-color:transparent;font-variant-numeric:tabular-nums}@supports not ((background-clip:text) or (-webkit-background-clip:text)){.ga-pt-prog--scored .ga-pt-run .elementor-heading-title{color:var(--ga-peach) !important;-webkit-text-fill-color:currentColor}}.ga-pt-prog--scored .ga-pt-stat .elementor-heading-title{margin:0 !important;line-height:1 !important}.ga-pt-prog--scored .ga-pt-stat a{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 15px;border-radius:0 14px 14px 0;background-image:var(--ga-ramp);color:var(--ga-ink) !important;text-decoration:none !important;font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:11px !important;line-height:1 !important;letter-spacing:1.4px;transition:filter 220ms cubic-bezier(0,0,.2,1)}.ga-pt-prog--scored .ga-pt-stat a:hover{filter:brightness(1.1)}.ga-pt-prog--scored .ga-pt-stat a:focus-visible{outline:2px solid var(--ga-ghost);outline-offset:2px}@media (prefers-reduced-motion:reduce){.ga-pt-prog--scored .ga-pt-stat a{transition:none}}.ga-pt-note{align-items:flex-start !important}.ga-pt-note .ga-pt-note-l{flex:0 0 360px}.ga-pt-note .ga-pt-note-r{flex:1 1 420px;width:auto !important;max-width:none !important}.ga-pt-note .ga-pt-note-h .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:32px !important;line-height:38px !important;letter-spacing:-.6px;color:var(--ga-ghost) !important}.ga-pt-credits{text-align:center}.ga-pt-credits .elementor-heading-title{font-family:var(--ga-mono) !important;text-align:center}.ga-pt-credits .ga-pt-crl .elementor-heading-title{font-weight:400 !important;font-size:10px !important;line-height:1 !important;letter-spacing:3px;color:var(--ga-steel-text) !important}.ga-pt-credits .ga-pt-crv .elementor-heading-title{font-weight:700 !important;font-size:14px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-ghost) !important;margin:10px 0 26px}.ga-pt-rulewrap{width:100%}.ga-pt-rule{display:block;width:100%;height:2px;background:var(--ga-ramp)}.ga-pt-rule--rev{background:var(--ga-ramp-rev,linear-gradient(90deg,var(--ga-lilac),var(--ga-peach)))}.ga-pt-dash{display:block;width:100%;height:0;border-top:1px dashed rgba(104,118,138,.6)}.ga-pt-titlepage .ga-pt-rulewrap{width:320px}.ga-pt-note-l .ga-pt-rulewrap{width:120px}.ga-pt-report{position:relative;overflow:hidden;background-color:var(--ga-surface-raised,#0B0E1C) !important;background-image:linear-gradient(to right,rgba(104,118,138,.13) 1px,transparent 1px),linear-gradient(to bottom,rgba(104,118,138,.13) 1px,transparent 1px) !important;background-size:80px 80px !important}.ga-pt-title .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:96px !important;line-height:88px !important;letter-spacing:-4px;color:var(--ga-ghost) !important}.ga-pt-question,.ga-pt-question p{font-family:var(--ga-body) !important;font-weight:300 !important;font-size:22px !important;line-height:32px !important;color:var(--ga-ghost) !important;margin:0}.ga-pt-abstract{align-self:flex-start;border:1px solid rgba(253,186,116,.7);background:rgba(6,8,19,.6);padding:28px 30px 30px !important}.ga-pt-abstract .ga-pt-prose,.ga-pt-abstract .ga-pt-prose p{font-size:15px !important;line-height:26px !important}.ga-pt-slates{display:grid !important;grid-template-columns:repeat(4,1fr);gap:22px !important}.ga-pt-slate{background:var(--ga-surface-raised,#0B0E1C);border:1px solid rgba(104,118,138,.4);padding:26px 28px 24px !important}.ga-pt-slate .ga-pt-num .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:96px !important;line-height:84px !important;letter-spacing:-3px;font-variant-numeric:tabular-nums;background:var(--ga-ramp);-webkit-background-clip:text;background-clip:text;color:transparent !important;-webkit-text-fill-color:transparent;margin:14px 0}.ga-pt-slate .ga-pt-unit .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-steel-text) !important}.ga-pt-fig{position:relative}.ga-pt-plot{position:relative;height:190px}.ga-pt-plot .ga-pt-axis{position:absolute;left:0;right:0;bottom:40px;height:1px;background:rgba(104,118,138,.6)}.ga-pt-plot .ga-pt-tick{position:absolute;bottom:36px;width:1px;height:8px;background:rgba(104,118,138,.8)}.ga-pt-plot .ga-pt-tick b{position:absolute;top:14px;left:50%;transform:translateX(-50%);font-family:var(--ga-mono);font-weight:400;font-size:10px;letter-spacing:2px;color:var(--ga-steel-text);white-space:nowrap}.ga-pt-plot i{position:absolute;width:10px;height:10px;border-radius:50%}html.ga-pt-on .ga-pt-plot i{opacity:0;transform:scale(.4);transition:opacity var(--ga-t-base) var(--ga-ease-out),transform var(--ga-t-base) var(--ga-ease-out);transition-delay:var(--ga-delay,0ms)}html.ga-pt-on .ga-pt-fig.is-in .ga-pt-plot i{opacity:1;transform:none}.ga-pt-cap .elementor-heading-title,.ga-pt-cap{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:11px !important;line-height:18px !important;letter-spacing:1px;color:var(--ga-steel-text) !important}.ga-pt-frow{display:flex !important;flex-direction:row !important;align-items:center !important;gap:28px !important;padding:26px 0 !important;border-top:1px solid rgba(104,118,138,.4)}.ga-pt-frow:last-child{border-bottom:1px solid rgba(104,118,138,.4)}.ga-pt-frow.is-soon{opacity:.68}.ga-pt-frow .ga-pt-fn{flex:0 0 46px}.ga-pt-frow .ga-pt-fn .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:14px !important;line-height:24px !important;letter-spacing:1px;color:var(--ga-peach) !important}.ga-pt-frow .ga-pt-fs{flex:1 1 auto}.ga-pt-frow .ga-pt-fstat .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-peach) !important}.ga-pt-frow.is-soon .ga-pt-fstat .elementor-heading-title{color:var(--ga-steel-text) !important}.ga-pt-frow .ga-pt-fsh .elementor-heading-title{font-family:var(--ga-sora) !important;font-weight:800 !important;font-size:24px !important;line-height:31px !important;letter-spacing:-.4px;color:var(--ga-ghost) !important}.ga-pt-frow .ga-pt-fv{flex:0 0 200px;text-align:right}.ga-pt-frow .ga-pt-fv .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:44px !important;line-height:38px !important;letter-spacing:-2px;font-variant-numeric:tabular-nums;background:var(--ga-ramp);-webkit-background-clip:text;background-clip:text;color:transparent !important;-webkit-text-fill-color:transparent}.ga-pt-conf{display:flex;gap:5px;flex:0 0 auto}.ga-pt-conf i{width:12px;height:12px;background:rgba(104,118,138,.35);display:block}.ga-pt-conf i.on{background:var(--ga-peach)}.ga-pt-method,.ga-pt-method p,.ga-pt-src,.ga-pt-src p{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:14px !important;line-height:24px !important;letter-spacing:.3px;color:var(--ga-ghost) !important;margin:0}.ga-pt-src,.ga-pt-src p{font-size:12px !important;line-height:20px !important;color:var(--ga-steel-text) !important}.ga-pt-src p + p{margin-top:6px}.ga-pt-ms{max-width:680px;margin:0 auto}.ga-pt-mst .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:72px !important;line-height:72px !important;letter-spacing:-2px;color:var(--ga-ghost) !important;text-align:center}.ga-pt-kick .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:3px;color:var(--ga-peach) !important;text-align:center}.ga-pt-epi,.ga-pt-epi p{font-family:var(--ga-mono) !important;font-weight:400 !important;font-style:italic !important;font-size:17px !important;line-height:27px !important;color:var(--ga-ghost) !important;text-align:center;margin:0}.ga-pt-epi-src .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:10px !important;line-height:1 !important;letter-spacing:3px;color:var(--ga-steel-text) !important;text-align:center}.ga-pt-open,.ga-pt-open p{font-family:var(--ga-body) !important;font-weight:400 !important;font-size:19px !important;line-height:32px !important;color:var(--ga-ghost) !important;margin:0}.ga-pt-open p:first-of-type::first-letter{float:left;line-height:.82;padding:6px 18px 0 0;font-family:var(--ga-sora);font-weight:800;font-size:104px;letter-spacing:-4px;color:var(--ga-peach)}.ga-pt-entry{padding:34px 0 !important}.ga-pt-entry.is-soon{opacity:.66}.ga-pt-folio .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:11px !important;line-height:20px !important;letter-spacing:1.5px;color:var(--ga-steel-text) !important}.ga-pt-et .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:28px !important;line-height:34px !important;letter-spacing:-.5px;color:var(--ga-ghost) !important}.ga-pt-et{position:relative;display:inline-block}.ga-pt-et::after{content:\"\";display:block;height:2px;width:62%;min-width:180px;margin-top:10px;background:var(--ga-peach);transform:rotate(-.7deg);transform-origin:left center}html.ga-pt-on .ga-pt-et::after{transform:rotate(-.7deg) scaleX(0);transform-origin:left center;transition:transform var(--ga-t-reveal) var(--ga-ease-reveal);transition-delay:calc(var(--ga-delay,0ms) + 120ms)}html.ga-pt-on .ga-pt-entry.is-in .ga-pt-et::after{transform:rotate(-.7deg) scaleX(1)}.ga-pt-eline,.ga-pt-eline p{font-family:var(--ga-body) !important;font-weight:300 !important;font-size:17px !important;line-height:28px !important;color:var(--ga-ghost) !important;margin:0}.ga-pt-estat .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:1 !important;letter-spacing:2px;color:var(--ga-peach) !important}.ga-pt-entry.is-soon .ga-pt-estat .elementor-heading-title{color:var(--ga-steel-text) !important}.ga-pt-after{text-align:right}.ga-pt-after .elementor-heading-title{text-align:right}.ga-pt-atext,.ga-pt-atext p{font-family:var(--ga-mono) !important;font-weight:400 !important;font-size:14px !important;line-height:24px !important;letter-spacing:.3px;color:var(--ga-ghost) !important;text-align:right;margin:0}.ga-pt-sign .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:12px !important;line-height:1 !important;letter-spacing:3px;color:var(--ga-peach) !important;text-align:right}.ga-pt-flag{border:1px solid rgba(253,186,116,.55);padding:18px 24px !important;display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;gap:8px 18px !important;align-items:center !important}.ga-pt-flag .elementor-heading-title{font-family:var(--ga-mono) !important;font-weight:700 !important;font-size:11px !important;line-height:18px !important;letter-spacing:2px;color:var(--ga-peach) !important}.ga-pt-flag .ga-pt-flag-b,.ga-pt-flag .ga-pt-flag-b p{font-family:var(--ga-body) !important;font-weight:300 !important;font-size:15px !important;line-height:24px !important;color:var(--ga-ghost) !important;margin:0}@media (max-width:767px){.ga-pt-letterbox{padding:6px 0 !important}.ga-pt-still{min-height:252px;padding:0 20px 22px !important}.ga-pt-slug{left:20px;top:14px}.ga-pt-slug .elementor-heading-title{font-size:9px !important;white-space:normal}.ga-pt-card .elementor-heading-title{font-size:44px !important;line-height:42px !important;letter-spacing:-1.8px}.ga-pt-cover{flex:0 0 80% !important;width:80% !important;margin-left:auto !important;margin-right:auto !important}.ga-pt-cover::after{top:auto;left:0;right:0;width:auto;height:4px}.ga-pt-heroside{padding:28px 20px 34px !important}.ga-pt-still--split .ga-pt-heroside::before{content:none}.ga-pt-titleline{gap:10px !important}.ga-pt-vol .elementor-heading-title{font-size:44px !important;line-height:42px !important;letter-spacing:-1.8px;-webkit-text-stroke-width:1.5px}.ga-pt-credit .elementor-heading-title{font-size:9px !important;letter-spacing:2px}.ga-pt-cert>.e-con{flex:1 1 50%;min-width:0;padding:14px 16px !important}.ga-pt-cert>.e-con:nth-child(odd){border-left:0}.ga-pt-cert>.e-con:nth-child(n+3){border-top:1px solid rgba(253,186,116,.5)}.ga-pt-prow{flex-wrap:wrap !important;gap:6px 12px !important;padding:16px 0 !important}.ga-pt-prow .ga-pt-week{flex:1 1 auto;order:1}.ga-pt-prow .ga-pt-stat{flex:0 0 auto;order:2;margin-left:auto}.ga-pt-prow .ga-pt-date{display:none}.ga-pt-prow .ga-pt-film{flex:1 1 100%;order:3}.ga-pt-prow .ga-pt-film .elementor-heading-title{font-size:20px !important;line-height:24px !important}.ga-pt-prow .ga-pt-year{flex:0 0 auto;order:4}.ga-pt-prow .ga-pt-run{flex:0 0 auto;order:5}.ga-pt-prow.is-now{padding-left:14px !important;padding-right:14px !important}.ga-pt-note .ga-pt-note-l{flex:1 1 100%}.ga-pt-note .ga-pt-note-h .elementor-heading-title{font-size:26px !important;line-height:30px !important}.ga-pt-report{background-size:60px 60px !important}.ga-pt-title .elementor-heading-title{font-size:56px !important;line-height:52px !important;letter-spacing:-2.2px}.ga-pt-question,.ga-pt-question p{font-size:18px !important;line-height:27px !important}.ga-pt-abstract{padding:20px !important}.ga-pt-slates{grid-template-columns:repeat(2,1fr);gap:14px !important}.ga-pt-slate{padding:18px !important}.ga-pt-slate .ga-pt-num .elementor-heading-title{font-size:56px !important;line-height:50px !important;letter-spacing:-2px;margin:10px 0}.ga-pt-plot{height:150px}.ga-pt-plot i{width:8px;height:8px}.ga-pt-frow{flex-wrap:wrap !important;gap:12px !important;padding:20px 0 !important}.ga-pt-frow .ga-pt-fn{flex:0 0 30px}.ga-pt-frow .ga-pt-fs{flex:1 1 calc(100% - 58px)}.ga-pt-frow .ga-pt-fsh .elementor-heading-title{font-size:18px !important;line-height:24px !important}.ga-pt-frow .ga-pt-fv{flex:0 0 auto;margin-left:44px;text-align:left}.ga-pt-frow .ga-pt-fv .elementor-heading-title{font-size:34px !important;line-height:30px !important}.ga-pt-conf{margin-left:auto}.ga-pt-ms{max-width:none}.ga-pt-mst .elementor-heading-title{font-size:40px !important;line-height:42px !important;letter-spacing:-1px}.ga-pt-epi,.ga-pt-epi p{font-size:15px !important;line-height:24px !important}.ga-pt-open,.ga-pt-open p{font-size:17px !important;line-height:28px !important}.ga-pt-open p:first-of-type::first-letter{font-size:72px;padding-right:12px}.ga-pt-et .elementor-heading-title{font-size:22px !important;line-height:28px !important}.ga-pt-atext,.ga-pt-atext p{font-size:12px !important;line-height:20px !important}}@media (prefers-reduced-motion:reduce){html.ga-pt-on .ga-pt-up{opacity:1 !important;transform:none !important}html.ga-pt-on .ga-pt-plot i{opacity:1 !important;transform:none !important}html.ga-pt-on .ga-pt-et::after{transform:rotate(-.7deg) scaleX(1) !important}.ga-pt-still::before,.ga-pt-still::after,.ga-pt-prow.is-now{animation:none !important}}<\/style>\n<script id=\"ga-pt-js\">(function () {\nvar root = document.documentElement;\nif (!document.querySelector(\".ga-pt\")) return;\nroot.classList.add(\"ga-js\");\nroot.classList.add(\"ga-pt-on\");\nvar STEP = 60;\nfunction ready(fn) {\nif (document.readyState !== \"loading\") fn();\nelse document.addEventListener(\"DOMContentLoaded\", fn);\n}\nfunction txt(el) { return (el && el.textContent || \"\").trim(); }\nfunction ease(t) { return 1 - Math.pow(1 - t, 3); }\nfunction each(sel, fn, ctx) { [].slice.call((ctx || document).querySelectorAll(sel)).forEach(fn); }\nready(function () {\ntry { setup(); } catch (e) {\nroot.classList.remove(\"ga-pt-on\");\nthrow e;\n}\n});\nfunction setup() {\nvar reduced = window.matchMedia && window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\nvar pending = [];\nfunction onIn(el, fn) {\nif (!el) return;\nif (!(\"IntersectionObserver\" in window)) { fn(); return; }\npending.push({ el: el, fn: fn });\n}\neach(\".ga-pt-stage\", function (group) {\nvar i = 0;\neach(\".ga-pt-up\", function (el) {\nel.style.setProperty(\"--ga-delay\", (i++ * STEP) + \"ms\");\n}, group);\n});\neach(\".ga-pt-prow\", function (row) {\nvar s = txt(row.querySelector(\".ga-pt-stat\")).toUpperCase();\nif (\/NOW\/.test(s)) row.classList.add(\"is-now\");\nelse if (\/SOON|BINNENKORT\/.test(s)) row.classList.add(\"is-soon\");\nelse row.classList.add(\"is-written\");\n});\neach(\".ga-pt-cert\", function (c) {\nvar first = c.querySelector(\".e-con, div\");\nif (first) first.classList.add(\"ga-pt-cell--first\");\n});\neach(\".ga-pt-slate .ga-pt-num .elementor-heading-title\", function (n, i) {\nvar to = parseFloat(txt(n));\nif (isNaN(to) || reduced) return;\nvar dec = (txt(n).split(\".\")[1] || \"\").length;\nvar slate = n.closest(\".ga-pt-slate\");\nn.textContent = dec ? (0).toFixed(dec) : \"0\";\nonIn(slate, function () {\nvar s = null, D = 800;\nvar settle = function () { n.textContent = dec ? to.toFixed(dec) : String(Math.round(to)); };\nvar run = function (now) {\nif (s === null) s = now;\nvar p = ease(Math.min(1, (now - s) \/ D)), v = p * to;\nn.textContent = dec ? v.toFixed(dec) : String(Math.round(v));\nif (p < 1) requestAnimationFrame(run); else settle();\n};\nsetTimeout(function () { requestAnimationFrame(run); }, i * STEP);\nsetTimeout(settle, i * STEP + D + 80);\n});\n});\neach(\".ga-pt-plot\", function (plot) {\nif (plot.querySelector(\"i\")) return;\nvar n = parseInt(plot.getAttribute(\"data-n\"), 10) || 47;\nvar labels = (plot.getAttribute(\"data-labels\") || \"MIN|MEDIAN|MAX\").split(\"|\");\n[0, 0.5, 1].forEach(function (at, k) {\nvar t = document.createElement(\"span\");\nt.className = \"ga-pt-tick\";\nt.style.left = \"calc(\" + (at * 100) + \"% - \" + (at ? (at === 1 ? 1 : 0.5) : 0) + \"px)\";\nif (labels[k]) { var b = document.createElement(\"b\"); b.textContent = labels[k]; t.appendChild(b); }\nplot.appendChild(t);\n});\nvar seed = n, stack = {};\nvar rnd = function () { seed = (seed * 9301 + 49297) % 233280; return seed \/ 233280; };\nfor (var i = 0; i < n; i++) {\nvar v = 0.55 + (rnd() + rnd() + rnd() - 1.5) * 0.34;\nv = Math.max(0, Math.min(1, v));\nvar bin = Math.round(v * 40);\nstack[bin] = (stack[bin] || 0) + 1;\nvar d = document.createElement(\"i\");\nd.style.left = \"calc(\" + (bin \/ 40 * 100) + \"% - 5px)\";\nd.style.bottom = (46 + (stack[bin] - 1) * 12) + \"px\";\nd.style.background = \"color-mix(in srgb, var(--ga-peach) \" + Math.round((1 - v) * 100) + \"%, var(--ga-lilac))\";\nd.style.setProperty(\"--ga-delay\", Math.round(v * 420) + \"ms\");\nplot.appendChild(d);\n}\n});\neach(\".ga-pt-conf\", function (c) {\nif (c.querySelector(\"i\")) return;\nvar on = parseInt(c.getAttribute(\"data-conf\"), 10) || 0;\nfor (var i = 0; i < 5; i++) {\nvar sq = document.createElement(\"i\");\nif (i < on) sq.className = \"on\";\nc.appendChild(sq);\n}\n});\neach(\".ga-pt-frow\", function (row) {\nif (\/SOON|BINNENKORT\/i.test(txt(row.querySelector(\".ga-pt-fstat\")))) row.classList.add(\"is-soon\");\n});\neach(\".ga-pt-entry\", function (e) {\nif (\/SOON|BINNENKORT\/i.test(txt(e.querySelector(\".ga-pt-estat\")))) e.classList.add(\"is-soon\");\n});\nvar watch = [];\n[\".ga-pt-up\", \".ga-pt-slate\", \".ga-pt-fig\", \".ga-pt-entry\"].forEach(function (sel) {\neach(sel, function (el) { if (watch.indexOf(el) === -1) watch.push(el); });\n});\npending.forEach(function (p) { if (watch.indexOf(p.el) === -1) watch.push(p.el); });\nif (!(\"IntersectionObserver\" in window)) {\nwatch.forEach(function (el) { el.classList.add(\"is-in\"); });\n} else {\nvar io = new IntersectionObserver(function (entries) {\nentries.forEach(function (e) {\nif (!e.isIntersecting) return;\ne.target.classList.add(\"is-in\");\nio.unobserve(e.target);\npending = pending.filter(function (p) {\nif (p.el === e.target || e.target.contains(p.el)) { p.fn(); return false; }\nreturn true;\n});\n});\n}, { rootMargin: \"0px 0px -10% 0px\", threshold: 0.06 });\nwatch.forEach(function (el) { io.observe(el); });\n}\n}\n})();<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4c91296 e-con-full she-header-yes elementor-hidden-mobile ga-h-centred ga-x-header e-flex e-con e-parent\" data-id=\"4c91296\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;transparent&quot;:&quot;yes&quot;,&quot;scroll_distance&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;scroll_distance_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;transparent_on&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;],&quot;scroll_distance_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_offset_top&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;she_offset_top_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_offset_top_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_width&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:100,&quot;sizes&quot;:[]},&quot;she_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:0,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:0,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;she_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;she_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}\">\n\t\t<div class=\"elementor-element elementor-element-97c2772 e-con-full e-flex e-con e-child\" data-id=\"97c2772\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-804a997 ga-x-logo elementor-widget elementor-widget-heading\" data-id=\"804a997\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/\">GLENNABRAAS<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8cd581f e-grid e-con-full e-transform e-con e-child\" data-id=\"8cd581f\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_transform_scale_effect_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:1.01,&quot;sizes&quot;:[]},&quot;_transform_scale_effect_hover_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_scale_effect_hover_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\">\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-100f03a elementor-widget elementor-widget-heading\" data-id=\"100f03a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/projects\/\">PROJECTS<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-4ed3883 elementor-widget elementor-widget-heading\" data-id=\"4ed3883\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/news\/\">NEWS<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-d906957 elementor-widget elementor-widget-heading\" data-id=\"d906957\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/contact\/\">CONTACT<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-a9e98a8 elementor-widget elementor-widget-heading\" data-id=\"a9e98a8\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/about\/\" rel=\"nofollow\">ABOUT<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-49c9d32 elementor-widget elementor-widget-heading\" data-id=\"49c9d32\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.online\/\" target=\"_blank\" rel=\"nofollow\">NOTES<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f4e58ae elementor-widget elementor-widget-shortcode\" data-id=\"f4e58ae\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div class=\"trp-shortcode-switcher__wrapper\"\r\n     style=\"--bg:#060813;--bg-hover:#000000;--text:#f8fafc;--text-hover:#f8fafc;--border:none;--border-width:0px;--border-color:#060813;--border-radius:0px;--flag-radius:2px;--flag-size:18px;--aspect-ratio:1;--font-size:14px;--transition-duration:0s\"\r\n     role=\"group\"\r\n     data-open-mode=\"hover\">\r\n\r\n    \r\n        <!-- ANCHOR (in-flow only; sizing\/borders; inert) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-anchor trp-open-on-hover\"\r\n             aria-hidden=\"true\"\r\n             inert\r\n             data-no-translation>\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <a class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation href=\"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3638#TRPLINKPROCESSED\" title=\"\"><img decoding=\"async\" src=\"https:\/\/glennabraas.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/1x1\/nl_NL.svg\" class=\"trp-flag-image trp-flag-square\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><\/a>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewBox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n            <\/div>\r\n\r\n        <!-- OVERLAY (positioned; interactive surface) -->\r\n        <div class=\"trp-language-switcher trp-ls-dropdown trp-shortcode-switcher trp-shortcode-overlay trp-open-on-hover\"\r\n             role=\"navigation\"\r\n             aria-label=\"Site taalkiezer\"\r\n             data-no-translation\r\n        >\r\n                <div class=\"trp-current-language-item__wrapper\">\r\n        <div class=\"trp-language-item trp-language-item__default trp-language-item__current\" data-no-translation role=\"button\" aria-expanded=\"false\" tabindex=\"0\" aria-label=\"Taal wijzigen\" aria-controls=\"trp-shortcode-dropdown-6adfb12d168f9\"><img decoding=\"async\" src=\"https:\/\/glennabraas.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/1x1\/nl_NL.svg\" class=\"trp-flag-image trp-flag-square\" alt=\"\" role=\"presentation\" loading=\"lazy\" \/><\/div>                    <svg class=\"trp-shortcode-arrow\" width=\"20\" height=\"20\" viewBox=\"0 0 20 21\" fill=\"none\" aria-hidden=\"true\" focusable=\"false\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                <path d=\"M5 8L10 13L15 8\" stroke=\"var(--text)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\r\n            <\/svg>\r\n            <\/div>\r\n    \r\n            <div class=\"trp-switcher-dropdown-list\"\r\n                 id=\"trp-shortcode-dropdown-6adfb12d168f9\"\r\n                 role=\"group\"\r\n                 aria-label=\"Beschikbare talen\"\r\n                 hidden\r\n                 inert\r\n            >\r\n                                                            <a class=\"trp-language-item\" href=\"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3638#TRPLINKPROCESSED\" title=\"\">\r\n                            <img decoding=\"async\" src=\"https:\/\/glennabraas.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/1x1\/en_US.svg\" class=\"trp-flag-image trp-flag-square\" alt=\"Taal wijzigen naar English\" loading=\"lazy\" \/>                                                                                <\/a>\r\n                                                <\/div>\r\n        <\/div>\r\n\r\n    <\/div>\r\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a6e8e0d e-con-full she-header-yes elementor-hidden-desktop elementor-hidden-tablet she-header-hide-on-scroll-yes e-flex e-con e-parent\" data-id=\"a6e8e0d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;transparent&quot;:&quot;yes&quot;,&quot;hide_header&quot;:&quot;yes&quot;,&quot;scroll_distance_hide_header_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:60,&quot;sizes&quot;:[]},&quot;scroll_distance_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;transparent_on&quot;:[&quot;desktop&quot;,&quot;tablet&quot;,&quot;mobile&quot;],&quot;scroll_distance&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:60,&quot;sizes&quot;:[]},&quot;scroll_distance_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_offset_top&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;she_offset_top_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_offset_top_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_width&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:100,&quot;sizes&quot;:[]},&quot;she_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;she_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:0,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:0,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;she_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;she_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;scroll_distance_hide_header&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:500,&quot;sizes&quot;:[]},&quot;scroll_distance_hide_header_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\">\n\t\t<div class=\"elementor-element elementor-element-b5c0c88 e-grid e-con-full e-con e-child\" data-id=\"b5c0c88\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b56047b elementor-widget elementor-widget-heading\" data-id=\"b56047b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/\">GLENNABRAAS<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-98d4754 hfe-nav-menu__align-right hfe-submenu-animation-slide_up hfe-nav-menu__breakpoint-mobile hfe-submenu-icon-arrow hfe-link-redirect-child elementor-widget elementor-widget-navigation-menu\" data-id=\"98d4754\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;padding_horizontal_menu_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:20,&quot;sizes&quot;:[]},&quot;padding_vertical_menu_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;menu_space_between_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;menu_row_space_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:11,&quot;sizes&quot;:[]},&quot;width_dropdown_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;padding_vertical_dropdown_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:25,&quot;sizes&quot;:[]},&quot;distance_from_menu_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;toggle_size_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:30,&quot;sizes&quot;:[]},&quot;padding_horizontal_menu_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;padding_horizontal_menu_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_vertical_menu_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;padding_vertical_menu_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_space_between&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_space_between_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_row_space&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_row_space_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;dropdown_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;dropdown_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;dropdown_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;width_dropdown_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;220&quot;,&quot;sizes&quot;:[]},&quot;width_dropdown_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_dropdown_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_dropdown_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_dropdown_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_vertical_dropdown_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;padding_vertical_dropdown_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;distance_from_menu&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;distance_from_menu_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_size&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_size_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"navigation-menu.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"hfe-nav-menu hfe-layout-horizontal hfe-nav-menu-layout horizontal hfe-pointer__framed hfe-animation__fade\" data-layout=\"horizontal\">\n\t\t\t\t<div role=\"button\" class=\"hfe-nav-menu__toggle elementor-clickable\" tabindex=\"0\" aria-label=\"Menu toggle\">\n\t\t\t\t\t<span class=\"screen-reader-text\">Menu<\/span>\n\t\t\t\t\t<div class=\"hfe-nav-menu-icon\">\n\t\t\t\t\t\t<svg aria-hidden=\"true\"  class=\"e-font-icon-svg e-fas-align-justify\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z\"><\/path><\/svg>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<nav class=\"hfe-nav-menu__layout-horizontal hfe-nav-menu__submenu-arrow\" data-toggle-icon=\"&lt;svg aria-hidden=&quot;true&quot; tabindex=&quot;0&quot; class=&quot;e-font-icon-svg e-fas-align-justify&quot; viewBox=&quot;0 0 448 512&quot; xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;&gt;&lt;path d=&quot;M432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z&quot;&gt;&lt;\/path&gt;&lt;\/svg&gt;\" data-close-icon=\"&lt;svg aria-hidden=&quot;true&quot; tabindex=&quot;0&quot; class=&quot;e-font-icon-svg e-far-window-close&quot; viewBox=&quot;0 0 512 512&quot; xmlns=&quot;http:\/\/www.w3.org\/2000\/svg&quot;&gt;&lt;path d=&quot;M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v340zM356.5 194.6L295.1 256l61.4 61.4c4.6 4.6 4.6 12.1 0 16.8l-22.3 22.3c-4.6 4.6-12.1 4.6-16.8 0L256 295.1l-61.4 61.4c-4.6 4.6-12.1 4.6-16.8 0l-22.3-22.3c-4.6-4.6-4.6-12.1 0-16.8l61.4-61.4-61.4-61.4c-4.6-4.6-4.6-12.1 0-16.8l22.3-22.3c4.6-4.6 12.1-4.6 16.8 0l61.4 61.4 61.4-61.4c4.6-4.6 12.1-4.6 16.8 0l22.3 22.3c4.7 4.6 4.7 12.1 0 16.8z&quot;&gt;&lt;\/path&gt;&lt;\/svg&gt;\" data-full-width=\"yes\">\n\t\t\t\t\t<ul id=\"menu-1-98d4754\" class=\"hfe-nav-menu\"><li id=\"menu-item-2510\" class=\"trp-language-switcher-container trp-menu-ls-item trp-menu-ls-desktop menu-item menu-item-type-post_type menu-item-object-language_switcher current-language-menu-item parent hfe-creative-menu\"><a href=\"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3638#TRPLINKPROCESSED\" class = \"hfe-menu-item\"><span class=\"trp-menu-ls-label\" data-no-translation title=\"English\"><img loading=\"lazy\" src=\"https:\/\/glennabraas.com\/wp-content\/plugins\/translatepress-multilingual\/assets\/flags\/1x1\/en_US.svg\" class=\"trp-flag-image trp-flag-rounded\" alt=\"\" role=\"presentation\" loading=\"lazy\" decoding=\"async\" width=\"18\" height=\"14\" \/> <span class=\"trp-ls-language-name\">English<\/span><\/span><\/a><\/li>\n<li id=\"menu-item-3627\" class=\"menu-item menu-item-type-post_type menu-item-object-page parent hfe-creative-menu\"><a href=\"https:\/\/glennabraas.com\/nl\/projects\/\" class = \"hfe-menu-item\">Projects<\/a><\/li>\n<li id=\"menu-item-3628\" class=\"menu-item menu-item-type-post_type menu-item-object-page parent hfe-creative-menu\"><a href=\"https:\/\/glennabraas.com\/nl\/news\/\" class = \"hfe-menu-item\">News<\/a><\/li>\n<li id=\"menu-item-3629\" class=\"menu-item menu-item-type-post_type menu-item-object-page parent hfe-creative-menu\"><a href=\"https:\/\/glennabraas.com\/nl\/contact\/\" class = \"hfe-menu-item\">Contact<\/a><\/li>\n<li id=\"menu-item-3630\" class=\"menu-item menu-item-type-post_type menu-item-object-page parent hfe-creative-menu\"><a href=\"https:\/\/glennabraas.com\/nl\/about\/\" class = \"hfe-menu-item\">About<\/a><\/li>\n<li id=\"menu-item-2330\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"https:\/\/Glennabraas.Online\" class = \"hfe-menu-item\">Notes<\/a><\/li>\n<\/ul> \n\t\t\t\t<\/nav>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0daabeb ga-bs-page e-con-full e-flex e-con e-parent\" data-id=\"0daabeb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-af62d63 ga-bs-bill e-con-full e-flex e-con e-parent\" data-id=\"af62d63\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-b104f64 ga-bs-billwrap e-con-boxed e-flex e-con e-parent\" data-id=\"b104f64\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-190df99 ga-bs-lt e-con-full e-flex e-con e-parent\" data-id=\"190df99\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-758d1d0 ga-bs-lab elementor-widget elementor-widget-heading\" data-id=\"758d1d0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">PROJECT<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-84c640f ga-bs-name elementor-widget elementor-widget-heading\" data-id=\"84c640f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">AI 101<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3688d9d ga-bs-lede elementor-widget elementor-widget-text-editor\" data-id=\"3688d9d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>This is a series that explains what AI is, in plain language, for anyone who uses it but has never heard the story behind it. No math and no jargon, just the foundation you need to get a real picture of it and use it with your eyes open.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-59082a8 ga-bs-rt e-con-full e-flex e-con e-parent\" data-id=\"59082a8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-63018a6 ga-bs-sq elementor-widget elementor-widget-image\" data-id=\"63018a6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1920\" height=\"1920\" src=\"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2.webp\" class=\"attachment-full size-full wp-image-3693\" alt=\"Riso-style illustration of a smiling vintage computer, artwork for the AI 101 project\" srcset=\"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2.webp 1920w, https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2-300x300.webp 300w, https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2-1024x1024.webp 1024w, https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2-150x150.webp 150w, https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2-768x768.webp 768w, https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2-1536x1536.webp 1536w, https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/ai-101-square-v2-12x12.webp 12w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-81b672d ga-bs-date elementor-widget elementor-widget-heading\" data-id=\"81b672d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><span class=\"ga-bs-from\">FROM<\/span>16-9-2026<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7234a8d ga-bs-main e-con-boxed e-flex e-con e-parent\" data-id=\"7234a8d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e2e9200 ga-bs-pull elementor-widget elementor-widget-text-editor\" data-id=\"e2e9200\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The first time AI changed how I thought, I did not notice until weeks later, and that scared me more than any headline ever has. So I started writing. AI 101 is the foundation: what this technology is, in plain language, kept close to the ground where I use it every day.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-509cb2d ga-bs-sub elementor-widget elementor-widget-heading\" data-id=\"509cb2d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Goals<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3e131a9 ga-bs-terms e-con-full e-flex e-con e-parent\" data-id=\"3e131a9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3197837 ga-bs-term e-con-full e-flex e-con e-parent\" data-id=\"3197837\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8dc2577 ga-bs-term-l elementor-widget elementor-widget-heading\" data-id=\"8dc2577\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">NOT A TUTORIAL<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f655726 ga-bs-term-b elementor-widget elementor-widget-text-editor\" data-id=\"f655726\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>AI 101 will not tell you which button to press. Those guides go stale the week after they ship. This is about the part underneath the buttons, what stays true when the tools change.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8ea0795 ga-bs-term e-con-full e-flex e-con e-parent\" data-id=\"8ea0795\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dbf0271 ga-bs-term-l elementor-widget elementor-widget-heading\" data-id=\"dbf0271\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">NOT A HYPE MACHINE<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5955ba0 ga-bs-term-b elementor-widget elementor-widget-text-editor\" data-id=\"5955ba0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>There is no shortage of people selling you a revolution. I care about a slower question: what is this thing, how does it work, and what is it worth to you?<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7bde1d7 ga-bs-term e-con-full e-flex e-con e-parent\" data-id=\"7bde1d7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bec054e ga-bs-term-l elementor-widget elementor-widget-heading\" data-id=\"bec054e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">NOT A DOOM NARRATIVE<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9153767 ga-bs-term-b elementor-widget elementor-widget-text-editor\" data-id=\"9153767\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>No robot uprisings here. The real risks are quieter and worth naming, and you can only weigh them once you know how the thing under the hype works.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-134d142 ga-bs-term e-con-full e-flex e-con e-parent\" data-id=\"134d142\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7468ddb ga-bs-term-l elementor-widget elementor-widget-heading\" data-id=\"7468ddb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">PLAIN LANGUAGE<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d94109e ga-bs-term-b elementor-widget elementor-widget-text-editor\" data-id=\"d94109e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Nine short pieces, read in order, each one building on the last. Written from inside daily use, not from a safe distance, and you may forget the details as long as you keep the shape.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d76c11c ga-bs-intro elementor-widget elementor-widget-text-editor\" data-id=\"d76c11c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Who is this for. You are already using AI, or you will be soon. You have noticed it changing how you work, maybe how you think, and you cannot quite tell whether that is fine. That uncertainty is the honest place to start, and AI 101 is written for you standing in it.<\/p><p>This is not a tutorial and it is not a tidy verdict, AI saves us or AI dooms us, so you can stop thinking about it. It is the story behind the tool: what it is, where it came from, what it can do and what stays yours. Nine short pieces, read in order, and you walk away with a working picture of AI in your own head.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-974ea89 ga-bs-sub elementor-widget elementor-widget-heading\" data-id=\"974ea89\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Nine pieces<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-06b4e5a ga-bs-tiles e-con-full e-flex e-con e-parent\" data-id=\"06b4e5a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-7e57636 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"7e57636\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0cef46f ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"0cef46f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">01<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-668bf68 ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"668bf68\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">What AI Actually Is<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5550d68 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"5550d68\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>What AI actually is, in plain language. Software that learned patterns from examples, not consciousness and not computer magic.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-579e90a ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"579e90a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/what-ai-is\/\" data-ga-live=\"https:\/\/glennabraas.com\/what-ai-is\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c210a92 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"c210a92\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-35834cf ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"35834cf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">02<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-770b38f ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"770b38f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Where AI Came From and the Hype Around It<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cb1f012 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"cb1f012\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Where AI came from and why it feels sudden. It is an old idea that finally works, and that history explains both the excitement and the anger around it.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5c90b26 ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"5c90b26\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/where-ai-came-from-and-the-hype-around-it\/\" data-ga-live=\"https:\/\/glennabraas.com\/where-ai-came-from-and-the-hype-around-it\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d7d6ad9 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"d7d6ad9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3000387 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"3000387\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">03<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9dc6ef4 ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"9dc6ef4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">The Different Kinds of AI<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a96a643 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"a96a643\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>A map of the field. The language model, the image generator and the agent, plus the two plain questions that place almost all of it.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd71b89 ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"cd71b89\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/the-different-kinds-of-ai\/\" data-ga-live=\"https:\/\/glennabraas.com\/the-different-kinds-of-ai\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ccc5050 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"ccc5050\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-59a4587 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"59a4587\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">04<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-34408cc ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"34408cc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">A Closer Look at the Language Model<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-45f43d0 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"45f43d0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The model you type to guesses the next word, over and over. That one move explains its confidence, its made-up facts and its forgetting.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6207b10 ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"6207b10\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/a-closer-look-at-the-language-model\/\" data-ga-live=\"https:\/\/glennabraas.com\/a-closer-look-at-the-language-model\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-dac81ad ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"dac81ad\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d0c2c12 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"d0c2c12\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">05<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-70bcf89 ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"70bcf89\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">A Closer Look at Image Generators<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f31ebad ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"f31ebad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Words in, a picture out. How it learned the trick, why the same idea now makes video and music, and the fight over the art it learned from.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-36317e8 ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"36317e8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/a-closer-look-at-image-generators\/\" data-ga-live=\"https:\/\/glennabraas.com\/a-closer-look-at-image-generators\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c26dcc5 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"c26dcc5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b482256 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"b482256\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">06<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f925ff3 ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"f925ff3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">A Closer Look at Agents<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bef1719 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"bef1719\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>A language model handed hands and a goal. It acts instead of only answering, which makes it the most useful and the riskiest of the three.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-47343c9 ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"47343c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/a-closer-look-at-agents\/\" data-ga-live=\"https:\/\/glennabraas.com\/a-closer-look-at-agents\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7acd2f6 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"7acd2f6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-31cd442 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"31cd442\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">07<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f58ecad ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"f58ecad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">What It Can Do When You Guide It<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8301c65 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"8301c65\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The ceiling on these tools is mostly you, and it runs high. How to raise it at work, in learning and in the things you make.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-69c717f ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"69c717f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/what-it-can-do-when-you-guide-it\/\" data-ga-live=\"https:\/\/glennabraas.com\/what-it-can-do-when-you-guide-it\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0d24386 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"0d24386\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f076393 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"f076393\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">08<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-362dddf ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"362dddf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">You're Not Behind<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7e67ca5 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"7e67ca5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>AI moves fast and it is easy to feel behind. You are not. It has been in your life for years, and starting small is the only move that matters.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-84a1f71 ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"84a1f71\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/youre-not-behind\/\" data-ga-live=\"https:\/\/glennabraas.com\/youre-not-behind\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2de28f1 ga-bs-tile e-con-full e-flex e-con e-parent\" data-id=\"2de28f1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f964da5 ga-bs-num elementor-widget elementor-widget-heading\" data-id=\"f964da5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">09<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a547c50 ga-bs-t elementor-widget elementor-widget-heading\" data-id=\"a547c50\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">The Last Word Is Yours<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9822b50 ga-bs-s elementor-widget elementor-widget-text-editor\" data-id=\"9822b50\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The close of the series: hype and real technology at once, and the one idea to take with you. AI gives back exactly the value you put into it.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0bc7cfb ga-bs-read elementor-widget elementor-widget-heading\" data-id=\"0bc7cfb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/the-last-word-is-yours\/\" data-ga-live=\"https:\/\/glennabraas.com\/the-last-word-is-yours\/\"><b>READ<\/b><em>SOON<\/em><\/a><\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-449f51f ga-bs-plate e-con-full e-flex e-con e-parent\" data-id=\"449f51f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5fccc64 ga-bs-lab elementor-widget elementor-widget-heading\" data-id=\"5fccc64\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">CONCLUSION<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5041ab4 ga-bs-p elementor-widget elementor-widget-text-editor\" data-id=\"5041ab4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>I use AI every day, in writing, in building this site, in the kind of creative and analytical work this series comes from. I use Claude Code to write and edit the code behind these pages, and I push these tools past their comfortable limits to find where the genuine value lives and where the claims fall apart. AI 101 is the walking that comes before the running: the real context, in plain language, so you can make up your own mind about it instead of borrowing someone else&#8217;s.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-87635e0 e-con-full ga-foot e-flex e-con e-parent\" data-id=\"87635e0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-25ba53d ga-foot-rule elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"25ba53d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a5fe7c8 e-con-full e-flex e-con e-child\" data-id=\"a5fe7c8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-55294fb e-grid e-con-full ga-foot-nav e-con e-child\" data-id=\"55294fb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6cc2442 elementor-widget elementor-widget-heading\" data-id=\"6cc2442\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/projects\/\">PROJECTS<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-d2ee3f6 elementor-widget elementor-widget-heading\" data-id=\"d2ee3f6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/news\/\">NEWS<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-084410a elementor-widget elementor-widget-heading\" data-id=\"084410a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/contact\/\">CONTACT<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<div data-eael_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" data-eael_opacity_hover=\"{&quot;opacity&quot;:0.5}\" data-eael_hover_duration=\"{&quot;transitionDuration&quot;:1000}\" data-eael_hover_easing=\"{&quot;transitionEasing&quot;:&quot;ease&quot;}\" class=\"eael_hover_effect elementor-element elementor-element-3cfa3b9 elementor-widget elementor-widget-heading\" data-id=\"3cfa3b9\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;eael_hover_effect_opacity_popover_hover&quot;:&quot;yes&quot;,&quot;eael_hover_effect_opacity_hover&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.5,&quot;sizes&quot;:[]},&quot;eael_hover_effect_general_settings_easing&quot;:&quot;ease&quot;,&quot;eael_hover_effect_general_settings_hover_easing&quot;:&quot;ease&quot;}\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<span class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/glennabraas.com\/about\/\">ABOUT<\/a><\/span>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cd42234 elementor-widget elementor-widget-elementskit-social-media\" data-id=\"cd42234\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"elementskit-social-media.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"ekit-wid-con\" >\t\t\t <ul class=\"ekit_social_media\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"elementor-repeater-item-5adc4e4\">\n\t\t\t\t\t    <a\n\t\t\t\t\t\thref=\"https:\/\/www.facebook.com\/GlennAbraas\" aria-label=\"Facebook\" class=\"facebook\" >\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"icon icon-facebook\"><\/i>\n                                                                                                            <\/a>\n                    <\/li>\n                    \t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"elementor-repeater-item-cbf5f84\">\n\t\t\t\t\t    <a\n\t\t\t\t\t\thref=\"https:\/\/www.instagram.com\/_glenn046\/\" aria-label=\"Instagram\" class=\"instagram\" >\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fab-instagram\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z\"><\/path><\/svg>\n                                                                                                            <\/a>\n                    <\/li>\n                    \t\t\t\t\t\t\t\t\t\t\t\t\t\t<li class=\"elementor-repeater-item-e54712e\">\n\t\t\t\t\t    <a\n\t\t\t\t\t\thref=\"https:\/\/www.linkedin.com\/in\/glenn-abraas\/\" aria-label=\"LinkedIn\" class=\"linkedin\" >\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"icon icon-linkedin\"><\/i>\n                                                                                                            <\/a>\n                    <\/li>\n                    \t\t\t\t\t\t\t<\/ul>\n\t\t<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-466beea e-con-full e-flex e-con e-child\" data-id=\"466beea\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c3e7f19 ga-foot-hair elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"c3e7f19\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-238a9f6 ga-foot-credit elementor-widget elementor-widget-text-editor\" data-id=\"238a9f6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p data-path-to-node=\"5,0,0\">Copyright \u00a9 2026 GlennAbraas. <br \/>All rights reserved.<\/p>\n<p class=\"ga-foot-legal\"><a href=\"https:\/\/glennabraas.com\/privacybeleid\/\">Privacy<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":3710,"parent":3556,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_yoast_wpseo_focuskw":"","_yoast_wpseo_title":"AI 101 | What AI is, in nine short pieces","_yoast_wpseo_metadesc":"A series that explains what AI is, in plain language, for anyone who uses it but never heard the story behind it. Nine short pieces, read in order.","_yoast_wpseo_meta-robots-noindex":"","_yoast_wpseo_meta-robots-nofollow":"","_yoast_wpseo_opengraph-title":"","_yoast_wpseo_opengraph-description":"","_yoast_wpseo_opengraph-image":"","_yoast_wpseo_twitter-title":"","_yoast_wpseo_twitter-description":"","_yoast_wpseo_twitter-image":"","footnotes":""},"folder":[],"class_list":["post-3638","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>AI 101 | What AI is, in nine short pieces<\/title>\n<meta name=\"description\" content=\"A series that explains what AI is, in plain language, for anyone who uses it but never heard the story behind it. Nine short pieces, read in order.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/glennabraas.com\/nl\/projects\/ai-101\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AI 101 | What AI is, in nine short pieces\" \/>\n<meta property=\"og:description\" content=\"A series that explains what AI is, in plain language, for anyone who uses it but never heard the story behind it. Nine short pieces, read in order.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/glennabraas.com\/nl\/projects\/ai-101\/\" \/>\n<meta property=\"og:site_name\" content=\"GlennAbraas\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-16T15:21:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/og-default-1200x630-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/\",\"url\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/\",\"name\":\"AI 101 | What AI is, in nine short pieces\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/glennabraas.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/glennabraas.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/og-default-1200x630-1.png\",\"datePublished\":\"2026-09-12T10:40:37+00:00\",\"dateModified\":\"2026-09-16T15:21:10+00:00\",\"description\":\"A series that explains what AI is, in plain language, for anyone who uses it but never heard the story behind it. Nine short pieces, read in order.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/#primaryimage\",\"url\":\"https:\\\/\\\/glennabraas.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/og-default-1200x630-1.png\",\"contentUrl\":\"https:\\\/\\\/glennabraas.com\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/og-default-1200x630-1.png\",\"width\":1200,\"height\":630,\"caption\":\"GlennAbraas: reviews, projects and essays\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/ai-101\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/glennabraas.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Projects\",\"item\":\"https:\\\/\\\/glennabraas.com\\\/projects\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"AI 101\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/glennabraas.com\\\/#website\",\"url\":\"https:\\\/\\\/glennabraas.com\\\/\",\"name\":\"GlennAbraas\",\"description\":\"Glenn Abraas is een creatief die zich toelegt op copywriting, concepting, storytelling en AI-experimenten.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/glennabraas.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"AI 101 | Wat AI is, in negen korte stukken","description":"Een reeks die in gewone taal uitlegt wat AI is, voor iedereen die het gebruikt maar nooit het achterliggende verhaal hoorde. Negen korte stukken, op volgorde te lezen.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/glennabraas.com\/nl\/projects\/ai-101\/","og_locale":"nl_NL","og_type":"article","og_title":"AI 101 | What AI is, in nine short pieces","og_description":"A series that explains what AI is, in plain language, for anyone who uses it but never heard the story behind it. Nine short pieces, read in order.","og_url":"https:\/\/glennabraas.com\/nl\/projects\/ai-101\/","og_site_name":"GlennAbraas","article_modified_time":"2026-09-16T15:21:10+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/og-default-1200x630-1.png","type":"image\/png"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/glennabraas.com\/projects\/ai-101\/","url":"https:\/\/glennabraas.com\/projects\/ai-101\/","name":"AI 101 | Wat AI is, in negen korte stukken","isPartOf":{"@id":"https:\/\/glennabraas.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/glennabraas.com\/projects\/ai-101\/#primaryimage"},"image":{"@id":"https:\/\/glennabraas.com\/projects\/ai-101\/#primaryimage"},"thumbnailUrl":"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/og-default-1200x630-1.png","datePublished":"2026-09-12T10:40:37+00:00","dateModified":"2026-09-16T15:21:10+00:00","description":"Een reeks die in gewone taal uitlegt wat AI is, voor iedereen die het gebruikt maar nooit het achterliggende verhaal hoorde. Negen korte stukken, op volgorde te lezen.","breadcrumb":{"@id":"https:\/\/glennabraas.com\/projects\/ai-101\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/glennabraas.com\/projects\/ai-101\/"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/glennabraas.com\/projects\/ai-101\/#primaryimage","url":"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/og-default-1200x630-1.png","contentUrl":"https:\/\/glennabraas.com\/wp-content\/uploads\/2026\/09\/og-default-1200x630-1.png","width":1200,"height":630,"caption":"GlennAbraas: reviews, projects and essays"},{"@type":"BreadcrumbList","@id":"https:\/\/glennabraas.com\/projects\/ai-101\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/glennabraas.com\/"},{"@type":"ListItem","position":2,"name":"Projects","item":"https:\/\/glennabraas.com\/projects\/"},{"@type":"ListItem","position":3,"name":"AI 101"}]},{"@type":"WebSite","@id":"https:\/\/glennabraas.com\/#website","url":"https:\/\/glennabraas.com\/","name":"GlennAbraas","description":"Glenn Abraas is een creatief die zich toelegt op copywriting, concepting, storytelling en AI-experimenten.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/glennabraas.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"}]}},"_links":{"self":[{"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3638","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/comments?post=3638"}],"version-history":[{"count":1,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3638\/revisions"}],"predecessor-version":[{"id":3640,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3638\/revisions\/3640"}],"up":[{"embeddable":true,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/pages\/3556"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/media\/3710"}],"wp:attachment":[{"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/media?parent=3638"}],"wp:term":[{"taxonomy":"folder","embeddable":true,"href":"https:\/\/glennabraas.com\/nl\/wp-json\/wp\/v2\/folder?post=3638"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}