{"title":"Homepage","description":null,"products":[{"product_id":"moppenboeken-60-grappige-nederlandse-moppen","title":"Moppenboek – 80 Grappige Nederlandse Moppen","description":"\u003cstyle\u003e\n  .up-jokebook {\n    --up-blue: #3f63f4;\n    --up-blue-dark: #2946c7;\n    --up-blue-light: #eef3ff;\n    --up-text: #171717;\n    --up-muted: #626776;\n    --up-border: #dfe5f5;\n    --up-white: #ffffff;\n\n    width: 100%;\n    max-width: 900px;\n    margin: 0 auto;\n    color: var(--up-text);\n    font-family: Inter, Arial, sans-serif;\n    line-height: 1.65;\n  }\n\n  .up-jokebook,\n  .up-jokebook * {\n    box-sizing: border-box;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p,\n  .up-jokebook span,\n  .up-jokebook li,\n  .up-jokebook strong {\n    word-break: normal !important;\n    overflow-wrap: normal !important;\n    hyphens: none !important;\n    white-space: normal !important;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p {\n    margin-top: 0;\n  }\n\n  \/* Introductie *\/\n  .up-jokebook__hero {\n    position: relative;\n    width: 100%;\n    overflow: hidden;\n    padding: 42px 34px;\n    margin-bottom: 24px;\n    border: 1px solid var(--up-border);\n    border-radius: 26px;\n    background:\n      radial-gradient(\n        circle at top right,\n        rgba(63, 99, 244, 0.16),\n        transparent 35%\n      ),\n      linear-gradient(135deg, #ffffff 0%, #f5f7ff 100%);\n  }\n\n  .up-jokebook__label {\n    display: inline-flex;\n    align-items: center;\n    margin-bottom: 18px;\n    padding: 7px 14px;\n    border-radius: 999px;\n    background: var(--up-blue-light);\n    color: var(--up-blue);\n    font-size: 12px;\n    font-weight: 700;\n    line-height: 1.3;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n  }\n\n  .up-jokebook__title {\n    width: 100%;\n    max-width: 620px;\n    margin-bottom: 14px;\n    color: var(--up-text);\n    font-size: clamp(30px, 4vw, 44px);\n    font-weight: 800;\n    line-height: 1.08;\n    letter-spacing: -0.04em;\n  }\n\n  .up-jokebook__intro {\n    width: 100%;\n    max-width: 680px;\n    margin-bottom: 24px;\n    color: var(--up-muted);\n    font-size: 16px;\n    line-height: 1.65;\n  }\n\n  .up-jokebook__highlights {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 9px;\n    width: 100%;\n  }\n\n  .up-jokebook__highlight {\n    display: inline-flex;\n    align-items: center;\n    padding: 8px 13px;\n    border: 1px solid var(--up-border);\n    border-radius: 999px;\n    background: var(--up-white);\n    color: var(--up-text);\n    font-size: 13px;\n    font-weight: 600;\n    line-height: 1.3;\n  }\n\n  \/* Algemene secties *\/\n  .up-jokebook__section {\n    width: 100%;\n    padding: 30px;\n    margin-bottom: 22px;\n    border: 1px solid var(--up-border);\n    border-radius: 22px;\n    background: var(--up-white);\n  }\n\n  .up-jokebook__section-title {\n    width: 100%;\n    margin-bottom: 10px;\n    color: var(--up-text);\n    font-size: 24px;\n    font-weight: 800;\n    line-height: 1.25;\n    letter-spacing: -0.025em;\n  }\n\n  .up-jokebook__section-text {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 15px;\n    line-height: 1.6;\n  }\n\n  \/* Wat ontvang je *\/\n  .up-jokebook__list {\n    display: grid;\n    gap: 12px;\n    width: 100%;\n    padding: 0;\n    margin: 21px 0 0;\n    list-style: none;\n  }\n\n  .up-jokebook__list li {\n    position: relative;\n    width: 100%;\n    padding: 14px 16px 14px 47px;\n    border-radius: 14px;\n    background: var(--up-blue-light);\n    color: var(--up-text);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__list li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 50%;\n    left: 16px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 22px;\n    height: 22px;\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 13px;\n    font-weight: 800;\n    transform: translateY(-50%);\n  }\n\n  \/* Voorbeeldmoppen *\/\n  .up-jokebook__examples {\n    display: grid;\n    gap: 13px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__joke {\n    width: 100%;\n    padding: 18px 19px;\n    border-left: 4px solid var(--up-blue);\n    border-radius: 4px 15px 15px 4px;\n    background: #f8f9ff;\n  }\n\n  .up-jokebook__question {\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-text);\n    font-size: 15px;\n    font-weight: 750;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__answer {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-blue-dark);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  \/* Zo werkt het *\/\n  .up-jokebook__steps {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__step {\n    display: grid;\n    grid-template-columns: 42px minmax(0, 1fr);\n    grid-template-rows: auto auto;\n    column-gap: 14px;\n    align-items: center;\n\n    width: 100%;\n    min-width: 0;\n    padding: 16px 18px;\n\n    border: 1px solid rgba(63, 99, 244, 0.16);\n    border-radius: 16px;\n    background: var(--up-blue-light);\n    text-align: left;\n  }\n\n  .up-jokebook__step-number {\n    grid-column: 1;\n    grid-row: 1 \/ span 2;\n\n    display: flex;\n    align-items: center;\n    justify-content: center;\n\n    width: 38px;\n    height: 38px;\n    margin: 0;\n\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 14px;\n    font-weight: 800;\n    line-height: 1;\n  }\n\n  .up-jokebook__step-content {\n    grid-column: 2;\n    min-width: 0;\n    width: 100%;\n  }\n\n  .up-jokebook__step h3 {\n    width: 100%;\n    margin: 0 0 3px;\n    color: var(--up-text);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.3;\n    text-align: left;\n  }\n\n  .up-jokebook__step p {\n    width: 100%;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 13px;\n    line-height: 1.5;\n    text-align: left;\n  }\n\n  \/* Belangrijke informatie *\/\n  .up-jokebook__notice {\n    width: 100%;\n    padding: 22px;\n    margin-bottom: 22px;\n    border: 1px solid rgba(63, 99, 244, 0.25);\n    border-radius: 18px;\n    background: var(--up-blue-light);\n  }\n\n  .up-jokebook__notice strong {\n    display: block;\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-blue-dark);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.4;\n  }\n\n  .up-jokebook__notice p {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Afsluiting *\/\n  .up-jokebook__cta {\n    width: 100%;\n    padding: 34px 26px;\n    border-radius: 24px;\n    background: var(--up-blue);\n    color: var(--up-white);\n    text-align: center;\n  }\n\n  .up-jokebook__cta h2 {\n    width: 100%;\n    margin-bottom: 9px;\n    color: var(--up-white);\n    font-size: 25px;\n    font-weight: 800;\n    line-height: 1.25;\n  }\n\n  .up-jokebook__cta p {\n    width: 100%;\n    max-width: 580px;\n    margin: 0 auto;\n    color: rgba(255, 255, 255, 0.88);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Smalle productkolommen *\/\n  @media screen and (max-width: 1100px) {\n    .up-jokebook__hero {\n      padding: 32px 26px;\n    }\n\n    .up-jokebook__title {\n      font-size: 34px;\n      line-height: 1.12;\n    }\n\n    .up-jokebook__section {\n      padding: 26px 22px;\n    }\n  }\n\n  \/* Mobiele weergave *\/\n  @media screen and (max-width: 749px) {\n    .up-jokebook__hero {\n      padding: 28px 20px;\n      border-radius: 20px;\n    }\n\n    .up-jokebook__title {\n      font-size: 29px;\n      line-height: 1.13;\n      letter-spacing: -0.03em;\n    }\n\n    .up-jokebook__intro {\n      font-size: 15px;\n    }\n\n    .up-jokebook__section {\n      padding: 24px 18px;\n      border-radius: 18px;\n    }\n\n    .up-jokebook__section-title {\n      font-size: 22px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 38px minmax(0, 1fr);\n      column-gap: 12px;\n      padding: 15px;\n    }\n\n    .up-jokebook__step-number {\n      width: 35px;\n      height: 35px;\n    }\n\n    .up-jokebook__notice {\n      padding: 20px 18px;\n    }\n\n    .up-jokebook__cta {\n      padding: 30px 20px;\n      border-radius: 20px;\n    }\n  }\n\n  \/* Zeer smalle schermen *\/\n  @media screen and (max-width: 390px) {\n    .up-jokebook__title {\n      font-size: 26px;\n    }\n\n    .up-jokebook__label {\n      font-size: 11px;\n    }\n\n    .up-jokebook__highlight {\n      font-size: 12px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 34px minmax(0, 1fr);\n      column-gap: 10px;\n      padding: 14px 12px;\n    }\n\n    .up-jokebook__step-number {\n      width: 32px;\n      height: 32px;\n      font-size: 13px;\n    }\n\n    .up-jokebook__step h3 {\n      font-size: 15px;\n    }\n\n    .up-jokebook__step p {\n      font-size: 12px;\n    }\n  }\n\u003c\/style\u003e\n\u003cdiv class=\"up-jokebook\"\u003e\n\u003c!-- Introductie --\u003e\n\u003csection class=\"up-jokebook__hero\"\u003e\n\u003cdiv class=\"up-jokebook__label\"\u003eUnlimited Pages Original\u003c\/div\u003e\n\u003ch2 class=\"up-jokebook__title\"\u003e80 Hilarische Nederlandse moppen\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__intro\"\u003eEen vrolijke verzameling Nederlandse moppen voor kinderen en gezinnen. Ideaal voor thuis, onderweg, op vakantie, in de klas of tijdens een gezellig moment met familie en vrienden.\u003c\/p\u003e\n\u003cdiv class=\"up-jokebook__highlights\"\u003e\n\u003cspan class=\"up-jokebook__highlight\"\u003e Nederlandstalig \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Direct digitaal beschikbaar \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e A4-formaat \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Zelf te printen \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Wat ontvang je --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eWat ontvang je?\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__section-text\"\u003eJe ontvangt een compleet digitaal moppenboekje dat direct klaar is voor gebruik.\u003c\/p\u003e\n\u003cul class=\"up-jokebook__list\"\u003e\n\u003cli\u003eEen digitaal Nederlands moppenboekje\u003c\/li\u003e\n\u003cli\u003eEen printvriendelijk ontwerp op A4-formaat\u003c\/li\u003e\n\u003cli\u003eEen bestand dat je digitaal kunt bewaren en bekijken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003c!-- Voorbeeldmoppen --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eEen klein voorproefje\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__examples\"\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWaarom kan een skelet nooit liegen?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eOmdat je er dwars doorheen kijkt.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWat zegt een nul tegen een acht?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eMooie riem heb je om!\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eHoe noem je een boemerang die niet terugkomt?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eEen stok.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Zo werkt het --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eZo werkt het\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__steps\"\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eBestel het boekje\u003c\/h3\u003e\n\u003cp\u003eVoeg het moppenboekje toe aan je winkelwagen en rond je bestelling af.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eOntvang het bestand\u003c\/h3\u003e\n\u003cp\u003eNa je bestelling ontvang je het digitale bestand.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eLezen en lachen\u003c\/h3\u003e\n\u003cp\u003eBekijk het boekje digitaal of print het uit en geniet van de moppen.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Belangrijke informatie --\u003e\n\u003cdiv class=\"up-jokebook__notice\"\u003e\n\u003cstrong\u003e Let op: dit is een digitaal product \u003c\/strong\u003e\n\u003cp\u003eEr wordt geen fysiek boek per post verstuurd. Je ontvangt een digitaal bestand dat je zelf kunt bekijken, downloaden en printen. Kleuren kunnen per beeldscherm of printer licht afwijken.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- Afsluiting --\u003e\n\u003csection class=\"up-jokebook__cta\"\u003e\n\u003ch2\u003eKlaar voor een flinke dosis humor?\u003c\/h2\u003e\n\u003cp\u003eBestel het Nederlandse moppenboekje en geniet thuis, onderweg of op vakantie van 80 hilarische moppen.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e","brand":"unlimited-pages","offers":[{"title":"Default Title","offer_id":58203382022476,"sku":null,"price":1.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/5423fb5fa7a1759bed9426862545008f-0.png?v=1785166920"},{"product_id":"moppenboek-160-grappige-nederlandse-moppen","title":"Moppenboek – 160 Grappige Nederlandse Moppen","description":"\u003cstyle\u003e\n  .up-jokebook {\n    --up-blue: #3f63f4;\n    --up-blue-dark: #2946c7;\n    --up-blue-light: #eef3ff;\n    --up-text: #171717;\n    --up-muted: #626776;\n    --up-border: #dfe5f5;\n    --up-white: #ffffff;\n\n    width: 100%;\n    max-width: 900px;\n    margin: 0 auto;\n    color: var(--up-text);\n    font-family: Inter, Arial, sans-serif;\n    line-height: 1.65;\n  }\n\n  .up-jokebook,\n  .up-jokebook * {\n    box-sizing: border-box;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p,\n  .up-jokebook span,\n  .up-jokebook li,\n  .up-jokebook strong {\n    word-break: normal !important;\n    overflow-wrap: normal !important;\n    hyphens: none !important;\n    white-space: normal !important;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p {\n    margin-top: 0;\n  }\n\n  \/* Introductie *\/\n  .up-jokebook__hero {\n    position: relative;\n    width: 100%;\n    overflow: hidden;\n    padding: 42px 34px;\n    margin-bottom: 24px;\n    border: 1px solid var(--up-border);\n    border-radius: 26px;\n    background:\n      radial-gradient(\n        circle at top right,\n        rgba(63, 99, 244, 0.16),\n        transparent 35%\n      ),\n      linear-gradient(135deg, #ffffff 0%, #f5f7ff 100%);\n  }\n\n  .up-jokebook__label {\n    display: inline-flex;\n    align-items: center;\n    margin-bottom: 18px;\n    padding: 7px 14px;\n    border-radius: 999px;\n    background: var(--up-blue-light);\n    color: var(--up-blue);\n    font-size: 12px;\n    font-weight: 700;\n    line-height: 1.3;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n  }\n\n  .up-jokebook__title {\n    width: 100%;\n    max-width: 620px;\n    margin-bottom: 14px;\n    color: var(--up-text);\n    font-size: clamp(30px, 4vw, 44px);\n    font-weight: 800;\n    line-height: 1.08;\n    letter-spacing: -0.04em;\n  }\n\n  .up-jokebook__intro {\n    width: 100%;\n    max-width: 680px;\n    margin-bottom: 24px;\n    color: var(--up-muted);\n    font-size: 16px;\n    line-height: 1.65;\n  }\n\n  .up-jokebook__highlights {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 9px;\n    width: 100%;\n  }\n\n  .up-jokebook__highlight {\n    display: inline-flex;\n    align-items: center;\n    padding: 8px 13px;\n    border: 1px solid var(--up-border);\n    border-radius: 999px;\n    background: var(--up-white);\n    color: var(--up-text);\n    font-size: 13px;\n    font-weight: 600;\n    line-height: 1.3;\n  }\n\n  \/* Algemene secties *\/\n  .up-jokebook__section {\n    width: 100%;\n    padding: 30px;\n    margin-bottom: 22px;\n    border: 1px solid var(--up-border);\n    border-radius: 22px;\n    background: var(--up-white);\n  }\n\n  .up-jokebook__section-title {\n    width: 100%;\n    margin-bottom: 10px;\n    color: var(--up-text);\n    font-size: 24px;\n    font-weight: 800;\n    line-height: 1.25;\n    letter-spacing: -0.025em;\n  }\n\n  .up-jokebook__section-text {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 15px;\n    line-height: 1.6;\n  }\n\n  \/* Wat ontvang je *\/\n  .up-jokebook__list {\n    display: grid;\n    gap: 12px;\n    width: 100%;\n    padding: 0;\n    margin: 21px 0 0;\n    list-style: none;\n  }\n\n  .up-jokebook__list li {\n    position: relative;\n    width: 100%;\n    padding: 14px 16px 14px 47px;\n    border-radius: 14px;\n    background: var(--up-blue-light);\n    color: var(--up-text);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__list li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 50%;\n    left: 16px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 22px;\n    height: 22px;\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 13px;\n    font-weight: 800;\n    transform: translateY(-50%);\n  }\n\n  \/* Voorbeeldmoppen *\/\n  .up-jokebook__examples {\n    display: grid;\n    gap: 13px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__joke {\n    width: 100%;\n    padding: 18px 19px;\n    border-left: 4px solid var(--up-blue);\n    border-radius: 4px 15px 15px 4px;\n    background: #f8f9ff;\n  }\n\n  .up-jokebook__question {\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-text);\n    font-size: 15px;\n    font-weight: 750;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__answer {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-blue-dark);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  \/* Zo werkt het *\/\n  .up-jokebook__steps {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__step {\n    display: grid;\n    grid-template-columns: 42px minmax(0, 1fr);\n    grid-template-rows: auto auto;\n    column-gap: 14px;\n    align-items: center;\n\n    width: 100%;\n    min-width: 0;\n    padding: 16px 18px;\n\n    border: 1px solid rgba(63, 99, 244, 0.16);\n    border-radius: 16px;\n    background: var(--up-blue-light);\n    text-align: left;\n  }\n\n  .up-jokebook__step-number {\n    grid-column: 1;\n    grid-row: 1 \/ span 2;\n\n    display: flex;\n    align-items: center;\n    justify-content: center;\n\n    width: 38px;\n    height: 38px;\n    margin: 0;\n\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 14px;\n    font-weight: 800;\n    line-height: 1;\n  }\n\n  .up-jokebook__step-content {\n    grid-column: 2;\n    min-width: 0;\n    width: 100%;\n  }\n\n  .up-jokebook__step h3 {\n    width: 100%;\n    margin: 0 0 3px;\n    color: var(--up-text);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.3;\n    text-align: left;\n  }\n\n  .up-jokebook__step p {\n    width: 100%;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 13px;\n    line-height: 1.5;\n    text-align: left;\n  }\n\n  \/* Belangrijke informatie *\/\n  .up-jokebook__notice {\n    width: 100%;\n    padding: 22px;\n    margin-bottom: 22px;\n    border: 1px solid rgba(63, 99, 244, 0.25);\n    border-radius: 18px;\n    background: var(--up-blue-light);\n  }\n\n  .up-jokebook__notice strong {\n    display: block;\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-blue-dark);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.4;\n  }\n\n  .up-jokebook__notice p {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Afsluiting *\/\n  .up-jokebook__cta {\n    width: 100%;\n    padding: 34px 26px;\n    border-radius: 24px;\n    background: var(--up-blue);\n    color: var(--up-white);\n    text-align: center;\n  }\n\n  .up-jokebook__cta h2 {\n    width: 100%;\n    margin-bottom: 9px;\n    color: var(--up-white);\n    font-size: 25px;\n    font-weight: 800;\n    line-height: 1.25;\n  }\n\n  .up-jokebook__cta p {\n    width: 100%;\n    max-width: 580px;\n    margin: 0 auto;\n    color: rgba(255, 255, 255, 0.88);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Smalle productkolommen *\/\n  @media screen and (max-width: 1100px) {\n    .up-jokebook__hero {\n      padding: 32px 26px;\n    }\n\n    .up-jokebook__title {\n      font-size: 34px;\n      line-height: 1.12;\n    }\n\n    .up-jokebook__section {\n      padding: 26px 22px;\n    }\n  }\n\n  \/* Mobiele weergave *\/\n  @media screen and (max-width: 749px) {\n    .up-jokebook__hero {\n      padding: 28px 20px;\n      border-radius: 20px;\n    }\n\n    .up-jokebook__title {\n      font-size: 29px;\n      line-height: 1.13;\n      letter-spacing: -0.03em;\n    }\n\n    .up-jokebook__intro {\n      font-size: 15px;\n    }\n\n    .up-jokebook__section {\n      padding: 24px 18px;\n      border-radius: 18px;\n    }\n\n    .up-jokebook__section-title {\n      font-size: 22px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 38px minmax(0, 1fr);\n      column-gap: 12px;\n      padding: 15px;\n    }\n\n    .up-jokebook__step-number {\n      width: 35px;\n      height: 35px;\n    }\n\n    .up-jokebook__notice {\n      padding: 20px 18px;\n    }\n\n    .up-jokebook__cta {\n      padding: 30px 20px;\n      border-radius: 20px;\n    }\n  }\n\n  \/* Zeer smalle schermen *\/\n  @media screen and (max-width: 390px) {\n    .up-jokebook__title {\n      font-size: 26px;\n    }\n\n    .up-jokebook__label {\n      font-size: 11px;\n    }\n\n    .up-jokebook__highlight {\n      font-size: 12px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 34px minmax(0, 1fr);\n      column-gap: 10px;\n      padding: 14px 12px;\n    }\n\n    .up-jokebook__step-number {\n      width: 32px;\n      height: 32px;\n      font-size: 13px;\n    }\n\n    .up-jokebook__step h3 {\n      font-size: 15px;\n    }\n\n    .up-jokebook__step p {\n      font-size: 12px;\n    }\n  }\n\u003c\/style\u003e\n\u003cdiv class=\"up-jokebook\"\u003e\n\u003c!-- Introductie --\u003e\n\u003csection class=\"up-jokebook__hero\"\u003e\n\u003cdiv class=\"up-jokebook__label\"\u003eUnlimited Pages Original\u003c\/div\u003e\n\u003ch2 class=\"up-jokebook__title\"\u003e160 Hilarische Nederlandse moppen\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__intro\"\u003eEen vrolijke verzameling Nederlandse moppen voor kinderen en gezinnen. Ideaal voor thuis, onderweg, op vakantie, in de klas of tijdens een gezellig moment met familie en vrienden.\u003c\/p\u003e\n\u003cdiv class=\"up-jokebook__highlights\"\u003e\n\u003cspan class=\"up-jokebook__highlight\"\u003e Nederlandstalig \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Direct digitaal beschikbaar \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e A4-formaat \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Zelf te printen \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Wat ontvang je --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eWat ontvang je?\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__section-text\"\u003eJe ontvangt een compleet digitaal moppenboekje dat direct klaar is voor gebruik.\u003c\/p\u003e\n\u003cul class=\"up-jokebook__list\"\u003e\n\u003cli\u003eEen digitaal Nederlands moppenboekje\u003c\/li\u003e\n\u003cli\u003eEen printvriendelijk ontwerp op A4-formaat\u003c\/li\u003e\n\u003cli\u003eEen bestand dat je digitaal kunt bewaren en bekijken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003c!-- Voorbeeldmoppen --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eEen klein voorproefje\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__examples\"\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWaarom kan een skelet nooit liegen?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eOmdat je er dwars doorheen kijkt.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWat zegt een nul tegen een acht?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eMooie riem heb je om!\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eHoe noem je een boemerang die niet terugkomt?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eEen stok.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Zo werkt het --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eZo werkt het\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__steps\"\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eBestel het boekje\u003c\/h3\u003e\n\u003cp\u003eVoeg het moppenboekje toe aan je winkelwagen en rond je bestelling af.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eOntvang het bestand\u003c\/h3\u003e\n\u003cp\u003eNa je bestelling ontvang je het digitale bestand.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eLezen en lachen\u003c\/h3\u003e\n\u003cp\u003eBekijk het boekje digitaal of print het uit en geniet van de moppen.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Belangrijke informatie --\u003e\n\u003cdiv class=\"up-jokebook__notice\"\u003e\n\u003cstrong\u003e Let op: dit is een digitaal product \u003c\/strong\u003e\n\u003cp\u003eEr wordt geen fysiek boek per post verstuurd. Je ontvangt een digitaal bestand dat je zelf kunt bekijken, downloaden en printen. Kleuren kunnen per beeldscherm of printer licht afwijken.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- Afsluiting --\u003e\n\u003csection class=\"up-jokebook__cta\"\u003e\n\u003ch2\u003eKlaar voor een flinke dosis humor?\u003c\/h2\u003e\n\u003cp\u003eBestel het Nederlandse moppenboekje en geniet thuis, onderweg of op vakantie van 80 hilarische moppen.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e","brand":"unlimited-pages","offers":[{"title":"Default Title","offer_id":58218482073932,"sku":null,"price":3.49,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/444493a70e6246b493a4ad75b7f0d898bBrMZwPOMPqszPCR-0.png?v=1785166874"},{"product_id":"joke-book-80-hilarious-english-jokes","title":"Moppenboek - 80 Grappige Engelse  Moppen","description":"\u003cstyle\u003e\n  .up-jokebook {\n    --up-blue: #3f63f4;\n    --up-blue-dark: #2946c7;\n    --up-blue-light: #eef3ff;\n    --up-text: #171717;\n    --up-muted: #626776;\n    --up-border: #dfe5f5;\n    --up-white: #ffffff;\n\n    width: 100%;\n    max-width: 900px;\n    margin: 0 auto;\n    color: var(--up-text);\n    font-family: Inter, Arial, sans-serif;\n    line-height: 1.65;\n  }\n\n  .up-jokebook,\n  .up-jokebook * {\n    box-sizing: border-box;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p,\n  .up-jokebook span,\n  .up-jokebook li,\n  .up-jokebook strong {\n    word-break: normal !important;\n    overflow-wrap: normal !important;\n    hyphens: none !important;\n    white-space: normal !important;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p {\n    margin-top: 0;\n  }\n\n  \/* Introductie *\/\n  .up-jokebook__hero {\n    position: relative;\n    width: 100%;\n    overflow: hidden;\n    padding: 42px 34px;\n    margin-bottom: 24px;\n    border: 1px solid var(--up-border);\n    border-radius: 26px;\n    background:\n      radial-gradient(\n        circle at top right,\n        rgba(63, 99, 244, 0.16),\n        transparent 35%\n      ),\n      linear-gradient(135deg, #ffffff 0%, #f5f7ff 100%);\n  }\n\n  .up-jokebook__label {\n    display: inline-flex;\n    align-items: center;\n    margin-bottom: 18px;\n    padding: 7px 14px;\n    border-radius: 999px;\n    background: var(--up-blue-light);\n    color: var(--up-blue);\n    font-size: 12px;\n    font-weight: 700;\n    line-height: 1.3;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n  }\n\n  .up-jokebook__title {\n    width: 100%;\n    max-width: 620px;\n    margin-bottom: 14px;\n    color: var(--up-text);\n    font-size: clamp(30px, 4vw, 44px);\n    font-weight: 800;\n    line-height: 1.08;\n    letter-spacing: -0.04em;\n  }\n\n  .up-jokebook__intro {\n    width: 100%;\n    max-width: 680px;\n    margin-bottom: 24px;\n    color: var(--up-muted);\n    font-size: 16px;\n    line-height: 1.65;\n  }\n\n  .up-jokebook__highlights {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 9px;\n    width: 100%;\n  }\n\n  .up-jokebook__highlight {\n    display: inline-flex;\n    align-items: center;\n    padding: 8px 13px;\n    border: 1px solid var(--up-border);\n    border-radius: 999px;\n    background: var(--up-white);\n    color: var(--up-text);\n    font-size: 13px;\n    font-weight: 600;\n    line-height: 1.3;\n  }\n\n  \/* Algemene secties *\/\n  .up-jokebook__section {\n    width: 100%;\n    padding: 30px;\n    margin-bottom: 22px;\n    border: 1px solid var(--up-border);\n    border-radius: 22px;\n    background: var(--up-white);\n  }\n\n  .up-jokebook__section-title {\n    width: 100%;\n    margin-bottom: 10px;\n    color: var(--up-text);\n    font-size: 24px;\n    font-weight: 800;\n    line-height: 1.25;\n    letter-spacing: -0.025em;\n  }\n\n  .up-jokebook__section-text {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 15px;\n    line-height: 1.6;\n  }\n\n  \/* Wat ontvang je *\/\n  .up-jokebook__list {\n    display: grid;\n    gap: 12px;\n    width: 100%;\n    padding: 0;\n    margin: 21px 0 0;\n    list-style: none;\n  }\n\n  .up-jokebook__list li {\n    position: relative;\n    width: 100%;\n    padding: 14px 16px 14px 47px;\n    border-radius: 14px;\n    background: var(--up-blue-light);\n    color: var(--up-text);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__list li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 50%;\n    left: 16px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 22px;\n    height: 22px;\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 13px;\n    font-weight: 800;\n    transform: translateY(-50%);\n  }\n\n  \/* Voorbeeldmoppen *\/\n  .up-jokebook__examples {\n    display: grid;\n    gap: 13px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__joke {\n    width: 100%;\n    padding: 18px 19px;\n    border-left: 4px solid var(--up-blue);\n    border-radius: 4px 15px 15px 4px;\n    background: #f8f9ff;\n  }\n\n  .up-jokebook__question {\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-text);\n    font-size: 15px;\n    font-weight: 750;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__answer {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-blue-dark);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  \/* Zo werkt het *\/\n  .up-jokebook__steps {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__step {\n    display: grid;\n    grid-template-columns: 42px minmax(0, 1fr);\n    grid-template-rows: auto auto;\n    column-gap: 14px;\n    align-items: center;\n\n    width: 100%;\n    min-width: 0;\n    padding: 16px 18px;\n\n    border: 1px solid rgba(63, 99, 244, 0.16);\n    border-radius: 16px;\n    background: var(--up-blue-light);\n    text-align: left;\n  }\n\n  .up-jokebook__step-number {\n    grid-column: 1;\n    grid-row: 1 \/ span 2;\n\n    display: flex;\n    align-items: center;\n    justify-content: center;\n\n    width: 38px;\n    height: 38px;\n    margin: 0;\n\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 14px;\n    font-weight: 800;\n    line-height: 1;\n  }\n\n  .up-jokebook__step-content {\n    grid-column: 2;\n    min-width: 0;\n    width: 100%;\n  }\n\n  .up-jokebook__step h3 {\n    width: 100%;\n    margin: 0 0 3px;\n    color: var(--up-text);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.3;\n    text-align: left;\n  }\n\n  .up-jokebook__step p {\n    width: 100%;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 13px;\n    line-height: 1.5;\n    text-align: left;\n  }\n\n  \/* Belangrijke informatie *\/\n  .up-jokebook__notice {\n    width: 100%;\n    padding: 22px;\n    margin-bottom: 22px;\n    border: 1px solid rgba(63, 99, 244, 0.25);\n    border-radius: 18px;\n    background: var(--up-blue-light);\n  }\n\n  .up-jokebook__notice strong {\n    display: block;\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-blue-dark);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.4;\n  }\n\n  .up-jokebook__notice p {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Afsluiting *\/\n  .up-jokebook__cta {\n    width: 100%;\n    padding: 34px 26px;\n    border-radius: 24px;\n    background: var(--up-blue);\n    color: var(--up-white);\n    text-align: center;\n  }\n\n  .up-jokebook__cta h2 {\n    width: 100%;\n    margin-bottom: 9px;\n    color: var(--up-white);\n    font-size: 25px;\n    font-weight: 800;\n    line-height: 1.25;\n  }\n\n  .up-jokebook__cta p {\n    width: 100%;\n    max-width: 580px;\n    margin: 0 auto;\n    color: rgba(255, 255, 255, 0.88);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Smalle productkolommen *\/\n  @media screen and (max-width: 1100px) {\n    .up-jokebook__hero {\n      padding: 32px 26px;\n    }\n\n    .up-jokebook__title {\n      font-size: 34px;\n      line-height: 1.12;\n    }\n\n    .up-jokebook__section {\n      padding: 26px 22px;\n    }\n  }\n\n  \/* Mobiele weergave *\/\n  @media screen and (max-width: 749px) {\n    .up-jokebook__hero {\n      padding: 28px 20px;\n      border-radius: 20px;\n    }\n\n    .up-jokebook__title {\n      font-size: 29px;\n      line-height: 1.13;\n      letter-spacing: -0.03em;\n    }\n\n    .up-jokebook__intro {\n      font-size: 15px;\n    }\n\n    .up-jokebook__section {\n      padding: 24px 18px;\n      border-radius: 18px;\n    }\n\n    .up-jokebook__section-title {\n      font-size: 22px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 38px minmax(0, 1fr);\n      column-gap: 12px;\n      padding: 15px;\n    }\n\n    .up-jokebook__step-number {\n      width: 35px;\n      height: 35px;\n    }\n\n    .up-jokebook__notice {\n      padding: 20px 18px;\n    }\n\n    .up-jokebook__cta {\n      padding: 30px 20px;\n      border-radius: 20px;\n    }\n  }\n\n  \/* Zeer smalle schermen *\/\n  @media screen and (max-width: 390px) {\n    .up-jokebook__title {\n      font-size: 26px;\n    }\n\n    .up-jokebook__label {\n      font-size: 11px;\n    }\n\n    .up-jokebook__highlight {\n      font-size: 12px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 34px minmax(0, 1fr);\n      column-gap: 10px;\n      padding: 14px 12px;\n    }\n\n    .up-jokebook__step-number {\n      width: 32px;\n      height: 32px;\n      font-size: 13px;\n    }\n\n    .up-jokebook__step h3 {\n      font-size: 15px;\n    }\n\n    .up-jokebook__step p {\n      font-size: 12px;\n    }\n  }\n\u003c\/style\u003e\n\u003cdiv class=\"up-jokebook\"\u003e\n\u003c!-- Introductie --\u003e\n\u003csection class=\"up-jokebook__hero\"\u003e\n\u003cdiv class=\"up-jokebook__label\"\u003eUnlimited Pages Original\u003c\/div\u003e\n\u003ch2 class=\"up-jokebook__title\"\u003e80 Hilarische Engelse moppen\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__intro\"\u003eEen vrolijke verzameling Engelse moppen voor kinderen en gezinnen. Ideaal voor thuis, onderweg, op vakantie, in de klas of tijdens een gezellig moment met familie en vrienden.\u003c\/p\u003e\n\u003cdiv class=\"up-jokebook__highlights\"\u003e\n\u003cspan class=\"up-jokebook__highlight\"\u003e Engelstalig\u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Direct digitaal beschikbaar \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e A4-formaat \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Zelf te printen \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Wat ontvang je --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eWat ontvang je?\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__section-text\"\u003eJe ontvangt een compleet digitaal moppenboekje dat direct klaar is voor gebruik.\u003c\/p\u003e\n\u003cul class=\"up-jokebook__list\"\u003e\n\u003cli\u003eEen digitaal Engels moppenboekje\u003c\/li\u003e\n\u003cli\u003eEen printvriendelijk ontwerp op A4-formaat\u003c\/li\u003e\n\u003cli\u003eEen bestand dat je digitaal kunt bewaren en bekijken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003c!-- Voorbeeldmoppen --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eEen klein voorproefje\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__examples\"\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWaarom kan een skelet nooit liegen?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eOmdat je er dwars doorheen kijkt.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWat zegt een nul tegen een acht?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eMooie riem heb je om!\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eHoe noem je een boemerang die niet terugkomt?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eEen stok.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Zo werkt het --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eZo werkt het\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__steps\"\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eBestel het boekje\u003c\/h3\u003e\n\u003cp\u003eVoeg het moppenboekje toe aan je winkelwagen en rond je bestelling af.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eOntvang het bestand\u003c\/h3\u003e\n\u003cp\u003eNa je bestelling ontvang je het digitale bestand.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eLezen en lachen\u003c\/h3\u003e\n\u003cp\u003eBekijk het boekje digitaal of print het uit en geniet van de moppen.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Belangrijke informatie --\u003e\n\u003cdiv class=\"up-jokebook__notice\"\u003e\n\u003cstrong\u003e Let op: dit is een digitaal product \u003c\/strong\u003e\n\u003cp\u003eEr wordt geen fysiek boek per post verstuurd. Je ontvangt een digitaal bestand dat je zelf kunt bekijken, downloaden en printen. Kleuren kunnen per beeldscherm of printer licht afwijken.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- Afsluiting --\u003e\n\u003csection class=\"up-jokebook__cta\"\u003e\n\u003ch2\u003eKlaar voor een flinke dosis humor?\u003c\/h2\u003e\n\u003cp\u003eBestel het Engelse moppenboekje en geniet thuis, onderweg of op vakantie van 80 hilarische moppen.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e","brand":"unlimited-pages","offers":[{"title":"Default Title","offer_id":58221773619532,"sku":null,"price":1.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/08061fbd516247ba2a60ae2de0b12292-0.png?v=1785166633"},{"product_id":"moppenboek-160-grappige-engelse-moppen","title":"Moppenboek – 160 Grappige Engelse Moppen","description":"\u003cstyle\u003e\n  .up-jokebook {\n    --up-blue: #3f63f4;\n    --up-blue-dark: #2946c7;\n    --up-blue-light: #eef3ff;\n    --up-text: #171717;\n    --up-muted: #626776;\n    --up-border: #dfe5f5;\n    --up-white: #ffffff;\n\n    width: 100%;\n    max-width: 900px;\n    margin: 0 auto;\n    color: var(--up-text);\n    font-family: Inter, Arial, sans-serif;\n    line-height: 1.65;\n  }\n\n  .up-jokebook,\n  .up-jokebook * {\n    box-sizing: border-box;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p,\n  .up-jokebook span,\n  .up-jokebook li,\n  .up-jokebook strong {\n    word-break: normal !important;\n    overflow-wrap: normal !important;\n    hyphens: none !important;\n    white-space: normal !important;\n  }\n\n  .up-jokebook h2,\n  .up-jokebook h3,\n  .up-jokebook p {\n    margin-top: 0;\n  }\n\n  \/* Introductie *\/\n  .up-jokebook__hero {\n    position: relative;\n    width: 100%;\n    overflow: hidden;\n    padding: 42px 34px;\n    margin-bottom: 24px;\n    border: 1px solid var(--up-border);\n    border-radius: 26px;\n    background:\n      radial-gradient(\n        circle at top right,\n        rgba(63, 99, 244, 0.16),\n        transparent 35%\n      ),\n      linear-gradient(135deg, #ffffff 0%, #f5f7ff 100%);\n  }\n\n  .up-jokebook__label {\n    display: inline-flex;\n    align-items: center;\n    margin-bottom: 18px;\n    padding: 7px 14px;\n    border-radius: 999px;\n    background: var(--up-blue-light);\n    color: var(--up-blue);\n    font-size: 12px;\n    font-weight: 700;\n    line-height: 1.3;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n  }\n\n  .up-jokebook__title {\n    width: 100%;\n    max-width: 620px;\n    margin-bottom: 14px;\n    color: var(--up-text);\n    font-size: clamp(30px, 4vw, 44px);\n    font-weight: 800;\n    line-height: 1.08;\n    letter-spacing: -0.04em;\n  }\n\n  .up-jokebook__intro {\n    width: 100%;\n    max-width: 680px;\n    margin-bottom: 24px;\n    color: var(--up-muted);\n    font-size: 16px;\n    line-height: 1.65;\n  }\n\n  .up-jokebook__highlights {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 9px;\n    width: 100%;\n  }\n\n  .up-jokebook__highlight {\n    display: inline-flex;\n    align-items: center;\n    padding: 8px 13px;\n    border: 1px solid var(--up-border);\n    border-radius: 999px;\n    background: var(--up-white);\n    color: var(--up-text);\n    font-size: 13px;\n    font-weight: 600;\n    line-height: 1.3;\n  }\n\n  \/* Algemene secties *\/\n  .up-jokebook__section {\n    width: 100%;\n    padding: 30px;\n    margin-bottom: 22px;\n    border: 1px solid var(--up-border);\n    border-radius: 22px;\n    background: var(--up-white);\n  }\n\n  .up-jokebook__section-title {\n    width: 100%;\n    margin-bottom: 10px;\n    color: var(--up-text);\n    font-size: 24px;\n    font-weight: 800;\n    line-height: 1.25;\n    letter-spacing: -0.025em;\n  }\n\n  .up-jokebook__section-text {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 15px;\n    line-height: 1.6;\n  }\n\n  \/* Wat ontvang je *\/\n  .up-jokebook__list {\n    display: grid;\n    gap: 12px;\n    width: 100%;\n    padding: 0;\n    margin: 21px 0 0;\n    list-style: none;\n  }\n\n  .up-jokebook__list li {\n    position: relative;\n    width: 100%;\n    padding: 14px 16px 14px 47px;\n    border-radius: 14px;\n    background: var(--up-blue-light);\n    color: var(--up-text);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__list li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 50%;\n    left: 16px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 22px;\n    height: 22px;\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 13px;\n    font-weight: 800;\n    transform: translateY(-50%);\n  }\n\n  \/* Voorbeeldmoppen *\/\n  .up-jokebook__examples {\n    display: grid;\n    gap: 13px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__joke {\n    width: 100%;\n    padding: 18px 19px;\n    border-left: 4px solid var(--up-blue);\n    border-radius: 4px 15px 15px 4px;\n    background: #f8f9ff;\n  }\n\n  .up-jokebook__question {\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-text);\n    font-size: 15px;\n    font-weight: 750;\n    line-height: 1.45;\n  }\n\n  .up-jokebook__answer {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-blue-dark);\n    font-size: 14px;\n    font-weight: 650;\n    line-height: 1.45;\n  }\n\n  \/* Zo werkt het *\/\n  .up-jokebook__steps {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    width: 100%;\n    margin-top: 21px;\n  }\n\n  .up-jokebook__step {\n    display: grid;\n    grid-template-columns: 42px minmax(0, 1fr);\n    grid-template-rows: auto auto;\n    column-gap: 14px;\n    align-items: center;\n\n    width: 100%;\n    min-width: 0;\n    padding: 16px 18px;\n\n    border: 1px solid rgba(63, 99, 244, 0.16);\n    border-radius: 16px;\n    background: var(--up-blue-light);\n    text-align: left;\n  }\n\n  .up-jokebook__step-number {\n    grid-column: 1;\n    grid-row: 1 \/ span 2;\n\n    display: flex;\n    align-items: center;\n    justify-content: center;\n\n    width: 38px;\n    height: 38px;\n    margin: 0;\n\n    border-radius: 50%;\n    background: var(--up-blue);\n    color: var(--up-white);\n    font-size: 14px;\n    font-weight: 800;\n    line-height: 1;\n  }\n\n  .up-jokebook__step-content {\n    grid-column: 2;\n    min-width: 0;\n    width: 100%;\n  }\n\n  .up-jokebook__step h3 {\n    width: 100%;\n    margin: 0 0 3px;\n    color: var(--up-text);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.3;\n    text-align: left;\n  }\n\n  .up-jokebook__step p {\n    width: 100%;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 13px;\n    line-height: 1.5;\n    text-align: left;\n  }\n\n  \/* Belangrijke informatie *\/\n  .up-jokebook__notice {\n    width: 100%;\n    padding: 22px;\n    margin-bottom: 22px;\n    border: 1px solid rgba(63, 99, 244, 0.25);\n    border-radius: 18px;\n    background: var(--up-blue-light);\n  }\n\n  .up-jokebook__notice strong {\n    display: block;\n    width: 100%;\n    margin-bottom: 5px;\n    color: var(--up-blue-dark);\n    font-size: 16px;\n    font-weight: 750;\n    line-height: 1.4;\n  }\n\n  .up-jokebook__notice p {\n    width: 100%;\n    margin-bottom: 0;\n    color: var(--up-muted);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Afsluiting *\/\n  .up-jokebook__cta {\n    width: 100%;\n    padding: 34px 26px;\n    border-radius: 24px;\n    background: var(--up-blue);\n    color: var(--up-white);\n    text-align: center;\n  }\n\n  .up-jokebook__cta h2 {\n    width: 100%;\n    margin-bottom: 9px;\n    color: var(--up-white);\n    font-size: 25px;\n    font-weight: 800;\n    line-height: 1.25;\n  }\n\n  .up-jokebook__cta p {\n    width: 100%;\n    max-width: 580px;\n    margin: 0 auto;\n    color: rgba(255, 255, 255, 0.88);\n    font-size: 14px;\n    line-height: 1.6;\n  }\n\n  \/* Smalle productkolommen *\/\n  @media screen and (max-width: 1100px) {\n    .up-jokebook__hero {\n      padding: 32px 26px;\n    }\n\n    .up-jokebook__title {\n      font-size: 34px;\n      line-height: 1.12;\n    }\n\n    .up-jokebook__section {\n      padding: 26px 22px;\n    }\n  }\n\n  \/* Mobiele weergave *\/\n  @media screen and (max-width: 749px) {\n    .up-jokebook__hero {\n      padding: 28px 20px;\n      border-radius: 20px;\n    }\n\n    .up-jokebook__title {\n      font-size: 29px;\n      line-height: 1.13;\n      letter-spacing: -0.03em;\n    }\n\n    .up-jokebook__intro {\n      font-size: 15px;\n    }\n\n    .up-jokebook__section {\n      padding: 24px 18px;\n      border-radius: 18px;\n    }\n\n    .up-jokebook__section-title {\n      font-size: 22px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 38px minmax(0, 1fr);\n      column-gap: 12px;\n      padding: 15px;\n    }\n\n    .up-jokebook__step-number {\n      width: 35px;\n      height: 35px;\n    }\n\n    .up-jokebook__notice {\n      padding: 20px 18px;\n    }\n\n    .up-jokebook__cta {\n      padding: 30px 20px;\n      border-radius: 20px;\n    }\n  }\n\n  \/* Zeer smalle schermen *\/\n  @media screen and (max-width: 390px) {\n    .up-jokebook__title {\n      font-size: 26px;\n    }\n\n    .up-jokebook__label {\n      font-size: 11px;\n    }\n\n    .up-jokebook__highlight {\n      font-size: 12px;\n    }\n\n    .up-jokebook__step {\n      grid-template-columns: 34px minmax(0, 1fr);\n      column-gap: 10px;\n      padding: 14px 12px;\n    }\n\n    .up-jokebook__step-number {\n      width: 32px;\n      height: 32px;\n      font-size: 13px;\n    }\n\n    .up-jokebook__step h3 {\n      font-size: 15px;\n    }\n\n    .up-jokebook__step p {\n      font-size: 12px;\n    }\n  }\n\u003c\/style\u003e\n\u003cdiv class=\"up-jokebook\"\u003e\n\u003c!-- Introductie --\u003e\n\u003csection class=\"up-jokebook__hero\"\u003e\n\u003cdiv class=\"up-jokebook__label\"\u003eUnlimited Pages Original\u003c\/div\u003e\n\u003ch2 class=\"up-jokebook__title\"\u003e160 Hilarische Engelse moppen\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__intro\"\u003eEen vrolijke verzameling Engelse moppen voor kinderen en gezinnen. Ideaal voor thuis, onderweg, op vakantie, in de klas of tijdens een gezellig moment met familie en vrienden.\u003c\/p\u003e\n\u003cdiv class=\"up-jokebook__highlights\"\u003e\n\u003cspan class=\"up-jokebook__highlight\"\u003e Engelstalig\u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Direct digitaal beschikbaar \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e A4-formaat \u003c\/span\u003e \u003cspan class=\"up-jokebook__highlight\"\u003e Zelf te printen \u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Wat ontvang je --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eWat ontvang je?\u003c\/h2\u003e\n\u003cp class=\"up-jokebook__section-text\"\u003eJe ontvangt een compleet digitaal moppenboekje dat direct klaar is voor gebruik.\u003c\/p\u003e\n\u003cul class=\"up-jokebook__list\"\u003e\n\u003cli\u003eEen digitaal Engels moppenboekje\u003c\/li\u003e\n\u003cli\u003eEen printvriendelijk ontwerp op A4-formaat\u003c\/li\u003e\n\u003cli\u003eEen bestand dat je digitaal kunt bewaren en bekijken\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003c!-- Voorbeeldmoppen --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eEen klein voorproefje\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__examples\"\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWaarom kan een skelet nooit liegen?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eOmdat je er dwars doorheen kijkt.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eWat zegt een nul tegen een acht?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eMooie riem heb je om!\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__joke\"\u003e\n\u003cp class=\"up-jokebook__question\"\u003eHoe noem je een boemerang die niet terugkomt?\u003c\/p\u003e\n\u003cp class=\"up-jokebook__answer\"\u003eEen stok.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Zo werkt het --\u003e\n\u003csection class=\"up-jokebook__section\"\u003e\n\u003ch2 class=\"up-jokebook__section-title\"\u003eZo werkt het\u003c\/h2\u003e\n\u003cdiv class=\"up-jokebook__steps\"\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eBestel het boekje\u003c\/h3\u003e\n\u003cp\u003eVoeg het moppenboekje toe aan je winkelwagen en rond je bestelling af.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eOntvang het bestand\u003c\/h3\u003e\n\u003cp\u003eNa je bestelling ontvang je het digitale bestand.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step\"\u003e\n\u003cdiv class=\"up-jokebook__step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"up-jokebook__step-content\"\u003e\n\u003ch3\u003eLezen en lachen\u003c\/h3\u003e\n\u003cp\u003eBekijk het boekje digitaal of print het uit en geniet van de moppen.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- Belangrijke informatie --\u003e\n\u003cdiv class=\"up-jokebook__notice\"\u003e\n\u003cstrong\u003e Let op: dit is een digitaal product \u003c\/strong\u003e\n\u003cp\u003eEr wordt geen fysiek boek per post verstuurd. Je ontvangt een digitaal bestand dat je zelf kunt bekijken, downloaden en printen. Kleuren kunnen per beeldscherm of printer licht afwijken.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- Afsluiting --\u003e\n\u003csection class=\"up-jokebook__cta\"\u003e\n\u003ch2\u003eKlaar voor een flinke dosis humor?\u003c\/h2\u003e\n\u003cp\u003eBestel het Engels moppenboekje en geniet thuis, onderweg of op vakantie van 160 hilarische moppen.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e","brand":"unlimited-pages","offers":[{"title":"Default Title","offer_id":58221846790476,"sku":null,"price":3.49,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/0e999c5f0402d469592b82ae6c23cdba-0.png?v=1785166540"},{"product_id":"snelle-maaltijden-20-makkelijke-recepten-nederlands","title":"Snelle Maaltijden – 20 Makkelijke Recepten voor Elke Dag - Nederlands","description":"\u003c!-- UNLIMITED PAGES PRODUCT BLOCK – SNELLE MAALTIJDEN --\u003e\n\u003cstyle\u003e\n  .up-style {\n    --up-blue: #4f6fdc;\n    --up-blue-dark: #324b9b;\n    --up-blue-light: #eef2ff;\n    --up-bg: #f8f9fc;\n    --up-card: #ffffff;\n    --up-text: #252936;\n    --up-muted: #6f7585;\n    --up-border: #e7e9f1;\n\n    font-family: inherit;\n    color: var(--up-text);\n    line-height: 1.65;\n  }\n\n  .up-hero {\n    position: relative;\n    overflow: hidden;\n    padding: 34px 26px;\n    margin-bottom: 22px;\n    background:\n      linear-gradient(\n        135deg,\n        var(--up-blue-light) 0%,\n        #ffffff 100%\n      );\n    border: 1px solid var(--up-border);\n    border-radius: 20px;\n  }\n\n  .up-hero::after {\n    content: \"\";\n    position: absolute;\n    right: -45px;\n    bottom: -55px;\n    width: 160px;\n    height: 160px;\n    background: rgba(79, 111, 220, 0.08);\n    border-radius: 50%;\n  }\n\n  .up-eyebrow {\n    display: inline-flex;\n    align-items: center;\n    padding: 7px 11px;\n    margin-bottom: 14px;\n    color: var(--up-blue-dark);\n    background: rgba(255, 255, 255, 0.8);\n    border: 1px solid #dce3ff;\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 700;\n    letter-spacing: 0.08em;\n    text-transform: uppercase;\n  }\n\n  .up-hero h2 {\n    position: relative;\n    z-index: 1;\n    max-width: 700px;\n    margin: 0 0 12px;\n    color: var(--up-blue-dark);\n    font-size: clamp(28px, 5vw, 42px);\n    line-height: 1.15;\n    letter-spacing: -0.03em;\n  }\n\n  .up-hero p {\n    position: relative;\n    z-index: 1;\n    max-width: 760px;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 17px;\n  }\n\n  .up-stats {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 14px;\n    margin: 22px 0;\n  }\n\n  .up-stat {\n    padding: 18px;\n    background: var(--up-card);\n    border: 1px solid var(--up-border);\n    border-radius: 16px;\n    box-shadow: 0 8px 24px rgba(34, 42, 74, 0.05);\n  }\n\n  .up-stat span {\n    display: block;\n    margin-bottom: 3px;\n    color: var(--up-blue);\n    font-size: 21px;\n    font-weight: 750;\n  }\n\n  .up-stat small {\n    color: var(--up-muted);\n    font-size: 14px;\n  }\n\n  .up-section {\n    padding: 24px;\n    margin: 22px 0;\n    background: var(--up-card);\n    border: 1px solid var(--up-border);\n    border-radius: 18px;\n  }\n\n  .up-section h3 {\n    margin: 0 0 14px;\n    color: var(--up-blue-dark);\n    font-size: 23px;\n    line-height: 1.3;\n  }\n\n  .up-section p {\n    margin: 0;\n    color: var(--up-muted);\n  }\n\n  .up-checklist {\n    padding: 0;\n    margin: 0;\n    list-style: none;\n  }\n\n  .up-checklist li {\n    position: relative;\n    padding: 10px 0 10px 32px;\n    color: var(--up-text);\n    border-bottom: 1px solid var(--up-border);\n  }\n\n  .up-checklist li:last-child {\n    border-bottom: 0;\n  }\n\n  .up-checklist li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 9px;\n    left: 0;\n    display: grid;\n    width: 21px;\n    height: 21px;\n    place-items: center;\n    color: #ffffff;\n    background: var(--up-blue);\n    border-radius: 50%;\n    font-size: 12px;\n    font-weight: 800;\n  }\n\n  .up-highlight {\n    padding: 24px;\n    margin: 22px 0;\n    background: var(--up-blue-light);\n    border: 1px solid #dfe5ff;\n    border-radius: 18px;\n  }\n\n  .up-highlight h3 {\n    margin: 0 0 9px;\n    color: var(--up-blue-dark);\n    font-size: 21px;\n  }\n\n  .up-highlight p {\n    margin: 0;\n    color: #59637c;\n  }\n\n  .up-recipes {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 9px 22px;\n    padding: 0;\n    margin: 0;\n    list-style: none;\n    counter-reset: recipe-counter;\n  }\n\n  .up-recipes li {\n    position: relative;\n    min-height: 30px;\n    padding: 4px 0 4px 38px;\n    color: var(--up-text);\n    counter-increment: recipe-counter;\n  }\n\n  .up-recipes li::before {\n    content: counter(recipe-counter, decimal-leading-zero);\n    position: absolute;\n    top: 4px;\n    left: 0;\n    color: var(--up-blue);\n    font-size: 13px;\n    font-weight: 800;\n    letter-spacing: 0.04em;\n  }\n\n  .up-digital {\n    display: flex;\n    gap: 14px;\n    align-items: flex-start;\n    padding: 20px;\n    margin-top: 22px;\n    background: var(--up-blue-dark);\n    border-radius: 18px;\n    color: #ffffff;\n  }\n\n  .up-digital-icon {\n    flex: 0 0 auto;\n    display: grid;\n    width: 42px;\n    height: 42px;\n    place-items: center;\n    background: rgba(255, 255, 255, 0.14);\n    border-radius: 12px;\n    font-size: 20px;\n  }\n\n  .up-digital strong {\n    display: block;\n    margin-bottom: 3px;\n    font-size: 17px;\n  }\n\n  .up-digital p {\n    margin: 0;\n    color: rgba(255, 255, 255, 0.82);\n    font-size: 14px;\n  }\n\n  .up-note {\n    padding-top: 15px;\n    color: var(--up-muted);\n    font-size: 13px;\n  }\n\n  @media screen and (max-width: 749px) {\n    .up-hero {\n      padding: 28px 20px;\n    }\n\n    .up-stats,\n    .up-recipes {\n      grid-template-columns: 1fr;\n    }\n\n    .up-section,\n    .up-highlight {\n      padding: 20px;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"up-style\"\u003e\n\n  \u003csection class=\"up-hero\"\u003e\n    \u003cspan class=\"up-eyebrow\"\u003eDigitaal kookboek\u003c\/span\u003e\n\n    \u003ch2\u003eSnelle Maaltijden\u003c\/h2\u003e\n\n    \u003cp\u003e\n      Twintig eenvoudige en smaakvolle recepten voor dagen waarop je\n      lekker wilt eten zonder uren in de keuken te staan.\n    \u003c\/p\u003e\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"up-stats\"\u003e\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003e20\u003c\/span\u003e\n      \u003csmall\u003eVolledig uitgewerkte recepten\u003c\/small\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003eSnel\u003c\/span\u003e\n      \u003csmall\u003eIdeaal voor drukke dagen\u003c\/small\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003eDigitaal\u003c\/span\u003e\n      \u003csmall\u003eDirect en eenvoudig te gebruiken\u003c\/small\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003csection class=\"up-section\"\u003e\n    \u003ch3\u003eMakkelijk koken, zonder gedoe\u003c\/h3\u003e\n\n    \u003cp\u003e\n      Dit digitale kookboek helpt je om iedere dag een lekkere maaltijd\n      op tafel te zetten. De recepten zijn overzichtelijk opgebouwd,\n      bevatten herkenbare ingrediënten en zijn ook geschikt wanneer je\n      nog niet veel kookervaring hebt.\n    \u003c\/p\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-section\"\u003e\n    \u003ch3\u003eDit vind je in het kookboek\u003c\/h3\u003e\n\n    \u003cul class=\"up-checklist\"\u003e\n      \u003cli\u003e20 duidelijke recepten voor snelle maaltijden\u003c\/li\u003e\n      \u003cli\u003eIngrediënten uit de gewone supermarkt\u003c\/li\u003e\n      \u003cli\u003eEen bereidingswijze in eenvoudige stappen\u003c\/li\u003e\n      \u003cli\u003eBereidingstijd, porties en moeilijkheid\u003c\/li\u003e\n      \u003cli\u003eChef's Tips voor een beter eindresultaat\u003c\/li\u003e\n      \u003cli\u003eHandige variaties per gerecht\u003c\/li\u003e\n      \u003cli\u003eBewaaradvies en informatie over allergenen\u003c\/li\u003e\n      \u003cli\u003eGeschatte voedingswaarden per portie\u003c\/li\u003e\n    \u003c\/ul\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-highlight\"\u003e\n    \u003ch3\u003eVoor iedere thuiskok\u003c\/h3\u003e\n\n    \u003cp\u003e\n      De recepten zijn geschikt voor beginners én ervaren thuiskoks.\n      Dankzij de vaste en overzichtelijke opbouw zie je direct wat je\n      nodig hebt en hoe je het gerecht bereidt.\n    \u003c\/p\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-section\"\u003e\n    \u003ch3\u003eRecepten in dit kookboek\u003c\/h3\u003e\n\n    \u003col class=\"up-recipes\"\u003e\n      \u003cli\u003eRomige kip-pestopasta\u003c\/li\u003e\n      \u003cli\u003ePasta carbonara\u003c\/li\u003e\n      \u003cli\u003ePasta bolognese\u003c\/li\u003e\n      \u003cli\u003ePasta met zalm en spinazie\u003c\/li\u003e\n      \u003cli\u003ePenne arrabbiata\u003c\/li\u003e\n      \u003cli\u003eKip teriyaki met rijst\u003c\/li\u003e\n      \u003cli\u003eKip kerrie\u003c\/li\u003e\n      \u003cli\u003eGebakken rijst met groenten\u003c\/li\u003e\n      \u003cli\u003eMexicaanse rijstschotel\u003c\/li\u003e\n      \u003cli\u003eChili con carne\u003c\/li\u003e\n      \u003cli\u003eKrieltjes met kip en groenten\u003c\/li\u003e\n      \u003cli\u003eAardappelovenschotel met gehakt\u003c\/li\u003e\n      \u003cli\u003eStamppot met rookworst\u003c\/li\u003e\n      \u003cli\u003eGeroosterde aardappelen met zalm\u003c\/li\u003e\n      \u003cli\u003eKip uit de oven met aardappeltjes\u003c\/li\u003e\n      \u003cli\u003eKrokante kipwraps\u003c\/li\u003e\n      \u003cli\u003eBurrito's met gehakt\u003c\/li\u003e\n      \u003cli\u003eQuesadilla's met kip\u003c\/li\u003e\n      \u003cli\u003eClub sandwich deluxe\u003c\/li\u003e\n      \u003cli\u003eLoaded nacho's uit de oven\u003c\/li\u003e\n    \u003c\/ol\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-highlight\"\u003e\n    \u003ch3\u003ePraktisch en overzichtelijk\u003c\/h3\u003e\n\n    \u003cp\u003e\n      Elk recept bevat dezelfde herkenbare indeling. Zo vind je snel\n      de ingrediënten, bereidingsstappen, tips, allergenen en\n      voedingswaarden terug.\n    \u003c\/p\u003e\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"up-digital\"\u003e\n    \u003cdiv class=\"up-digital-icon\"\u003e↓\u003c\/div\u003e\n\n    \u003cdiv\u003e\n      \u003cstrong\u003eDit is een digitaal product\u003c\/strong\u003e\n\n      \u003cp\u003e\n        Je ontvangt een digitaal kookboek. Er wordt geen fysiek boek\n        per post verzonden.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cp class=\"up-note\"\u003e\n    De vermelde voedingswaarden zijn schattingen en kunnen verschillen\n    door gebruikte merken, portiegroottes en bereidingswijze.\n  \u003c\/p\u003e\n\n\u003c\/div\u003e","brand":"Unlimited-Pages","offers":[{"title":"Default Title","offer_id":58256009757004,"sku":null,"price":3.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/3fad2335ff7d40beec76d6aad351c418qhAC5n3S939A0hPK-0.png?v=1785417121"},{"product_id":"20-makkelijke-ontbijtrecepten-nederlands","title":"Snelle Maaltijden – 20 Makkelijke ontbijt recepten - Nederlands","description":"\u003c!-- UNLIMITED PAGES – 20 MAKKELIJKE \u0026 LEUKE ONTBIJTRECEPTEN --\u003e\n\n\u003cstyle\u003e\n  .up-product {\n    --up-blue: #4f6fdc;\n    --up-blue-dark: #324b9b;\n    --up-blue-light: #eef2ff;\n    --up-bg: #f8f9fc;\n    --up-card: #ffffff;\n    --up-text: #252936;\n    --up-muted: #6f7585;\n    --up-border: #e7e9f1;\n\n    font-family: inherit;\n    color: var(--up-text);\n    line-height: 1.65;\n  }\n\n  .up-hero {\n    position: relative;\n    overflow: hidden;\n    padding: 34px 26px;\n    margin-bottom: 22px;\n    background: linear-gradient(\n      135deg,\n      var(--up-blue-light) 0%,\n      #ffffff 100%\n    );\n    border: 1px solid var(--up-border);\n    border-radius: 20px;\n  }\n\n  .up-hero::after {\n    content: \"\";\n    position: absolute;\n    right: -45px;\n    bottom: -55px;\n    width: 160px;\n    height: 160px;\n    background: rgba(79, 111, 220, 0.08);\n    border-radius: 50%;\n  }\n\n  .up-eyebrow {\n    display: inline-flex;\n    align-items: center;\n    padding: 7px 11px;\n    margin-bottom: 14px;\n    color: var(--up-blue-dark);\n    background: rgba(255, 255, 255, 0.8);\n    border: 1px solid #dce3ff;\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 700;\n    letter-spacing: 0.08em;\n    text-transform: uppercase;\n  }\n\n  .up-hero h2 {\n    position: relative;\n    z-index: 1;\n    max-width: 700px;\n    margin: 0 0 12px;\n    color: var(--up-blue-dark);\n    font-size: clamp(28px, 5vw, 42px);\n    line-height: 1.15;\n    letter-spacing: -0.03em;\n  }\n\n  .up-hero p {\n    position: relative;\n    z-index: 1;\n    max-width: 760px;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 17px;\n  }\n\n  .up-stats {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 14px;\n    margin: 22px 0;\n  }\n\n  .up-stat {\n    padding: 18px;\n    background: var(--up-card);\n    border: 1px solid var(--up-border);\n    border-radius: 16px;\n    box-shadow: 0 8px 24px rgba(34, 42, 74, 0.05);\n  }\n\n  .up-stat span {\n    display: block;\n    margin-bottom: 3px;\n    color: var(--up-blue);\n    font-size: 21px;\n    font-weight: 750;\n  }\n\n  .up-stat small {\n    color: var(--up-muted);\n    font-size: 14px;\n  }\n\n  .up-section {\n    padding: 24px;\n    margin: 22px 0;\n    background: var(--up-card);\n    border: 1px solid var(--up-border);\n    border-radius: 18px;\n  }\n\n  .up-section h3 {\n    margin: 0 0 14px;\n    color: var(--up-blue-dark);\n    font-size: 23px;\n    line-height: 1.3;\n  }\n\n  .up-section p {\n    margin: 0;\n    color: var(--up-muted);\n  }\n\n  .up-checklist {\n    padding: 0;\n    margin: 0;\n    list-style: none;\n  }\n\n  .up-checklist li {\n    position: relative;\n    padding: 10px 0 10px 32px;\n    color: var(--up-text);\n    border-bottom: 1px solid var(--up-border);\n  }\n\n  .up-checklist li:last-child {\n    border-bottom: 0;\n  }\n\n  .up-checklist li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 9px;\n    left: 0;\n    display: grid;\n    width: 21px;\n    height: 21px;\n    place-items: center;\n    color: #ffffff;\n    background: var(--up-blue);\n    border-radius: 50%;\n    font-size: 12px;\n    font-weight: 800;\n  }\n\n  .up-highlight {\n    padding: 24px;\n    margin: 22px 0;\n    background: var(--up-blue-light);\n    border: 1px solid #dfe5ff;\n    border-radius: 18px;\n  }\n\n  .up-highlight h3 {\n    margin: 0 0 9px;\n    color: var(--up-blue-dark);\n    font-size: 21px;\n  }\n\n  .up-highlight p {\n    margin: 0;\n    color: #59637c;\n  }\n\n  .up-recipes {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 9px 22px;\n    padding: 0;\n    margin: 0;\n    list-style: none;\n    counter-reset: recipe-counter;\n  }\n\n  .up-recipes li {\n    position: relative;\n    min-height: 30px;\n    padding: 4px 0 4px 38px;\n    color: var(--up-text);\n    counter-increment: recipe-counter;\n  }\n\n  .up-recipes li::before {\n    content: counter(recipe-counter, decimal-leading-zero);\n    position: absolute;\n    top: 4px;\n    left: 0;\n    color: var(--up-blue);\n    font-size: 13px;\n    font-weight: 800;\n    letter-spacing: 0.04em;\n  }\n\n  .up-digital {\n    display: flex;\n    gap: 14px;\n    align-items: flex-start;\n    padding: 20px;\n    margin-top: 22px;\n    background: var(--up-blue-dark);\n    border-radius: 18px;\n    color: #ffffff;\n  }\n\n  .up-digital-icon {\n    flex: 0 0 auto;\n    display: grid;\n    width: 42px;\n    height: 42px;\n    place-items: center;\n    background: rgba(255, 255, 255, 0.14);\n    border-radius: 12px;\n    font-size: 20px;\n  }\n\n  .up-digital strong {\n    display: block;\n    margin-bottom: 3px;\n    font-size: 17px;\n  }\n\n  .up-digital p {\n    margin: 0;\n    color: rgba(255, 255, 255, 0.82);\n    font-size: 14px;\n  }\n\n  .up-note {\n    padding-top: 15px;\n    color: var(--up-muted);\n    font-size: 13px;\n  }\n\n  @media screen and (max-width: 749px) {\n    .up-hero {\n      padding: 28px 20px;\n    }\n\n    .up-stats,\n    .up-recipes {\n      grid-template-columns: 1fr;\n    }\n\n    .up-section,\n    .up-highlight {\n      padding: 20px;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"up-product\"\u003e\n\n  \u003csection class=\"up-hero\"\u003e\n    \u003cspan class=\"up-eyebrow\"\u003eDigitaal kookboek\u003c\/span\u003e\n\n    \u003ch2\u003e20 Makkelijke \u0026amp; Leuke Ontbijtrecepten\u003c\/h2\u003e\n\n    \u003cp\u003e\n      Twintig eenvoudige en lekkere ontbijtrecepten voor een fijne start\n      van de dag. Van warme havermout en pannenkoekjes tot yoghurtbowls,\n      wraps en hartige ontbijtjes.\n    \u003c\/p\u003e\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"up-stats\"\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003e20\u003c\/span\u003e\n      \u003csmall\u003eVolledig uitgewerkte ontbijtrecepten\u003c\/small\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003eMakkelijk\u003c\/span\u003e\n      \u003csmall\u003eGeschikt voor iedere ochtend\u003c\/small\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003eDigitaal\u003c\/span\u003e\n      \u003csmall\u003eDirect en eenvoudig te gebruiken\u003c\/small\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003csection class=\"up-section\"\u003e\n\n    \u003ch3\u003eBegin je dag lekker\u003c\/h3\u003e\n\n    \u003cp\u003e\n      Dit digitale kookboek helpt je om op een makkelijke manier meer\n      afwisseling in je ontbijt te brengen. De recepten zijn overzichtelijk\n      opgebouwd, bevatten herkenbare ingrediënten en zijn geschikt voor\n      zowel snelle ochtenden als momenten waarop je iets uitgebreider wilt\n      ontbijten.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-section\"\u003e\n\n    \u003ch3\u003eDit vind je in het kookboek\u003c\/h3\u003e\n\n    \u003cul class=\"up-checklist\"\u003e\n      \u003cli\u003e20 makkelijke en leuke ontbijtrecepten\u003c\/li\u003e\n      \u003cli\u003eIngrediënten uit de gewone supermarkt\u003c\/li\u003e\n      \u003cli\u003eDuidelijke bereidingswijze in eenvoudige stappen\u003c\/li\u003e\n      \u003cli\u003eBereidingstijd, porties en moeilijkheid\u003c\/li\u003e\n      \u003cli\u003eChef's Tips voor een beter eindresultaat\u003c\/li\u003e\n      \u003cli\u003eHandige variaties per ontbijt\u003c\/li\u003e\n      \u003cli\u003eBewaaradvies en informatie over allergenen\u003c\/li\u003e\n      \u003cli\u003eGeschatte voedingswaarden per portie\u003c\/li\u003e\n    \u003c\/ul\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-highlight\"\u003e\n\n    \u003ch3\u003eVoor iedere ochtend\u003c\/h3\u003e\n\n    \u003cp\u003e\n      De recepten zijn geschikt voor beginners én ervaren thuiskoks.\n      Dankzij de vaste en overzichtelijke opbouw zie je direct welke\n      ingrediënten je nodig hebt en hoe je het ontbijt stap voor stap\n      bereidt.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-section\"\u003e\n\n    \u003ch3\u003eRecepten in dit kookboek\u003c\/h3\u003e\n\n    \u003col class=\"up-recipes\"\u003e\n      \u003cli\u003eRomige havermout met banaan en kaneel\u003c\/li\u003e\n      \u003cli\u003eGriekse yoghurt met aardbei en granola\u003c\/li\u003e\n      \u003cli\u003eAvocadotoast met ei en tomaat\u003c\/li\u003e\n      \u003cli\u003eBananenpannenkoekjes met havermout\u003c\/li\u003e\n      \u003cli\u003eOntbijtwrap met roerei en avocado\u003c\/li\u003e\n      \u003cli\u003eAppel-kaneel overnight oats\u003c\/li\u003e\n      \u003cli\u003eWentelteefjes met kaneel en rood fruit\u003c\/li\u003e\n      \u003cli\u003eSmoothiebowl met mango en banaan\u003c\/li\u003e\n      \u003cli\u003eVolkoren toast met hüttenkäse en perzik\u003c\/li\u003e\n      \u003cli\u003eGroente-omelet met kaas\u003c\/li\u003e\n      \u003cli\u003eChiapudding met frambozen\u003c\/li\u003e\n      \u003cli\u003eOntbijtmuffins met ei en spinazie\u003c\/li\u003e\n      \u003cli\u003ePindakaas-banaan toast met chia\u003c\/li\u003e\n      \u003cli\u003eYoghurt-banaan ontbijtshake\u003c\/li\u003e\n      \u003cli\u003eRoerei op toast met gerookte zalm\u003c\/li\u003e\n      \u003cli\u003eWarme appel-havermout uit de oven\u003c\/li\u003e\n      \u003cli\u003eCroissant met roerei, kaas en tomaat\u003c\/li\u003e\n      \u003cli\u003eOntbijtquesadilla met ei en kaas\u003c\/li\u003e\n      \u003cli\u003eKwarkbowl met appel, noten en kaneel\u003c\/li\u003e\n      \u003cli\u003eMini ontbijtpizza's op volkorenbrood\u003c\/li\u003e\n    \u003c\/ol\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-highlight\"\u003e\n\n    \u003ch3\u003ePraktisch en overzichtelijk\u003c\/h3\u003e\n\n    \u003cp\u003e\n      Elk recept bevat dezelfde herkenbare indeling. Zo vind je snel\n      de ingrediënten, bereidingsstappen, tips, allergenen en\n      voedingswaarden terug.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"up-digital\"\u003e\n\n    \u003cdiv class=\"up-digital-icon\"\u003e↓\u003c\/div\u003e\n\n    \u003cdiv\u003e\n      \u003cstrong\u003eDit is een digitaal product\u003c\/strong\u003e\n\n      \u003cp\u003e\n        Je ontvangt een digitaal kookboek met 20 ontbijtrecepten.\n        Er wordt geen fysiek boek per post verzonden.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cp class=\"up-note\"\u003e\n    De vermelde voedingswaarden zijn schattingen en kunnen verschillen\n    door gebruikte merken, portiegroottes en bereidingswijze.\n  \u003c\/p\u003e\n\n\u003c\/div\u003e","brand":"Unlimited-Pages","offers":[{"title":"Default Title","offer_id":58324050182476,"sku":null,"price":3.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/20c03cfb635b468fe6c81943c7f75864XcrojZcs9vj0LHY1-0_c360c8d7-b952-4e6c-b9bd-24e07c904a8f.png?v=1786112176"},{"product_id":"20-makkelijke-avondmaaltijden-nederlands","title":"Avondmaaltijden – 20 Makkelijke \u0026 Lekkere Recepten - Nederlands","description":"\u003c!-- UNLIMITED PAGES – 20 MAKKELIJKE \u0026 LEKKERE AVONDMAALTIJDEN --\u003e\n\n\u003cstyle\u003e\n  .up-product {\n    --up-blue: #4f6fdc;\n    --up-blue-dark: #324b9b;\n    --up-blue-light: #eef2ff;\n    --up-bg: #f8f9fc;\n    --up-card: #ffffff;\n    --up-text: #252936;\n    --up-muted: #6f7585;\n    --up-border: #e7e9f1;\n\n    font-family: inherit;\n    color: var(--up-text);\n    line-height: 1.65;\n  }\n\n  .up-hero {\n    position: relative;\n    overflow: hidden;\n    padding: 34px 26px;\n    margin-bottom: 22px;\n    background: linear-gradient(\n      135deg,\n      var(--up-blue-light) 0%,\n      #ffffff 100%\n    );\n    border: 1px solid var(--up-border);\n    border-radius: 20px;\n  }\n\n  .up-hero::after {\n    content: \"\";\n    position: absolute;\n    right: -45px;\n    bottom: -55px;\n    width: 160px;\n    height: 160px;\n    background: rgba(79, 111, 220, 0.08);\n    border-radius: 50%;\n  }\n\n  .up-eyebrow {\n    display: inline-flex;\n    align-items: center;\n    padding: 7px 11px;\n    margin-bottom: 14px;\n    color: var(--up-blue-dark);\n    background: rgba(255, 255, 255, 0.8);\n    border: 1px solid #dce3ff;\n    border-radius: 999px;\n    font-size: 12px;\n    font-weight: 700;\n    letter-spacing: 0.08em;\n    text-transform: uppercase;\n  }\n\n  .up-hero h2 {\n    position: relative;\n    z-index: 1;\n    max-width: 700px;\n    margin: 0 0 12px;\n    color: var(--up-blue-dark);\n    font-size: clamp(28px, 5vw, 42px);\n    line-height: 1.15;\n    letter-spacing: -0.03em;\n  }\n\n  .up-hero p {\n    position: relative;\n    z-index: 1;\n    max-width: 760px;\n    margin: 0;\n    color: var(--up-muted);\n    font-size: 17px;\n  }\n\n  .up-stats {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 14px;\n    margin: 22px 0;\n  }\n\n  .up-stat {\n    padding: 18px;\n    background: var(--up-card);\n    border: 1px solid var(--up-border);\n    border-radius: 16px;\n    box-shadow: 0 8px 24px rgba(34, 42, 74, 0.05);\n  }\n\n  .up-stat span {\n    display: block;\n    margin-bottom: 3px;\n    color: var(--up-blue);\n    font-size: 21px;\n    font-weight: 750;\n  }\n\n  .up-stat small {\n    color: var(--up-muted);\n    font-size: 14px;\n  }\n\n  .up-section {\n    padding: 24px;\n    margin: 22px 0;\n    background: var(--up-card);\n    border: 1px solid var(--up-border);\n    border-radius: 18px;\n  }\n\n  .up-section h3 {\n    margin: 0 0 14px;\n    color: var(--up-blue-dark);\n    font-size: 23px;\n    line-height: 1.3;\n  }\n\n  .up-section p {\n    margin: 0;\n    color: var(--up-muted);\n  }\n\n  .up-checklist {\n    padding: 0;\n    margin: 0;\n    list-style: none;\n  }\n\n  .up-checklist li {\n    position: relative;\n    padding: 10px 0 10px 32px;\n    color: var(--up-text);\n    border-bottom: 1px solid var(--up-border);\n  }\n\n  .up-checklist li:last-child {\n    border-bottom: 0;\n  }\n\n  .up-checklist li::before {\n    content: \"✓\";\n    position: absolute;\n    top: 9px;\n    left: 0;\n    display: grid;\n    width: 21px;\n    height: 21px;\n    place-items: center;\n    color: #ffffff;\n    background: var(--up-blue);\n    border-radius: 50%;\n    font-size: 12px;\n    font-weight: 800;\n  }\n\n  .up-highlight {\n    padding: 24px;\n    margin: 22px 0;\n    background: var(--up-blue-light);\n    border: 1px solid #dfe5ff;\n    border-radius: 18px;\n  }\n\n  .up-highlight h3 {\n    margin: 0 0 9px;\n    color: var(--up-blue-dark);\n    font-size: 21px;\n  }\n\n  .up-highlight p {\n    margin: 0;\n    color: #59637c;\n  }\n\n  .up-recipes {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 9px 22px;\n    padding: 0;\n    margin: 0;\n    list-style: none;\n    counter-reset: recipe-counter;\n  }\n\n  .up-recipes li {\n    position: relative;\n    min-height: 30px;\n    padding: 4px 0 4px 38px;\n    color: var(--up-text);\n    counter-increment: recipe-counter;\n  }\n\n  .up-recipes li::before {\n    content: counter(recipe-counter, decimal-leading-zero);\n    position: absolute;\n    top: 4px;\n    left: 0;\n    color: var(--up-blue);\n    font-size: 13px;\n    font-weight: 800;\n    letter-spacing: 0.04em;\n  }\n\n  .up-digital {\n    display: flex;\n    gap: 14px;\n    align-items: flex-start;\n    padding: 20px;\n    margin-top: 22px;\n    background: var(--up-blue-dark);\n    border-radius: 18px;\n    color: #ffffff;\n  }\n\n  .up-digital-icon {\n    flex: 0 0 auto;\n    display: grid;\n    width: 42px;\n    height: 42px;\n    place-items: center;\n    background: rgba(255, 255, 255, 0.14);\n    border-radius: 12px;\n    font-size: 20px;\n  }\n\n  .up-digital strong {\n    display: block;\n    margin-bottom: 3px;\n    font-size: 17px;\n  }\n\n  .up-digital p {\n    margin: 0;\n    color: rgba(255, 255, 255, 0.82);\n    font-size: 14px;\n  }\n\n  .up-note {\n    padding-top: 15px;\n    color: var(--up-muted);\n    font-size: 13px;\n  }\n\n  @media screen and (max-width: 749px) {\n    .up-hero {\n      padding: 28px 20px;\n    }\n\n    .up-stats,\n    .up-recipes {\n      grid-template-columns: 1fr;\n    }\n\n    .up-section,\n    .up-highlight {\n      padding: 20px;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"up-product\"\u003e\n\n  \u003csection class=\"up-hero\"\u003e\n    \u003cspan class=\"up-eyebrow\"\u003eDigitaal kookboek\u003c\/span\u003e\n\n    \u003ch2\u003e20 Makkelijke \u0026amp; Lekkere Avondmaaltijden\u003c\/h2\u003e\n\n    \u003cp\u003e\n      Twintig eenvoudige en gevarieerde avondmaaltijden met herkenbare\n      ingrediënten en duidelijke stappen. Van romige gnocchi en frisse\n      bowls tot curry, vis, ovengerechten en vegetarische maaltijden.\n    \u003c\/p\u003e\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"up-stats\"\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003e20\u003c\/span\u003e\n      \u003csmall\u003eVolledig uitgewerkte avondmaaltijden\u003c\/small\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003eMakkelijk\u003c\/span\u003e\n      \u003csmall\u003eGeschikt voor iedere avond\u003c\/small\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"up-stat\"\u003e\n      \u003cspan\u003eDigitaal\u003c\/span\u003e\n      \u003csmall\u003eDirect en eenvoudig te gebruiken\u003c\/small\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003csection class=\"up-section\"\u003e\n\n    \u003ch3\u003eMaak het avondeten makkelijk\u003c\/h3\u003e\n\n    \u003cp\u003e\n      Lekker avondeten hoeft niet ingewikkeld te zijn. In dit digitale\n      kookboek vind je twintig makkelijke en gevarieerde gerechten die je\n      stap voor stap kunt bereiden. Ideaal voor doordeweekse avonden en\n      voor iedereen die graag lekker eet zonder ingewikkelde recepten.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-section\"\u003e\n\n    \u003ch3\u003eDit vind je in het kookboek\u003c\/h3\u003e\n\n    \u003cul class=\"up-checklist\"\u003e\n      \u003cli\u003e20 makkelijke en lekkere avondmaaltijden\u003c\/li\u003e\n      \u003cli\u003eIngrediënten uit de gewone supermarkt\u003c\/li\u003e\n      \u003cli\u003eDuidelijke bereidingswijze in eenvoudige stappen\u003c\/li\u003e\n      \u003cli\u003eBereidingstijd, porties en moeilijkheid\u003c\/li\u003e\n      \u003cli\u003eChef's Tips voor een beter eindresultaat\u003c\/li\u003e\n      \u003cli\u003eHandige variaties per gerecht\u003c\/li\u003e\n      \u003cli\u003eBewaaradvies en informatie over allergenen\u003c\/li\u003e\n      \u003cli\u003eGeschatte voedingswaarden per portie\u003c\/li\u003e\n    \u003c\/ul\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-highlight\"\u003e\n\n    \u003ch3\u003eVoor iedere avond\u003c\/h3\u003e\n\n    \u003cp\u003e\n      De recepten zijn geschikt voor beginners én ervaren thuiskoks.\n      Dankzij de vaste en overzichtelijke opbouw zie je direct welke\n      ingrediënten je nodig hebt en hoe je iedere avondmaaltijd stap\n      voor stap bereidt.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-section\"\u003e\n\n    \u003ch3\u003eRecepten in dit kookboek\u003c\/h3\u003e\n\n    \u003col class=\"up-recipes\"\u003e\n      \u003cli\u003eRomige gnocchi met kip en spinazie\u003c\/li\u003e\n      \u003cli\u003eGriekse kip met couscous en tzatziki\u003c\/li\u003e\n      \u003cli\u003eGehaktballetjes in tomatensaus met orzo\u003c\/li\u003e\n      \u003cli\u003eKabeljauw met citroenrijst en sperziebonen\u003c\/li\u003e\n      \u003cli\u003eZoete-aardappeltraybake met feta\u003c\/li\u003e\n      \u003cli\u003eRomige tortellini met champignons\u003c\/li\u003e\n      \u003cli\u003eThaise noedels met kip en pindasaus\u003c\/li\u003e\n      \u003cli\u003eTurkse köfte met bulgur en yoghurtsaus\u003c\/li\u003e\n      \u003cli\u003eGroene curry met garnalen\u003c\/li\u003e\n      \u003cli\u003eVegetarische linzencurry met kokos\u003c\/li\u003e\n      \u003cli\u003eKipshoarma bowl met knoflooksaus\u003c\/li\u003e\n      \u003cli\u003eRavioli met tomaat, courgette en mozzarella\u003c\/li\u003e\n      \u003cli\u003eVarkenshaasreepjes met champignonrijst\u003c\/li\u003e\n      \u003cli\u003eFalafel pita met hummus en salade\u003c\/li\u003e\n      \u003cli\u003eRunderreepjes met broccoli en noedels\u003c\/li\u003e\n      \u003cli\u003eAubergine uit de oven met mozzarella\u003c\/li\u003e\n      \u003cli\u003eKip in honing-mosterdsaus met puree\u003c\/li\u003e\n      \u003cli\u003eMediterrane parelcouscous met halloumi\u003c\/li\u003e\n      \u003cli\u003ePompoenrisotto met spinazie\u003c\/li\u003e\n      \u003cli\u003eKipburger met ovenfriet en koolsla\u003c\/li\u003e\n    \u003c\/ol\u003e\n\n  \u003c\/section\u003e\n\n  \u003csection class=\"up-highlight\"\u003e\n\n    \u003ch3\u003ePraktisch en overzichtelijk\u003c\/h3\u003e\n\n    \u003cp\u003e\n      Elk recept bevat dezelfde herkenbare indeling. Zo vind je snel\n      de ingrediënten, bereidingsstappen, tips, allergenen en\n      voedingswaarden terug.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n  \u003cdiv class=\"up-digital\"\u003e\n\n    \u003cdiv class=\"up-digital-icon\"\u003e↓\u003c\/div\u003e\n\n    \u003cdiv\u003e\n      \u003cstrong\u003eDit is een digitaal product\u003c\/strong\u003e\n\n      \u003cp\u003e\n        Je ontvangt een digitaal kookboek met 20 makkelijke en lekkere\n        avondmaaltijden. Er wordt geen fysiek boek per post verzonden.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cp class=\"up-note\"\u003e\n    De vermelde voedingswaarden zijn schattingen en kunnen verschillen\n    door gebruikte merken, portiegroottes en bereidingswijze.\n  \u003c\/p\u003e\n\n\u003c\/div\u003e","brand":"Unlimited-Pages","offers":[{"title":"Default Title","offer_id":58324434223436,"sku":null,"price":3.99,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1069\/5956\/9228\/files\/e9767bbe04b24995cf254d98a85cbfddzfnw5y9oQYAKM2vo-0.png?v=1786113238"}],"url":"https:\/\/unlimited-pages.com\/collections\/frontpage.oembed","provider":"Unlimited-Pages","version":"1.0","type":"link"}