{"id":833,"date":"2026-09-18T20:54:07","date_gmt":"2026-09-18T18:54:07","guid":{"rendered":"https:\/\/ilonalipp.de\/?page_id=833"},"modified":"2026-09-19T11:18:58","modified_gmt":"2026-09-19T09:18:58","slug":"puzzle-solution","status":"publish","type":"page","link":"https:\/\/ilonalipp.de\/de\/puzzle-solution\/","title":{"rendered":"Puzzle-Solution"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"833\" class=\"elementor elementor-833\">\n\t\t\t\t<div class=\"elementor-element elementor-element-40b6446 e-flex e-con-boxed e-con e-parent\" data-id=\"40b6446\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e238efe elementor-widget elementor-widget-spacer\" data-id=\"e238efe\" data-element_type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-52b621d elementor-widget elementor-widget-heading\" data-id=\"52b621d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Here is the solution to the puzzle!<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7a88bf6 e-flex e-con-boxed e-con e-parent\" data-id=\"7a88bf6\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9222c0f elementor-widget elementor-widget-html\" data-id=\"9222c0f\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"utf-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n  <title>Dr. Ilona Lipp \u00b7 Ingredients of excellent research \u00b7 Solution<\/title>\n  <style>\n    :root {\n      --light-purple: #a48ca4;\n      --dark-purple: #6c5c73;\n      --very-dark-purple: #544454;\n      --light-gray: #f3f3f3;\n      --darker-gray: #e4e4e4;\n      --pale-mauve: #ac9cac;\n      --white: #ffffff;\n    }\n\n    * { box-sizing: border-box; }\n\n    html, body { min-height: 100%; }\n\n    body {\n      margin: 0;\n      padding: 24px;\n      background: #d8d5d8;\n      color: var(--very-dark-purple);\n      font-family: Roboto, \"Nimbus Sans\", Arial, sans-serif;\n    }\n\n    .screen-controls {\n      width: 148mm;\n      margin: 0 auto 14px;\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      gap: 10px;\n      color: #3e3540;\n      font-size: 13px;\n    }\n\n    button {\n      appearance: none;\n      border: 1px solid #b8adb9;\n      border-radius: 999px;\n      padding: 7px 13px;\n      background: #fff;\n      color: #493c4b;\n      font: inherit;\n      cursor: pointer;\n    }\n\n    button:hover {\n      background: var(--dark-purple);\n      border-color: var(--dark-purple);\n      color: #fff;\n    }\n\n    .flyer {\n      position: relative;\n      isolation: isolate;\n      width: 148mm;\n      height: 210mm;\n      margin: 0 auto;\n      overflow: hidden;\n      padding: 8.2mm 10mm 7.2mm;\n      background: var(--light-gray);\n      box-shadow: 0 4px 24px rgba(50, 39, 52, 0.22);\n    }\n\n    .flyer::before {\n      content: \"\";\n      position: absolute;\n      inset: 0 0 auto;\n      height: 3.8mm;\n      background: var(--very-dark-purple);\n      z-index: -1;\n    }\n\n    .brandline {\n      min-height: 7.3mm;\n      display: flex;\n      justify-content: space-between;\n      align-items: flex-start;\n      gap: 8mm;\n    }\n\n    .brandline__name {\n      display: block;\n      font-size: 8.8pt;\n      font-weight: 800;\n      letter-spacing: 0.055em;\n    }\n\n    .brandline__tagline,\n    .brandline__url {\n      display: block;\n      margin-top: 0.55mm;\n      color: var(--dark-purple);\n      font-size: 6.4pt;\n      line-height: 1.2;\n    }\n\n    .brandline__url {\n      margin-top: 0;\n      font-size: 7.1pt;\n      white-space: nowrap;\n    }\n\n    .intro {\n      margin-top: 0.3mm;\n      text-align: center;\n    }\n\n    .eyebrow {\n      display: inline-block;\n      margin: 0 0 1.25mm;\n      padding: 1.1mm 3mm 0.95mm;\n      border-radius: 999px;\n      background: var(--dark-purple);\n      color: var(--white);\n      font-size: 6.4pt;\n      font-weight: 800;\n      letter-spacing: 0.13em;\n      text-transform: uppercase;\n    }\n\n    h1 {\n      margin: 0;\n      color: var(--very-dark-purple);\n      font-size: 18.5pt;\n      font-weight: 800;\n      letter-spacing: -0.02em;\n      line-height: 1;\n      white-space: nowrap;\n    }\n\n    h1 span { color: var(--dark-purple); }\n\n    .instruction {\n      margin: 1.25mm 0 0;\n      color: var(--dark-purple);\n      font-size: 7.7pt;\n      line-height: 1.25;\n    }\n\n    .puzzle-stage {\n      width: 128mm;\n      margin: 1.8mm auto 0;\n      display: grid;\n      grid-template-columns: 23mm 78mm 23mm;\n      column-gap: 2mm;\n      align-items: center;\n    }\n\n    .direction-legend {\n      margin: 0;\n      display: flex;\n      flex-direction: column;\n      justify-content: center;\n      align-items: center;\n      gap: 1.3mm;\n    }\n\n    .direction-legend__label {\n      color: var(--very-dark-purple);\n      font-size: 5.7pt;\n      font-weight: 700;\n      letter-spacing: 0.04em;\n      text-transform: uppercase;\n      text-align: center;\n      line-height: 1.15;\n    }\n\n    .direction-arrows {\n      display: grid;\n      grid-template-columns: repeat(2, 4.7mm);\n      justify-content: center;\n      gap: 1.15mm;\n    }\n\n    .direction-arrow {\n      width: 4.7mm;\n      height: 4.7mm;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      border: 0.35mm solid var(--light-purple);\n      border-radius: 50%;\n      background: var(--white);\n      color: var(--dark-purple);\n      font-size: 8.2pt;\n      font-weight: 700;\n      line-height: 1;\n    }\n\n    .puzzle-panel {\n      position: relative;\n      width: 78mm;\n      height: 78mm;\n      margin: 0;\n      padding: 3.15mm;\n      border: 0.4mm solid var(--light-purple);\n      border-radius: 4mm;\n      background: var(--white);\n      box-shadow: 0 1.2mm 4mm rgba(84, 68, 84, 0.06);\n    }\n\n    .solution-side {\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      gap: 1mm;\n      color: var(--dark-purple);\n      text-align: center;\n    }\n\n    .solution-side strong {\n      font-size: 5.8pt;\n      font-weight: 800;\n      letter-spacing: 0.055em;\n      text-transform: uppercase;\n    }\n\n    .word-highlights {\n      position: absolute;\n      z-index: 1;\n      left: 3.15mm;\n      top: 3.15mm;\n      width: 71mm;\n      height: 71mm;\n      overflow: visible;\n      pointer-events: none;\n    }\n\n    .word-highlight {\n      fill: none;\n      stroke-linecap: round;\n      stroke-width: 0.72;\n      opacity: 0.3;\n    }\n\n    .letter-grid {\n      position: relative;\n      z-index: 2;\n      width: 71mm;\n      height: 71mm;\n      display: grid;\n      grid-template-columns: repeat(17, 1fr);\n      grid-template-rows: repeat(17, 1fr);\n      place-items: center;\n    }\n\n    .letter {\n      width: 100%;\n      height: 100%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      border-radius: 50%;\n      color: var(--very-dark-purple);\n      font-size: 7.35pt;\n      font-weight: 700;\n      line-height: 1;\n    }\n\n    .answers {\n      position: relative;\n      z-index: 2;\n      width: 128mm;\n      margin: 2.1mm auto 0;\n    }\n\n    .answer-instructions {\n      margin: 0 0 3.3mm;\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 2mm;\n    }\n\n    .answer-instruction {\n      min-height: 11.2mm;\n      margin: 0;\n      padding: 1.15mm 1.55mm;\n      display: flex;\n      align-items: flex-start;\n      gap: 1.2mm;\n      border: 0.22mm solid rgba(164, 140, 164, 0.58);\n      border-radius: 1.8mm;\n      background: rgba(255, 255, 255, 0.68);\n      color: var(--dark-purple);\n      font-size: 5pt;\n      line-height: 1.18;\n    }\n\n    .answer-instruction__number {\n      flex: 0 0 auto;\n      width: 4mm;\n      height: 4mm;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      border-radius: 50%;\n      background: var(--dark-purple);\n      color: var(--white);\n      font-size: 5.3pt;\n      font-weight: 800;\n      line-height: 1;\n    }\n\n    .answer-instruction strong {\n      color: var(--very-dark-purple);\n      font-weight: 800;\n    }\n\n    .answer-instruction__copy {\n      display: block;\n      white-space: nowrap;\n    }\n\n    .answer-grid {\n      display: grid;\n      grid-template-columns: 70mm 56mm;\n      grid-auto-flow: column;\n      grid-template-rows: repeat(6, 6.8mm);\n      column-gap: 2mm;\n      row-gap: 1mm;\n    }\n\n    .answer-slot {\n      min-width: 0;\n      display: flex;\n      align-items: center;\n    }\n\n    .answer-group {\n      display: inline-flex;\n      align-items: center;\n      gap: 0;\n    }\n\n    .answer-separator {\n      flex: 0 0 auto;\n      width: 2.4mm;\n      height: 6.8mm;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      padding-bottom: 0;\n      color: var(--dark-purple);\n      font-size: 7pt;\n      font-weight: 800;\n      text-align: center;\n      line-height: 1;\n    }\n\n    .answer-separator--space::before {\n      content: \"\u2022\";\n      color: var(--dark-purple);\n      font-size: 5.8pt;\n      line-height: 1;\n    }\n\n    .answer-box {\n      position: relative;\n      flex: 0 0 auto;\n      width: 4.22mm;\n      height: 6.8mm;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      padding-top: 0.65mm;\n      border: 0;\n      border-right: 0.18mm solid var(--light-purple);\n      border-bottom: 0.32mm solid var(--light-purple);\n      border-radius: 0;\n      background: transparent;\n      color: var(--very-dark-purple);\n      font-size: 7pt;\n      font-weight: 800;\n      line-height: 1;\n    }\n\n    .answer-group .answer-box:first-child {\n      border-left: 0.18mm solid var(--light-purple);\n    }\n\n    .answer-slot--short .answer-box {\n      width: 4.46mm;\n    }\n\n    .answer-box.is-key {\n      border-bottom: 0.55mm solid var(--dark-purple);\n      background: rgba(164, 140, 164, 0.3);\n    }\n\n    .answer-box.is-key::after {\n      content: attr(data-key);\n      position: absolute;\n      top: 0.2mm;\n      right: 0.25mm;\n      color: var(--very-dark-purple);\n      font-size: 4pt;\n      font-weight: 800;\n      line-height: 1;\n    }\n\n    .answer-box.is-hint {\n      color: var(--dark-purple);\n    }\n\n    .reveal {\n      position: relative;\n      z-index: 2;\n      width: 116mm;\n      min-height: 13.4mm;\n      margin: 4.5mm auto 0;\n      padding: 2.2mm 4mm;\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      gap: 4mm;\n      border-radius: 3.5mm;\n      background: var(--very-dark-purple);\n      color: var(--white);\n      box-shadow: 0 1mm 3mm rgba(84, 68, 84, 0.16);\n    }\n\n    .reveal__label {\n      min-width: 35mm;\n    }\n\n    .reveal__label strong {\n      display: block;\n      font-size: 6.8pt;\n      font-weight: 800;\n      letter-spacing: 0.075em;\n      text-transform: uppercase;\n    }\n\n    .reveal__label span {\n      display: block;\n      margin-top: 0.75mm;\n      color: var(--darker-gray);\n      font-size: 5.5pt;\n      line-height: 1.15;\n    }\n\n    .reveal-boxes {\n      display: flex;\n      gap: 1.05mm;\n    }\n\n    .reveal-box {\n      position: relative;\n      width: 6.7mm;\n      height: 7.2mm;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      border-radius: 1.05mm;\n      background: var(--white);\n      color: var(--very-dark-purple);\n      font-size: 10pt;\n      font-weight: 800;\n    }\n\n    .reveal-box::before {\n      content: attr(data-key);\n      position: absolute;\n      top: -2.25mm;\n      left: 50%;\n      transform: translateX(-50%);\n      color: var(--darker-gray);\n      font-size: 4.4pt;\n      font-weight: 800;\n    }\n\n    .bottom-footer {\n      position: absolute;\n      z-index: 3;\n      left: 10mm;\n      right: 10mm;\n      bottom: 9.2mm;\n      display: grid;\n      grid-template-columns: 1fr auto 1fr;\n      align-items: center;\n      column-gap: 2.2mm;\n      color: var(--very-dark-purple);\n      font-size: 4.65pt;\n      line-height: 1.1;\n      white-space: nowrap;\n    }\n\n    .bottom-footer__attribution {\n      color: var(--dark-purple);\n      text-align: left;\n    }\n\n    .bottom-footer__divider {\n      color: var(--light-purple);\n      font-size: 6pt;\n      line-height: 1;\n    }\n\n    .bottom-footer__prompt {\n      font-weight: 800;\n      text-align: right;\n    }\n\n    .solution-check {\n      flex: 0 0 auto;\n      width: 20mm;\n      height: 20mm;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      padding-bottom: 0.6mm;\n      border: 0.6mm solid var(--dark-purple);\n      border-radius: 50%;\n      background: var(--white);\n      color: var(--dark-purple);\n      font-size: 20pt;\n      font-weight: 800;\n      line-height: 1;\n    }\n\n    .answer-box.is-solution {\n      color: var(--very-dark-purple);\n      font-size: 6.2pt;\n    }\n\n    .landscape {\n      position: absolute;\n      z-index: 0;\n      left: 0;\n      right: 0;\n      bottom: 0;\n      width: 100%;\n      height: 12mm;\n      pointer-events: none;\n    }\n\n    @page {\n      size: A5 portrait;\n      margin: 0;\n    }\n\n    @media print {\n      html, body {\n        width: 148mm;\n        height: 210mm;\n      }\n\n      body {\n        padding: 0;\n        background: transparent;\n        print-color-adjust: exact;\n        -webkit-print-color-adjust: exact;\n      }\n\n      .screen-controls { display: none; }\n\n      .flyer {\n        margin: 0;\n        box-shadow: none;\n      }\n    }\n  <\/style>\n<\/head>\n<body>\n  <div class=\"screen-controls\" aria-label=\"Preview controls\">\n    <span>A5 solution preview. The toolbar is hidden when printing.<\/span>\n    <button type=\"button\" data-print>Print \/ Save PDF<\/button>\n  <\/div>\n\n  <main class=\"flyer\" aria-label=\"A5 word-search solution\">\n    <header class=\"brandline\">\n      <div>\n        <strong class=\"brandline__name\">Dr. Ilona Lipp<\/strong>\n        <span class=\"brandline__tagline\">Supporting excellence with integrity.<\/span>\n      <\/div>\n      <span class=\"brandline__url\">ilonalipp.de<\/span>\n    <\/header>\n\n    <section class=\"intro\">\n      <p class=\"eyebrow\">Research word search \u00b7 solution<\/p>\n      <h1>Ingredients of <span>excellent research<\/span><\/h1>\n      <p class=\"instruction\">The 12 factors and the 13th ingredient revealed.<\/p>\n    <\/section>\n\n    <section class=\"puzzle-stage\">\n      <div class=\"direction-legend\" aria-label=\"Words may appear in any direction\">\n        <span class=\"direction-legend__label\">Any direction<\/span>\n        <span class=\"direction-arrows\" aria-hidden=\"true\">\n          <span class=\"direction-arrow\">\u2191<\/span>\n          <span class=\"direction-arrow\">\u2197<\/span>\n          <span class=\"direction-arrow\">\u2192<\/span>\n          <span class=\"direction-arrow\">\u2198<\/span>\n          <span class=\"direction-arrow\">\u2193<\/span>\n          <span class=\"direction-arrow\">\u2199<\/span>\n          <span class=\"direction-arrow\">\u2190<\/span>\n          <span class=\"direction-arrow\">\u2196<\/span>\n        <\/span>\n      <\/div>\n\n      <div class=\"puzzle-panel\" aria-label=\"Solved 17 by 17 letter grid\">\n        <svg class=\"word-highlights\" id=\"word-highlights\" viewBox=\"0 0 17 17\" aria-hidden=\"true\"><\/svg>\n        <div class=\"letter-grid\" id=\"letter-grid\"><\/div>\n      <\/div>\n\n      <aside class=\"solution-side\" aria-label=\"Solution\">\n        <strong>Solution<\/strong>\n        <span class=\"solution-check\" aria-hidden=\"true\">\u2713<\/span>\n      <\/aside>\n    <\/section>\n\n    <section class=\"answers\" aria-labelledby=\"answers-heading\">\n      <div class=\"answer-instructions\" id=\"answers-heading\">\n        <p class=\"answer-instruction\">\n          <span class=\"answer-instruction__number\">1<\/span>\n          <span class=\"answer-instruction__copy\">The 12 hidden factors are highlighted<br>in the grid and completed in the<br><strong>matching answer spaces<\/strong> below.<\/span>\n        <\/p>\n        <p class=\"answer-instruction\">\n          <span class=\"answer-instruction__number\">2<\/span>\n          <span class=\"answer-instruction__copy\">Read the seven numbered <strong>purple fields<\/strong><br>in numerical order. Together they reveal<br>the 13th ingredient.<\/span>\n        <\/p>\n      <\/div>\n      <div class=\"answer-grid\" id=\"answer-grid\"><\/div>\n    <\/section>\n\n    <section class=\"reveal\" aria-label=\"The thirteenth ingredient\">\n      <div class=\"reveal__label\">\n        <strong>The 13th ingredient<\/strong>\n        <span>The seven numbered letters spell:<\/span>\n      <\/div>\n      <div class=\"reveal-boxes\" id=\"reveal-boxes\"><\/div>\n    <\/section>\n\n    <footer class=\"bottom-footer\">\n      <span class=\"bottom-footer__attribution\">This puzzle and flyer were co-created with ChatGPT.<\/span>\n      <span class=\"bottom-footer__divider\" aria-hidden=\"true\">\u2022<\/span>\n      <span class=\"bottom-footer__prompt\">Explore training, coaching and mediation at ilonalipp.de.<\/span>\n    <\/footer>\n\n    <svg class=\"landscape\" viewBox=\"0 0 1480 120\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n      <path d=\"M0 120 L0 104 L245 104 L365 73 L485 104 L650 54 L820 104 L1015 70 L1195 104 L1360 77 L1480 98 L1480 120 Z\" fill=\"#e4e4e4\"\/>\n      <path d=\"M0 120 L0 111 L390 111 L520 88 L675 111 L865 72 L1045 111 L1215 86 L1360 111 L1480 94 L1480 120 Z\" fill=\"#ac9cac\"\/>\n      <rect x=\"0\" y=\"111\" width=\"1480\" height=\"9\" fill=\"#6c5c73\"\/>\n    <\/svg>\n  <\/main>\n\n  <script>\n    \/\/ Every row must contain exactly 17 letters.\n    const gridRows = [\n      \"BSUBNCSEECOHOCCEE\",\n      \"IUOBOOSSCIEESOYES\",\n      \"TBLLULAURLSYDMBGA\",\n      \"RLAFTLOGIRIISMRMO\",\n      \"AEICTASATANTNUSBS\",\n      \"NEBGCBGRIGOURNBHA\",\n      \"SREPRODUCIBILITYS\",\n      \"PRFEERUOAEHURCGSY\",\n      \"AOHGAAMNLYYATANLM\",\n      \"RRLGTTINTEGRITYEG\",\n      \"ECESIILHHAMNUIEIT\",\n      \"NUOUVOKOISBONONRS\",\n      \"CLININNENTAINNLOH\",\n      \"YTEITETAKIOULMMFI\",\n      \"SUNTYGECIROYNILLN\",\n      \"EROELBITNTENFKTSE\",\n      \"SELFMANAGEMENTAYA\"\n    ];\n\n    \/*\n      The solution page fills every answer field.\n      Each key index counts letters only, beginning with 1.\n    *\/\n    const answerTemplates = [\n      { solution: \"CRITICAL THINKING\", groups: [8, 8], separator: \"space\", hintIndex: 1 },\n      { solution: \"REPRODUCIBILITY\", groups: [15], hintIndex: 1, keys: [{ index: 3, number: 4 }] },\n      { solution: \"ACCOUNTABILITY\", groups: [14], hintIndex: 1, keys: [{ index: 5, number: 2 }] },\n      { solution: \"SELF-MANAGEMENT\", groups: [4, 10], separator: \"hyphen\", hintIndex: 5, keys: [{ index: 1, number: 1 }] },\n      { solution: \"COLLABORATION\", groups: [13], hintIndex: 1 },\n      { solution: \"COMMUNICATION\", groups: [13], hintIndex: 1 },\n      { solution: \"ERROR CULTURE\", groups: [5, 7], separator: \"space\", hintIndex: 1, keys: [{ index: 4, number: 5 }] },\n      { solution: \"TRANSPARENCY\", groups: [12], hintIndex: 1, keys: [{ index: 6, number: 3 }] },\n      { solution: \"CREATIVITY\", groups: [10], hintIndex: 1, keys: [{ index: 2, number: 6 }] },\n      { solution: \"INTEGRITY\", groups: [9], hintIndex: 1, keys: [{ index: 3, number: 7 }] },\n      { solution: \"CODING\", groups: [6], hintIndex: 1 },\n      { solution: \"RIGOUR\", groups: [6], hintIndex: 1 }\n    ];\n\n    if (gridRows.length !== 17 || gridRows.some(row => row.length !== 17)) {\n      throw new Error(\"The puzzle must remain a 17 \u00d7 17 grid.\");\n    }\n\n    const grid = document.querySelector(\"#letter-grid\");\n\n    gridRows.forEach(row => {\n      [...row].forEach(letter => {\n        const cell = document.createElement(\"span\");\n        cell.className = \"letter\";\n        cell.textContent = letter;\n        grid.appendChild(cell);\n      });\n    });\n\n    const directions = [\n      [-1, -1], [-1, 0], [-1, 1],\n      [0, -1],            [0, 1],\n      [1, -1],  [1, 0],  [1, 1]\n    ];\n\n    function findWord(word) {\n      for (let row = 0; row < 17; row += 1) {\n        for (let column = 0; column < 17; column += 1) {\n          for (const [rowStep, columnStep] of directions) {\n            const found = [...word].every((letter, index) => {\n              const nextRow = row + index * rowStep;\n              const nextColumn = column + index * columnStep;\n              return gridRows[nextRow]?.[nextColumn] === letter;\n            });\n\n            if (found) return { row, column, rowStep, columnStep };\n          }\n        }\n      }\n\n      return null;\n    }\n\n    const highlightLayer = document.querySelector(\"#word-highlights\");\n    const highlightColours = [\"#a48ca4\", \"#ac9cac\", \"#6c5c73\"];\n\n    answerTemplates.forEach((template, index) => {\n      const word = template.solution.replace(\/[^A-Z]\/g, \"\");\n      const match = findWord(word);\n      if (!match) throw new Error(`Could not locate ${template.solution} in the grid.`);\n\n      const line = document.createElementNS(\"http:\/\/www.w3.org\/2000\/svg\", \"line\");\n      line.classList.add(\"word-highlight\");\n      line.setAttribute(\"x1\", match.column + 0.5);\n      line.setAttribute(\"y1\", match.row + 0.5);\n      line.setAttribute(\"x2\", match.column + (word.length - 1) * match.columnStep + 0.5);\n      line.setAttribute(\"y2\", match.row + (word.length - 1) * match.rowStep + 0.5);\n      line.setAttribute(\"stroke\", highlightColours[index % highlightColours.length]);\n      highlightLayer.appendChild(line);\n    });\n\n    const answerGrid = document.querySelector(\"#answer-grid\");\n\n    answerTemplates.forEach((template, templateIndex) => {\n      const slot = document.createElement(\"div\");\n      slot.className = `answer-slot answer-slot--${templateIndex < 6 ? \"long\" : \"short\"}`;\n      slot.setAttribute(\"aria-label\", `${template.groups.reduce((sum, length) => sum + length, 0)} letters`);\n\n      let letterIndex = 0;\n      const solutionLetters = template.solution.replace(\/[^A-Z]\/g, \"\");\n\n      template.groups.forEach((groupLength, groupIndex) => {\n        if (groupIndex > 0) {\n          const separator = document.createElement(\"span\");\n          separator.className = `answer-separator answer-separator--${template.separator}`;\n          separator.textContent = template.separator === \"hyphen\" ? \"\u2013\" : \"\";\n          slot.appendChild(separator);\n        }\n\n        const group = document.createElement(\"span\");\n        group.className = \"answer-group\";\n\n        for (let index = 0; index < groupLength; index += 1) {\n          letterIndex += 1;\n          const box = document.createElement(\"span\");\n          box.className = \"answer-box\";\n          const key = template.keys?.find(candidate => candidate.index === letterIndex);\n\n          if (key) {\n            box.classList.add(\"is-key\");\n            box.dataset.key = key.number;\n          }\n\n          box.classList.add(\"is-solution\");\n          box.textContent = solutionLetters[letterIndex - 1];\n\n          group.appendChild(box);\n        }\n\n        slot.appendChild(group);\n      });\n\n      answerGrid.appendChild(slot);\n    });\n\n    const revealBoxes = document.querySelector(\"#reveal-boxes\");\n\n    const finalIngredient = \"SUPPORT\";\n\n    for (let key = 1; key <= 7; key += 1) {\n      const box = document.createElement(\"span\");\n      box.className = \"reveal-box\";\n      box.dataset.key = key;\n      box.textContent = finalIngredient[key - 1];\n      revealBoxes.appendChild(box);\n    }\n\n    document.querySelector(\"[data-print]\").addEventListener(\"click\", () => window.print());\n  <\/script>\n<\/body>\n<\/html>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Here is the solution to the puzzle! Dr. Ilona Lipp \u00b7 Ingredients of excellent research \u00b7 Solution A5 solution preview. The toolbar is hidden when printing. Print \/ Save PDF Dr. Ilona Lipp Supporting excellence with integrity. ilonalipp.de Research word search \u00b7 solution Ingredients of excellent research The 12 factors and the 13th ingredient revealed. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_eb_attr":"","footnotes":""},"class_list":["post-833","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":7}},"_links":{"self":[{"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/pages\/833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/comments?post=833"}],"version-history":[{"count":9,"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/pages\/833\/revisions"}],"predecessor-version":[{"id":843,"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/pages\/833\/revisions\/843"}],"wp:attachment":[{"href":"https:\/\/ilonalipp.de\/de\/wp-json\/wp\/v2\/media?parent=833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}