{"id":1243,"date":"2026-10-26T16:12:38","date_gmt":"2026-10-26T15:12:38","guid":{"rendered":"https:\/\/lu.andufit.com\/?page_id=1243"},"modified":"2026-10-26T17:56:50","modified_gmt":"2026-10-26T16:56:50","slug":"sleep-together","status":"publish","type":"page","link":"https:\/\/lu.andufit.com\/pt-pt\/sleep-together\/","title":{"rendered":"Adormecer juntos, descontra\u00eddos"},"content":{"rendered":"\n<!-- ANDUFIT landing page: sleep-together v1 (pt). Paste into ONE Custom HTML block on a blank page template. -->\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600&display=swap\" rel=\"stylesheet\">\n<style>\n\/* ANDUFIT design tokens, taken from andufit.com (Oct 2026) *\/\n#afx-lp {\n    --ink: #0B0F12;\n    --ink-70: rgba(11, 15, 18, .7);\n    --ink-60: rgba(11, 15, 18, .6);\n    --ink-45: rgba(11, 15, 18, .45);\n    --bg: #FFFFFF;\n    --soft: #F9F8F7;\n    --mist: #E4EEF1;\n    --teal: #00576E;\n    --aqua: #3DB7B0;\n    --deep: #07161C;\n    --line: rgba(11, 15, 18, .15);\n    --line-soft: rgba(11, 15, 18, .06);\n    --font: \"Inter\", system-ui, -apple-system, \"Segoe UI\", Roboto, Arial, sans-serif;\n    color-scheme: light;\n    box-sizing: border-box;\n    padding-top: env(safe-area-inset-top, 0px);\n}\n\n#afx-lp *, #afx-lp *::before, #afx-lp *::after {\n    box-sizing: inherit\n}\n\n#afx-lp {\n    -webkit-text-size-adjust: 100%\n}\n\n#afx-lp {\n    margin: 0;\n    background: var(--bg);\n    color: var(--ink);\n    font-family: var(--font);\n    font-size: 18px;\n    line-height: 1.65;\n    -webkit-font-smoothing: antialiased\n}\n\n#afx-lp img {\n    max-width: 100%;\n    height: auto;\n    display: block\n}\n\n#afx-lp a {\n    color: var(--teal)\n}\n\n#afx-lp :focus-visible {\n    outline: 2px solid var(--teal);\n    outline-offset: 3px;\n    border-radius: 4px\n}\n\n#afx-lp strong {\n    font-weight: 600\n}\n\n#afx-lp .col {\n    max-width: 844px;\n    margin: 0 auto;\n    padding: 0 22px\n}\n\n#afx-lp .wide {\n    max-width: 844px;\n    margin: 0 auto;\n    padding: 0 22px\n}\n\n#afx-lp .band {\n    background: var(--soft)\n}\n\/* header *\/\n\n#afx-lp .top {\n    border-bottom: 1px solid var(--line-soft);\n    background: var(--bg)\n}\n\n#afx-lp .top .wide {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    height: 60px\n}\n\n#afx-lp .logo img {\n    height: 22px;\n    width: auto\n}\n\n#afx-lp .adlabel {\n    font-size: 12px;\n    color: var(--ink-60);\n    border: 1px solid var(--line);\n    border-radius: 9999px;\n    padding: 3px 11px\n}\n\/* eyebrow, as on andufit.com *\/\n\n#afx-lp .eyebrow {\n    font-size: 13px;\n    font-weight: 600;\n    letter-spacing: .12em;\n    text-transform: uppercase;\n    color: var(--teal);\n    margin: 0 0 12px\n}\n\/* hero *\/\n\n#afx-lp .hero {\n    padding: 26px 0 0\n}\n\n#afx-lp h1 {\n    font-weight: 600;\n    font-size: clamp(31px, 6vw, 44px);\n    line-height: 1.1;\n    letter-spacing: -.01em;\n    margin: 0 0 16px\n}\n\n#afx-lp .dek {\n    font-size: 19px;\n    line-height: 1.55;\n    color: var(--ink-70);\n    margin: 0 0 22px\n}\n\n#afx-lp .byline {\n    display: flex;\n    gap: 12px;\n    align-items: center;\n    font-size: 14px;\n    color: var(--ink-60);\n    margin-bottom: 24px\n}\n\n#afx-lp .byline .avatar {\n    width: 44px;\n    height: 44px;\n    border-radius: 50%;\n    object-fit: cover;\n    background: var(--mist);\n    flex: 0 0 44px\n}\n\n#afx-lp .byline b {\n    color: var(--ink);\n    font-weight: 500;\n    display: block\n}\n\n#afx-lp .hero-fig {\n    margin: 0\n}\n\n#afx-lp .hero-fig img {\n    width: 100%;\n    aspect-ratio: 4\/3;\n    object-fit: cover;\n    border-radius: 10px\n}\n\n#afx-lp figcaption, #afx-lp .cap {\n    font-size: 14px;\n    color: var(--ink-60);\n    margin-top: 8px;\n    line-height: 1.5\n}\n\n#afx-lp .stars {\n    color: var(--aqua);\n    letter-spacing: 2px;\n    font-size: 14px;\n    line-height: 1\n}\n\n#afx-lp .stars .off {\n    color: var(--line)\n}\n\/* article *\/\n\n#afx-lp article {\n    padding: 26px 0 0\n}\n\n#afx-lp article p {\n    margin: 0 0 1.05em\n}\n\/* two-tone headings, as on andufit.com *\/\n\n#afx-lp h2 {\n    font-weight: 600;\n    font-size: clamp(25px, 4.4vw, 32px);\n    line-height: 1.18;\n    letter-spacing: -.01em;\n    margin: 2.1em 0 .55em;\n    color: var(--ink)\n}\n\n#afx-lp h3 {\n    font-weight: 600;\n    font-size: 22px;\n    line-height: 1.3;\n    letter-spacing: -.005em;\n    margin: 0 0 8px\n}\n\n#afx-lp .lead::first-letter {\n    font-weight: 600;\n    float: left;\n    font-size: 3.3em;\n    line-height: .9;\n    margin: .05em .09em 0 0;\n    color: var(--teal)\n}\n\n#afx-lp .pull {\n    border-left: 2px solid var(--aqua);\n    padding: 2px 0 2px 18px;\n    margin: 1.6em 0;\n    font-size: 21px;\n    line-height: 1.45;\n    font-weight: 400\n}\n\n#afx-lp .pull small {\n    display: block;\n    font-size: 13px;\n    color: var(--ink-60);\n    margin-top: 8px;\n    line-height: 1.5\n}\n\/* stat card, like the homepage benefit cards *\/\n\n#afx-lp .stat {\n    background: var(--soft);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 22px;\n    margin: 1.4em 0\n}\n\n#afx-lp .stat .num {\n    font-weight: 400;\n    font-size: 48px;\n    line-height: 1;\n    color: var(--teal);\n    margin-bottom: 8px\n}\n\n#afx-lp .stat p {\n    margin: 0;\n    font-size: 16px;\n    line-height: 1.5\n}\n\n#afx-lp .stat .src {\n    display: block;\n    font-size: 13px;\n    color: var(--ink-60);\n    margin-top: 6px\n}\n\/* checklist, styled like the BEDCHECK options *\/\n\n#afx-lp .check {\n    background: var(--bg);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 16px;\n    margin: 1.2em 0;\n    display: grid;\n    gap: 8px\n}\n\n#afx-lp .check label {\n    display: flex;\n    gap: 12px;\n    align-items: flex-start;\n    padding: 14px 16px;\n    border-radius: 10px;\n    border: 1px solid var(--line);\n    background: var(--soft);\n    cursor: pointer;\n    font-size: 16px;\n    line-height: 1.45;\n    transition: border-color .15s, background .15s\n}\n\n#afx-lp .check label:has(input:checked) {\n    border-color: var(--teal);\n    background: #EEF5F6\n}\n\n#afx-lp .check input {\n    appearance: none;\n    -webkit-appearance: none;\n    flex: 0 0 20px;\n    height: 20px;\n    margin: 1px 0 0;\n    border: 1.5px solid var(--ink-45);\n    border-radius: 50%;\n    display: grid;\n    place-items: center;\n    cursor: pointer;\n    background: var(--bg)\n}\n\n#afx-lp .check input:checked {\n    border-color: var(--teal);\n    background: var(--teal)\n}\n\n#afx-lp .check input:checked::after {\n    content: \"\";\n    width: 5px;\n    height: 9px;\n    border: solid #fff;\n    border-width: 0 2px 2px 0;\n    transform: rotate(45deg) translate(-.5px, -1px)\n}\n\n#afx-lp .check-out {\n    font-size: 14px;\n    color: var(--ink-60);\n    padding: 4px 4px 0;\n    min-height: 2.4em\n}\n\n#afx-lp .check-out.hit {\n    color: var(--teal);\n    font-weight: 500\n}\n\/* night timeline, in the dark science-section style *\/\n\n#afx-lp .night {\n    background: radial-gradient(120% 80% at 50% 110%, rgba(0, 87, 110, .55), transparent 60%), var(--deep);\n    color: #fff;\n    border-radius: 10px;\n    padding: 28px 22px 24px;\n    margin: 1.8em -6px\n}\n\n#afx-lp .night .eyebrow {\n    color: var(--aqua)\n}\n\n#afx-lp .night h3 {\n    margin-bottom: 6px;\n    color: #fff\n}\n\n#afx-lp .night .sub {\n    font-size: 14px;\n    color: rgba(255, 255, 255, .6);\n    margin: 0 0 18px\n}\n\n#afx-lp .toggle {\n    display: inline-grid;\n    grid-template-columns: 1fr 1fr;\n    max-width: 100%;\n    background: rgba(255, 255, 255, .08);\n    border: 1px solid rgba(255, 255, 255, .1);\n    border-radius: 9999px;\n    padding: 4px;\n    margin-bottom: 24px\n}\n\n#afx-lp .toggle button {\n    line-height: 1.3;\n    font-family: var(--font);\n    font-size: 14px;\n    font-weight: 500;\n    border: 0;\n    background: transparent;\n    color: rgba(255, 255, 255, .7);\n    padding: 9px 16px;\n    border-radius: 9999px;\n    cursor: pointer\n}\n\n#afx-lp .toggle button[aria-pressed=\"true\"] {\n    background: #fff;\n    color: var(--deep)\n}\n\n#afx-lp .tl {\n    list-style: none;\n    margin: 0;\n    padding: 0;\n    position: relative\n}\n\n#afx-lp .tl::before {\n    content: \"\";\n    position: absolute;\n    left: 62px;\n    top: 8px;\n    bottom: 8px;\n    width: 1.5px;\n    background: linear-gradient(rgba(255, 255, 255, .15), rgba(61, 183, 176, .7))\n}\n\n#afx-lp .tl li {\n    display: grid;\n    grid-template-columns: 50px 1fr;\n    gap: 24px;\n    padding: 0 0 18px;\n    position: relative\n}\n\n#afx-lp .tl li:last-child {\n    padding-bottom: 0\n}\n\n#afx-lp .tl time {\n    font-size: 13px;\n    font-weight: 500;\n    color: rgba(255, 255, 255, .55);\n    padding-top: 2px;\n    text-align: right;\n    font-variant-numeric: tabular-nums\n}\n\n#afx-lp .tl li::after {\n    content: \"\";\n    position: absolute;\n    left: 57px;\n    top: 7px;\n    width: 12px;\n    height: 12px;\n    border-radius: 50%;\n    background: var(--deep);\n    border: 1.5px solid rgba(255, 255, 255, .5)\n}\n\n#afx-lp .tl li.key::after {\n    background: var(--aqua);\n    border-color: var(--aqua);\n    box-shadow: 0 0 0 5px rgba(61, 183, 176, .2), 0 0 18px rgba(61, 183, 176, .6)\n}\n\n#afx-lp .tl b {\n    font-weight: 500;\n    font-size: 16px;\n    display: block;\n    margin-bottom: 2px;\n    color: #fff\n}\n\n#afx-lp .tl span {\n    font-size: 16px;\n    line-height: 1.55;\n    color: rgba(255, 255, 255, .7)\n}\n\n#afx-lp .tl[hidden] {\n    display: none\n}\n\n#afx-lp .tl.show {\n    animation: fade .35s ease\n}\n\n@keyframes fade {\n    from {\n        opacity:0\n    }\n\n    to {\n        opacity: 1\n    }\n}\n\n#afx-lp .night .verdict {\n    margin: 22px 0 0;\n    padding-top: 16px;\n    border-top: 1px solid rgba(255, 255, 255, .1);\n    font-size: 16px;\n    color: #fff\n}\n\/* tried list *\/\n\n#afx-lp .tried {\n    display: grid;\n    gap: 10px;\n    margin: 1.2em 0\n}\n\n#afx-lp .tried div {\n    background: var(--soft);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 16px 18px\n}\n\n#afx-lp .tried h3 {\n    display: flex;\n    justify-content: space-between;\n    gap: 12px;\n    align-items: baseline;\n    font-size: 17px;\n    margin-bottom: 6px\n}\n\n#afx-lp .tried h3 em {\n    font-style: normal;\n    font-size: 13px;\n    font-weight: 500;\n    color: var(--teal);\n    white-space: nowrap;\n    border: 1px solid rgba(0, 87, 110, .3);\n    border-radius: 9999px;\n    padding: 2px 9px\n}\n\n#afx-lp .tried p {\n    margin: 0;\n    font-size: 16px;\n    line-height: 1.55;\n    color: var(--ink-70)\n}\n\/* product *\/\n\n#afx-lp .product {\n    padding: 10px 0 34px;\n    margin: 2.4em 0 0\n}\n\n#afx-lp .product h2 {\n    margin-top: 1.3em\n}\n\n#afx-lp .photo {\n    margin: 1.2em 0 .4em;\n    border-radius: 10px;\n    overflow: hidden;\n    background: var(--deep)\n}\n\n#afx-lp .photo img {\n    width: 100%;\n    aspect-ratio: 16\/10;\n    object-fit: cover\n}\n\n#afx-lp .photo video {\n    display: block;\n    width: 100%;\n    height: auto;\n    object-fit: cover;\n    background: var(--soft)\n}\n\n#afx-lp .photo.video {\n    background: var(--soft)\n}\n\n#afx-lp .specs {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 10px;\n    margin: 18px 0\n}\n\n#afx-lp .specs div {\n    background: var(--bg);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 15px 16px\n}\n\n#afx-lp .specs b {\n    font-weight: 600;\n    font-size: 24px;\n    color: var(--teal);\n    display: block;\n    line-height: 1.15\n}\n\n#afx-lp .specs span {\n    font-size: 15px;\n    color: var(--ink-70);\n    line-height: 1.45;\n    display: block;\n    margin-top: 4px\n}\n\/* ritual *\/\n\n#afx-lp .ritual {\n    display: grid;\n    gap: 10px;\n    margin: 1.2em 0\n}\n\n#afx-lp .ritual div {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 10px;\n    align-content: start;\n    align-items: start;\n    background: var(--bg);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 16px 18px\n}\n\n#afx-lp .ritual .when {\n    font-size: 15px;\n    font-weight: 500;\n    justify-self: start;\n    color: var(--teal);\n    border: 1px solid rgba(0, 87, 110, .35);\n    border-radius: 9999px;\n    padding: 6px 14px;\n    text-align: center;\n    white-space: nowrap\n}\n\n#afx-lp .ritual p {\n    margin: 0;\n    font-size: 15px;\n    line-height: 1.5;\n    color: var(--ink-70)\n}\n\/* CTA, matches \"Bekijk de prijs\" on andufit.com *\/\n\n#afx-lp .btn {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 100%;\n    min-height: 58px;\n    padding: 16px 32px;\n    background: var(--teal);\n    color: #fff;\n    font-family: var(--font);\n    font-weight: 400;\n    font-size: 17px;\n    border-radius: 8px;\n    text-decoration: none;\n    text-align: center\n}\n\n#afx-lp .btn:hover {\n    background: #00485B\n}\n\n#afx-lp .cta-block {\n    margin: 1.6em 0 0\n}\n\n#afx-lp .cta-note {\n    font-size: 14px;\n    color: var(--ink-60);\n    text-align: center;\n    margin-top: 10px\n}\n\/* study, in the dark science style with the PubMed pill *\/\n\n#afx-lp .study {\n    background: var(--soft);\n    border: 1px solid var(--line-soft);\n    border-radius: 14px;\n    padding: 22px 18px;\n    margin: 1.4em 0 .8em\n}\n\n#afx-lp .pill {\n    display: inline-block;\n    font-size: 13px;\n    font-weight: 600;\n    letter-spacing: .02em;\n    color: var(--teal);\n    background: var(--mist);\n    border-radius: 9999px;\n    padding: 6px 13px;\n    margin-bottom: 14px\n}\n\n#afx-lp .study h3 {\n    font-size: 20px;\n    margin: 0 0 4px\n}\n\n#afx-lp .study .meta {\n    font-size: 14px;\n    color: var(--ink-60);\n    margin: 0 0 16px\n}\n\n#afx-lp .setup {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 10px\n}\n\n#afx-lp .setup div {\n    background: var(--bg);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 13px 15px\n}\n\n#afx-lp .setup b {\n    display: block;\n    font-size: 16px;\n    font-weight: 600;\n    line-height: 1.3\n}\n\n#afx-lp .setup span {\n    display: block;\n    font-size: 14px;\n    color: var(--ink-60);\n    margin-top: 2px\n}\n\n#afx-lp .study-grid {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 10px;\n    margin: 14px 0 0\n}\n\n#afx-lp .study-grid div {\n    border-top: 2px solid var(--aqua);\n    padding: 12px 2px 0\n}\n\n#afx-lp .study-grid b {\n    font-weight: 600;\n    font-size: 26px;\n    color: var(--teal);\n    display: block;\n    line-height: 1.15\n}\n\n#afx-lp .study-grid span {\n    font-size: 14px;\n    color: var(--ink-70);\n    line-height: 1.35;\n    display: block;\n    margin-top: 4px\n}\n\n#afx-lp .fine {\n    font-size: 13px;\n    line-height: 1.55;\n    color: var(--ink-60)\n}\n\/* faq *\/\n\n#afx-lp .faq details {\n    border-bottom: 1px solid var(--line)\n}\n\n#afx-lp .faq summary {\n    list-style: none;\n    cursor: pointer;\n    font-weight: 600;\n    font-size: 17px;\n    padding: 18px 34px 18px 0;\n    position: relative\n}\n\n#afx-lp .faq summary::-webkit-details-marker {\n    display: none\n}\n\n#afx-lp .faq summary::after {\n    content: \"\";\n    position: absolute;\n    right: 6px;\n    top: 24px;\n    width: 9px;\n    height: 9px;\n    border: solid var(--ink-60);\n    border-width: 0 1.5px 1.5px 0;\n    transform: rotate(45deg);\n    transition: transform .2s\n}\n\n#afx-lp .faq details[open] summary::after {\n    transform: rotate(-135deg);\n    top: 28px\n}\n\n#afx-lp .faq details p {\n    margin: 0 0 18px;\n    font-size: 16px;\n    color: var(--ink-70)\n}\n\/* offer *\/\n\n#afx-lp .offer {\n    background: var(--soft);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 28px 22px;\n    margin: 2.4em 0 1em\n}\n\n#afx-lp .offer h2 {\n    margin: 0 0 10px\n}\n\n#afx-lp .offer ul {\n    list-style: none;\n    padding: 0;\n    margin: 18px 0 22px;\n    display: grid;\n    gap: 10px\n}\n\n#afx-lp .offer li {\n    display: flex;\n    gap: 12px;\n    font-size: 16px;\n    line-height: 1.45\n}\n\n#afx-lp .offer li svg {\n    flex: 0 0 20px;\n    margin-top: 2px;\n    color: var(--aqua)\n}\n\n#afx-lp .offer h2 {\n    font-size: clamp(24px, 4vw, 30px);\n    line-height: 1.2\n}\n\n#afx-lp .offer > p {\n    margin: 0\n}\n\n#afx-lp .trial {\n    list-style: none;\n    margin: 20px 0 6px;\n    padding: 0;\n    display: grid;\n    gap: 10px\n}\n\n#afx-lp .trial li {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 4px;\n    align-content: start;\n    background: var(--bg);\n    border: 1px solid var(--line-soft);\n    border-radius: 10px;\n    padding: 18px\n}\n\n#afx-lp .trial b {\n    justify-self: start;\n    font-size: 15px;\n    font-weight: 500;\n    color: var(--teal);\n    border: 1px solid rgba(0, 87, 110, .35);\n    border-radius: 9999px;\n    padding: 6px 14px;\n    white-space: nowrap;\n    margin-bottom: 8px\n}\n\n#afx-lp .trial span {\n    font-size: 15px;\n    line-height: 1.5;\n    color: var(--ink-70)\n}\n\n@media (min-width: 760px) {\n    #afx-lp .trial {\n        grid-template-columns: repeat(3, 1fr)\n    }\n\n    #afx-lp .trial li {\n        grid-template-columns: 1fr;\n        gap: 4px;\n        align-content: start;\n        align-items: start\n    }\n}\n\n#afx-lp .signoff {\n    font-family: \"Freestyle Script\", \"Brush Script MT\", cursive;\n    font-size: 34px;\n    color: var(--teal);\n    text-align: center;\n    margin: 20px 0 0\n}\n\n#afx-lp .sources {\n    border-top: 1px solid var(--line-soft);\n    margin-top: 3em;\n    padding: 22px 0 130px\n}\n\n#afx-lp .sources h2 {\n    font-size: 16px;\n    font-weight: 500;\n    margin: 0 0 10px\n}\n\n#afx-lp .sources ol {\n    padding-left: 20px;\n    margin: 0 0 16px\n}\n\n#afx-lp .sources li {\n    font-size: 13px;\n    line-height: 1.55;\n    color: var(--ink-60);\n    margin-bottom: 6px\n}\n\/* floating CTA: same style as the main button, appears in the product section *\/\n\n#afx-lp .sticky {\n    position: fixed;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    z-index: 20;\n    pointer-events: none;\n    background: none;\n    border: 0;\n    box-shadow: none;\n    padding: 0 16px calc(14px + env(safe-area-inset-bottom, 0px));\n    transform: translateY(140%);\n    transition: transform .35s ease\n}\n\n#afx-lp .sticky.on {\n    transform: none\n}\n\n#afx-lp .sticky .inner {\n    max-width: 800px;\n    margin: 0 auto;\n    pointer-events: auto;\n    background: none;\n    border: 0;\n    padding: 0\n}\n\n#afx-lp .sticky .btn {\n    box-shadow: 0 12px 28px -10px rgba(0, 40, 50, .55), 0 2px 6px rgba(0, 40, 50, .15)\n}\n\n@media (min-width: 760px) {\n    #afx-lp .night {\n        padding: 34px 34px 28px\n    }\n}\n\n@media (max-width: 420px) {\n    #afx-lp {\n        font-size: 17px\n    }\n\n    #afx-lp .study-grid b {\n        font-size: 22px\n    }\n}\n\/* ===== Solution section: dark brand band, product image blends into the background ===== *\/\n\n#afx-lp .sol {\n    margin: 2.4em 0 0\n}\n\n#afx-lp .sol-card {\n    background: radial-gradient(90% 40% at 50% 30%, #2a454c 0%, #1e343a 60%, #15272d 100%);\n    color: #fff;\n    border-radius: 14px;\n    padding: 36px 22px 30px;\n    margin: 0 -10px\n}\n\n#afx-lp .sol .eyebrow {\n    color: var(--aqua)\n}\n\n#afx-lp .sol h2 {\n    color: #fff;\n    margin-top: 0\n}\n\n#afx-lp .sol h3 {\n    color: #fff;\n    font-size: 26px;\n    margin: 2.2em 0 .5em\n}\n\n#afx-lp .sol p {\n    color: rgba(255, 255, 255, .78)\n}\n\n#afx-lp .sol .cap {\n    color: rgba(255, 255, 255, .55)\n}\n\n#afx-lp .sol-lead {\n    font-size: 18px;\n    line-height: 1.6\n}\n\n#afx-lp .sol-hero {\n    position: relative;\n    margin: 4px -12px 0;\n    padding: 0\n}\n\n#afx-lp .sol-hero img {\n    width: 100%;\n    height: auto;\n    -webkit-mask-image: radial-gradient(ellipse 72% 70% at 50% 52%, #000 55%, transparent 100%);\n    mask-image: radial-gradient(ellipse 72% 70% at 50% 52%, #000 55%, transparent 100%)\n}\n\n#afx-lp .chip {\n    position: absolute;\n    font-size: 13px;\n    font-weight: 500;\n    color: #fff;\n    background: rgba(7, 22, 28, .55);\n    border: 1px solid rgba(61, 183, 176, .55);\n    border-radius: 9999px;\n    padding: 6px 12px;\n    white-space: nowrap;\n    -webkit-backdrop-filter: blur(6px);\n    backdrop-filter: blur(6px)\n}\n\n#afx-lp .chip::before {\n    content: \"\";\n    display: inline-block;\n    width: 7px;\n    height: 7px;\n    border-radius: 50%;\n    background: var(--aqua);\n    box-shadow: 0 0 10px var(--aqua);\n    margin-right: 8px;\n    vertical-align: 1px\n}\n\n#afx-lp .figures {\n    list-style: none;\n    margin: 0;\n    padding: 22px 0;\n    display: grid;\n    grid-template-columns: repeat(4, 1fr);\n    border-top: 1px solid rgba(255, 255, 255, .12);\n    border-bottom: 1px solid rgba(255, 255, 255, .12)\n}\n\n#afx-lp .figures li {\n    text-align: center;\n    padding: 0 6px\n}\n\n#afx-lp .figures li + li {\n    border-left: 1px solid rgba(255, 255, 255, .12)\n}\n\n#afx-lp .figures b {\n    display: block;\n    font-size: 30px;\n    font-weight: 600;\n    line-height: 1.1;\n    color: var(--aqua)\n}\n\n#afx-lp .figures span {\n    display: block;\n    font-size: 13px;\n    color: rgba(255, 255, 255, .65);\n    margin-top: 4px\n}\n\n#afx-lp .frame {\n    margin: 1em 0 .4em;\n    border-radius: 10px;\n    overflow: hidden;\n    border: 1px solid rgba(255, 255, 255, .1);\n    background: #0f1e23\n}\n\n#afx-lp .frame video {\n    display: block;\n    width: 100%;\n    height: auto;\n    object-fit: cover\n}\n\n#afx-lp .steps {\n    list-style: none;\n    margin: 18px 0 0;\n    padding: 0;\n    display: grid;\n    gap: 14px;\n    counter-reset: st\n}\n\n#afx-lp .steps li {\n    display: grid;\n    grid-template-columns: 32px 1fr;\n    column-gap: 14px;\n    counter-increment: st\n}\n\n#afx-lp .steps li::before {\n    content: counter(st);\n    grid-row: 1\/span 2;\n    width: 32px;\n    height: 32px;\n    border-radius: 50%;\n    border: 1px solid rgba(61, 183, 176, .6);\n    color: var(--aqua);\n    font-size: 14px;\n    font-weight: 600;\n    display: grid;\n    place-items: center\n}\n\n#afx-lp .steps b {\n    font-size: 17px;\n    font-weight: 600;\n    color: #fff;\n    line-height: 1.35;\n    padding-top: 5px\n}\n\n#afx-lp .steps span {\n    font-size: 16px;\n    line-height: 1.55;\n    color: rgba(255, 255, 255, .72)\n}\n\n#afx-lp .sol .specs {\n    margin: 18px 0 0\n}\n\n#afx-lp .sol .specs div {\n    padding: 18px\n}\n\n@media (max-width: 520px) {\n    #afx-lp .sol .specs {\n        grid-template-columns: 1fr\n    }\n}\n\n#afx-lp .sol .specs div {\n    background: rgba(255, 255, 255, .05);\n    border: 1px solid rgba(255, 255, 255, .1)\n}\n\n#afx-lp .sol .specs b {\n    color: var(--aqua);\n    font-size: 20px;\n    line-height: 1.3\n}\n\n#afx-lp .sol .specs span {\n    color: rgba(255, 255, 255, .75);\n    margin-top: 6px;\n    font-size: 15px;\n    line-height: 1.5\n}\n\n#afx-lp .science {\n    margin-top: .6em\n}\n\n#afx-lp .couple {\n    margin-top: .6em\n}\n\n#afx-lp .couple .ritual {\n    margin-top: 1.2em\n}\n\n#afx-lp .couple .ritual div {\n    background: var(--soft)\n}\n\n@media (min-width: 760px) {\n    #afx-lp .couple .ritual {\n        grid-template-columns: 1fr 1fr\n    }\n}\n\n#afx-lp .sol .ritual div {\n    background: rgba(255, 255, 255, .05);\n    border: 1px solid rgba(255, 255, 255, .1)\n}\n\n#afx-lp .sol .ritual p {\n    color: rgba(255, 255, 255, .85)\n}\n\n#afx-lp .sol .ritual .when {\n    color: var(--aqua);\n    border-color: rgba(61, 183, 176, .5)\n}\n\n@media (min-width: 760px) {\n    #afx-lp .steps {\n        grid-template-columns: repeat(3, 1fr);\n        gap: 24px\n    }\n\n    #afx-lp .steps li {\n        grid-template-columns: 1fr;\n        grid-row: span 3;\n        grid-template-rows: subgrid;\n        row-gap: 8px\n    }\n\n    #afx-lp .steps li::before {\n        grid-row: auto\n    }\n\n    #afx-lp .steps b {\n        padding-top: 0\n    }\n\n    #afx-lp .sol .ritual {\n        grid-template-columns: 1fr 1fr\n    }\n\n    #afx-lp .sol-card {\n        padding: 52px 48px 44px;\n        margin: 0 -24px\n    }\n\n    #afx-lp .sol-hero {\n        margin: 4px -24px 0\n    }\n}\n\n@media (max-width: 480px) {\n    #afx-lp .figures {\n        grid-template-columns: 1fr 1fr;\n        row-gap: 18px\n    }\n\n    #afx-lp .figures li:nth-child(3) {\n        border-left: 0\n    }\n\n    #afx-lp .figures b {\n        font-size: 26px\n    }\n\n    #afx-lp .chip {\n        font-size: 11.5px;\n        padding: 4px 9px\n    }\n\n    #afx-lp .sol h3 {\n        font-size: 23px\n    }\n}\n\n@media (prefers-reduced-motion: reduce) {\n    #afx-lp * {\n        animation: none !important;\n        transition: none !important\n    }\n}\n\n\/* resets against theme styles *\/\n#afx-lp img, #afx-lp video {\n    border: 0;\n    box-shadow: none;\n    margin: 0\n}\n\n#afx-lp figure {\n    margin-left: 0;\n    margin-right: 0\n}\n\n#afx-lp ul, #afx-lp ol {\n    margin-left: 0\n}\n\n#afx-lp a.btn, #afx-lp a.btn:hover, #afx-lp a.btn:focus {\n    color: #fff;\n    text-decoration: none\n}\n\n#afx-lp h1, #afx-lp h2, #afx-lp h3 {\n    font-family: var(--font);\n    text-transform: none\n}\n\n\/* hide leftover theme chrome (Shoptimizer header bar, footer, mobile bars) on this page only *\/\nbody #masthead, body .site-header, body .header-4-container, body .col-full-nav, body .site-footer, body #colophon, body .shoptimizer-mobile-menu-bar, body .mobile-footer-bar {\n    display: none !important\n}\n\nhtml, body {\n    background: #fff !important\n}\n\nbody .site-content {\n    padding-top: 0 !important\n}\n\/* ===== Rugcheck survey (flow and scoring as the bedcheck on andufit.com) ===== *\/\n\n.sv {\n    background: var(--bg);\n    border: 1px solid var(--line);\n    border-radius: 14px;\n    padding: 20px 18px 22px;\n    margin: 1.2em 0 .4em;\n    box-shadow: 0 1px 2px rgba(11, 15, 18, .04)\n}\n\n#afx-lp .sv-head {\n    display: flex;\n    justify-content: space-between;\n    align-items: baseline;\n    margin-bottom: 10px\n}\n\n#afx-lp .sv-eyebrow {\n    font-size: 13px;\n    font-weight: 600;\n    letter-spacing: .12em;\n    text-transform: uppercase;\n    color: var(--teal);\n    margin: 0\n}\n\n#afx-lp .sv-count {\n    font-size: 13px;\n    color: var(--ink-60)\n}\n\n#afx-lp .sv-bar {\n    height: 4px;\n    border-radius: 9999px;\n    background: rgba(11, 15, 18, .08);\n    overflow: hidden;\n    margin-bottom: 18px\n}\n\n#afx-lp .sv-bar i {\n    display: block;\n    height: 100%;\n    width: 33%;\n    background: var(--teal);\n    border-radius: 9999px;\n    transition: width .35s ease\n}\n\n#afx-lp .sv-step h3 {\n    font-size: 20px;\n    margin: 0 0 4px\n}\n\n#afx-lp .sv-hint {\n    font-size: 15px;\n    color: var(--ink-60);\n    margin: 0 0 14px\n}\n\n#afx-lp .sv .check {\n    border: 0;\n    padding: 0;\n    margin: 0\n}\n\n#afx-lp .sv-nav {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    margin-top: 18px;\n    gap: 12px\n}\n\n#afx-lp .sv-btn {\n    font-family: var(--font);\n    font-size: 16px;\n    font-weight: 500;\n    color: #fff;\n    background: var(--teal);\n    border: 0;\n    border-radius: 8px;\n    padding: 13px 22px;\n    min-height: 48px;\n    cursor: pointer\n}\n\n#afx-lp .sv-btn:disabled {\n    background: rgba(11, 15, 18, .12);\n    color: var(--ink-45);\n    cursor: default\n}\n\n#afx-lp .sv-back {\n    font-family: var(--font);\n    font-size: 15px;\n    color: var(--ink-60);\n    background: none;\n    border: 0;\n    padding: 10px 0;\n    cursor: pointer\n}\n\n#afx-lp .sv-back:hover {\n    color: var(--teal)\n}\n\n#afx-lp .sv-options {\n    display: grid;\n    gap: 8px\n}\n\n#afx-lp .sv-options button {\n    display: flex;\n    gap: 12px;\n    align-items: center;\n    text-align: left;\n    font-family: var(--font);\n    font-size: 16px;\n    color: var(--ink);\n    background: var(--soft);\n    border: 1px solid var(--line);\n    border-radius: 10px;\n    padding: 14px 16px;\n    min-height: 52px;\n    cursor: pointer;\n    transition: border-color .15s, background .15s\n}\n\n#afx-lp .sv-options button i {\n    flex: 0 0 20px;\n    height: 20px;\n    border: 1.5px solid var(--ink-45);\n    border-radius: 50%;\n    display: grid;\n    place-items: center\n}\n\n#afx-lp .sv-options button[aria-checked=\"true\"] {\n    border-color: var(--teal);\n    background: #EEF5F6\n}\n\n#afx-lp .sv-options button[aria-checked=\"true\"] i {\n    border-color: var(--teal);\n    background: var(--teal);\n    box-shadow: inset 0 0 0 4px #EEF5F6\n}\n\n#afx-lp .sv-scale {\n    margin-top: 16px\n}\n\n#afx-lp .sv-scale p {\n    font-size: 16px;\n    line-height: 1.35;\n    margin: 0 0 8px\n}\n\n#afx-lp .sv-nums {\n    display: flex;\n    gap: 6px\n}\n\n#afx-lp .sv-nums button {\n    flex: 1;\n    min-width: 0;\n    height: 46px;\n    font-family: var(--font);\n    font-size: 16px;\n    color: var(--ink-70);\n    background: var(--soft);\n    border: 1px solid rgba(11, 15, 18, .2);\n    border-radius: 8px;\n    cursor: pointer;\n    transition: all .15s\n}\n\n#afx-lp .sv-nums button:hover {\n    border-color: var(--teal);\n    color: var(--teal);\n    background: #fff\n}\n\n#afx-lp .sv-nums button[aria-pressed=\"true\"] {\n    background: var(--teal);\n    border-color: var(--teal);\n    color: #fff;\n    font-weight: 600\n}\n\n#afx-lp .sv-ends {\n    display: flex;\n    justify-content: space-between;\n    font-size: 13px;\n    color: var(--ink-45);\n    margin-top: 4px\n}\n\n#afx-lp .sv-score {\n    background: #E4EEF1;\n    border: 1px solid rgba(0, 87, 110, .18);\n    border-radius: 12px;\n    padding: 18px\n}\n\n#afx-lp .sv-big {\n    display: flex;\n    align-items: baseline;\n    gap: 8px;\n    margin: 6px 0 10px\n}\n\n#afx-lp .sv-big b {\n    font-size: 56px;\n    font-weight: 500;\n    line-height: 1;\n    color: var(--band-text, #a16207);\n    font-variant-numeric: tabular-nums\n}\n\n#afx-lp .sv-big span {\n    font-size: 15px;\n    color: var(--ink-60)\n}\n\n#afx-lp .sv-meter {\n    height: 8px;\n    border-radius: 9999px;\n    background: #fff;\n    overflow: hidden\n}\n\n#afx-lp .sv-meter i {\n    display: block;\n    height: 100%;\n    width: 0;\n    background: var(--band-bar, #eab308);\n    border-radius: 9999px;\n    transition: width .9s ease\n}\n\n#afx-lp .sv-what {\n    font-size: 14px;\n    color: var(--ink-60);\n    margin: 10px 0 14px\n}\n\n#afx-lp .sv-score h3 {\n    font-size: 19px;\n    margin: 0 0 4px\n}\n\n#afx-lp .sv-score p:last-child {\n    font-size: 15px;\n    color: var(--ink-70);\n    margin: 0\n}\n\n#afx-lp .sv-report {\n    margin-top: 14px;\n    border: 1px solid var(--line);\n    border-radius: 12px;\n    padding: 18px\n}\n\n#afx-lp .sv-author {\n    display: flex;\n    gap: 14px;\n    align-items: center;\n    margin-bottom: 10px\n}\n\n#afx-lp .sv-author img {\n    width: 56px;\n    height: 56px;\n    border-radius: 50%;\n    object-fit: cover;\n    flex: 0 0 56px\n}\n\n#afx-lp .sv-author h3 {\n    font-size: 19px;\n    margin: 0 0 2px\n}\n\n#afx-lp .sv-author p {\n    font-size: 14px;\n    color: var(--teal);\n    margin: 0\n}\n\n#afx-lp .sv-lead {\n    font-size: 15px;\n    color: var(--ink-70);\n    margin: 0 0 14px\n}\n\n#afx-lp .sv-sr {\n    position: absolute;\n    width: 1px;\n    height: 1px;\n    overflow: hidden;\n    clip: rect(0 0 0 0)\n}\n\n#afx-lp #svEmail {\n    display: block;\n    width: 100%;\n    font-family: var(--font);\n    font-size: 17px;\n    color: var(--ink);\n    background: #fff;\n    border: 1px solid rgba(11, 15, 18, .2);\n    border-radius: 10px;\n    padding: 14px 16px;\n    margin: 0 0 10px;\n    min-height: 52px\n}\n\n#afx-lp #svEmail:focus {\n    outline: 2px solid var(--teal);\n    outline-offset: 1px;\n    border-color: var(--teal)\n}\n\n#afx-lp .sv-err {\n    font-size: 14px;\n    color: #b3261e;\n    margin: 8px 0 0;\n    min-height: 0\n}\n\n#afx-lp .sv-consent {\n    font-size: 13px;\n    color: var(--ink-60);\n    margin: 10px 0 0\n}\n\n#afx-lp .sv-consent a {\n    color: var(--ink-60)\n}\n\n#afx-lp .sv-done h3 {\n    font-size: 19px;\n    margin: 0 0 4px;\n    color: var(--teal)\n}\n\n#afx-lp .sv-done p {\n    font-size: 15px;\n    color: var(--ink-70);\n    margin: 0\n}\n\n#afx-lp .sv-restart {\n    display: block;\n    margin: 12px auto 0;\n    font-size: 14px\n}\n\n#afx-lp .sv-step {\n    animation: svIn .3s ease\n}\n\n@keyframes svIn {\n    from {\n        opacity: 0;\n        transform:translateY(6px)\n    }\n\n    to {\n        opacity: 1;\n        transform: none\n    }\n}\n\n@media (min-width: 760px) {\n    #afx-lp .sv {\n        padding: 28px 30px 30px\n    }\n\n    #afx-lp .sv-options {\n        grid-template-columns: 1fr 1fr\n    }\n}\n\n#afx-lp .sv-lg button {\n    font-size: 18px;\n    font-weight: 500;\n    min-height: 58px\n}\n\n#afx-lp .sv-chips {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 8px\n}\n\n#afx-lp .sv-chips button {\n    font-family: var(--font);\n    font-size: 16px;\n    color: var(--ink);\n    background: var(--soft);\n    border: 1px solid var(--line);\n    border-radius: 9999px;\n    padding: 11px 18px;\n    min-height: 46px;\n    cursor: pointer;\n    transition: all .15s\n}\n\n#afx-lp .sv-chips button[aria-pressed=\"true\"] {\n    background: var(--teal);\n    border-color: var(--teal);\n    color: #fff\n}\n\n#afx-lp .sv-step h3 {\n    font-size: 21px\n}\n\n#afx-lp .sv-step .sv-scale {\n    margin-top: 10px\n}\n\n\/* consistent question layout: same title size, same gap to answers, same answer text size *\/\n#afx-lp .sv-step h3 {\n    font-size: 21px;\n    line-height: 1.3;\n    margin: 0 0 16px\n}\n\n#afx-lp .sv-step .sv-hint {\n    margin: -10px 0 16px;\n    font-size: 15px\n}\n\n#afx-lp .sv-step .sv-scale {\n    margin: 0\n}\n\n#afx-lp .sv-options button, #afx-lp .sv-lg button {\n    font-size: 17px;\n    font-weight: 400;\n    min-height: 54px\n}\n\n#afx-lp .sv-nums button {\n    font-size: 17px;\n    height: 54px\n}\n\n#afx-lp .sv-chips button {\n    font-size: 17px;\n    min-height: 48px\n}\n\n#afx-lp .sv-ends {\n    margin-top: 8px\n}\n\n#afx-lp .sv-nav {\n    margin-top: 20px\n}\n\n\/* scale end labels: above the buttons, clearly readable *\/\n#afx-lp .sv-ends {\n    display: flex;\n    justify-content: space-between;\n    margin: 0 0 8px;\n    font-size: 15px;\n    font-weight: 600;\n    color: var(--teal)\n}\n\n#afx-lp .byline-role {\n    display: block;\n    font-size: 13.5px;\n    line-height: 1.4;\n    color: var(--ink-60);\n    margin-top: 2px\n}\n\n#afx-lp .byline {\n    align-items: flex-start\n}\n\n#afx-lp .byline .avatar {\n    margin-top: 2px\n}\n\n#afx-lp .sv-head {\n    flex-wrap: wrap;\n    row-gap: 4px;\n    column-gap: 12px\n}\n\n#afx-lp .sv-head .sv-eyebrow, #afx-lp .sv-head .sv-count {\n    white-space: nowrap\n}\n\n#afx-lp .sv-head .sv-eyebrow {\n    letter-spacing: .1em\n}\n\n\/* iOS Safari tints its bottom toolbar from fixed elements near the bottom edge.\n   Remove the floating button from layout while it is hidden, and drop unused theme drawers. *\/\n#afx-lp .sticky:not(.on) {\n    display: none\n}\n\n#afx-lp .sticky.on {\n    animation: afxStickyIn .35s ease both\n}\n\n@keyframes afxStickyIn {\n    from {\n        transform:translateY(140%)\n    }\n\n    to {\n        transform: none\n    }\n}\n\n#shoptimizerCartDrawer, .shoptimizer-mini-cart-wrap, .col-full-nav {\n    display: none !important\n}\n\n\/* keep the floating button off the screen edge, so Safari does not sample it for its toolbar colour *\/\n#afx-lp .sticky {\n    bottom: calc(14px + env(safe-area-inset-bottom, 0px));\n    padding: 0 16px;\n    background: transparent\n}\n\n#afx-lp .bars {\n    background: var(--soft);\n    border: 1px solid var(--line);\n    border-radius: 14px;\n    padding: 20px 20px 14px;\n    margin: 22px 0\n}\n\n#afx-lp .bars-title {\n    font-size: 13px;\n    font-weight: 600;\n    letter-spacing: .12em;\n    text-transform: uppercase;\n    color: var(--teal);\n    margin: 0 0 14px\n}\n\n#afx-lp .bar-row {\n    margin: 0 0 16px\n}\n\n#afx-lp .bar-label {\n    display: block;\n    font-size: 15px;\n    font-weight: 600;\n    color: var(--ink);\n    margin-bottom: 6px\n}\n\n#afx-lp .bar {\n    position: relative;\n    height: 30px;\n    background: #fff;\n    border-radius: 6px;\n    margin: 4px 0;\n    overflow: hidden\n}\n\n#afx-lp .bar i {\n    position: absolute;\n    left: 0;\n    top: 0;\n    bottom: 0;\n    background: var(--mist);\n    border-radius: 6px\n}\n\n#afx-lp .bar.on i {\n    background: var(--aqua)\n}\n\n#afx-lp .bar em {\n    position: relative;\n    font-style: normal;\n    font-size: 14px;\n    line-height: 30px;\n    padding-left: 10px;\n    color: var(--ink)\n}\n\n#afx-lp .bar.on em {\n    font-weight: 600\n}\n\n#afx-lp .reviews {\n    display: grid;\n    gap: 12px;\n    margin-top: 22px\n}\n\n#afx-lp .reviews figure {\n    margin: 0;\n    background: #fff;\n    border: 1px solid var(--line);\n    border-radius: 14px;\n    padding: 18px 20px\n}\n\n#afx-lp .reviews p {\n    margin: 0 0 8px;\n    font-size: 17px;\n    line-height: 1.5;\n    color: var(--ink)\n}\n\n#afx-lp .reviews figcaption {\n    font-size: 14px;\n    color: var(--ink-60)\n}\n\n@media (min-width: 760px) {\n    #afx-lp .reviews {\n        grid-template-columns: 1fr 1fr\n    }\n}\n\n#afx-lp .progs {\n    display: grid;\n    gap: 10px;\n    margin: 18px 0 20px\n}\n\n#afx-lp .progs > div {\n    display: flex;\n    gap: 14px;\n    align-items: flex-start;\n    background: rgba(255, 255, 255, .06);\n    border: 1px solid rgba(255, 255, 255, .14);\n    border-radius: 14px;\n    padding: 16px 18px\n}\n\n#afx-lp .progs .pnum {\n    flex: 0 0 auto;\n    font-size: 14px;\n    font-weight: 600;\n    letter-spacing: .04em;\n    color: var(--deep);\n    background: var(--aqua);\n    border-radius: 9999px;\n    padding: 5px 11px;\n    margin-top: 1px\n}\n\n#afx-lp .progs b {\n    display: block;\n    font-size: 18px;\n    font-weight: 600;\n    color: #fff;\n    margin-bottom: 3px\n}\n\n#afx-lp .progs span:not(.pnum) {\n    display: block;\n    font-size: 16px;\n    line-height: 1.5;\n    color: rgba(255, 255, 255, .78)\n}\n\n@media (min-width: 760px) {\n    #afx-lp .progs {\n        grid-template-columns: 1fr 1fr\n    }\n}\n\n#afx-lp .checks {\n    list-style: none;\n    padding: 0;\n    margin: 14px 0 18px;\n    display: grid;\n    gap: 10px\n}\n\n#afx-lp .checks li {\n    display: flex;\n    gap: 12px;\n    align-items: flex-start;\n    background: var(--soft);\n    border: 1px solid var(--line);\n    border-radius: 12px;\n    padding: 14px 16px;\n    font-size: 17px;\n    line-height: 1.5\n}\n\n#afx-lp .checks svg {\n    flex: 0 0 auto;\n    color: var(--teal);\n    margin-top: 3px\n}\n\n#afx-lp .cmp-wrap {\n    overflow-x: auto;\n    margin: 16px 0 18px;\n    border: 1px solid var(--line);\n    border-radius: 14px\n}\n\n#afx-lp .cmp {\n    width: 100%;\n    border-collapse: collapse;\n    font-size: 15px;\n    line-height: 1.4;\n}\n\n#afx-lp .cmp th, #afx-lp .cmp td {\n    padding: 12px 14px;\n    text-align: left;\n    border-bottom: 1px solid var(--line);\n    vertical-align: top\n}\n\n#afx-lp .cmp thead th {\n    background: var(--soft);\n    font-weight: 600;\n    color: var(--ink)\n}\n\n#afx-lp .cmp thead th:last-child {\n    background: var(--teal);\n    color: #fff\n}\n\n#afx-lp .cmp tbody th {\n    font-weight: 600;\n    color: var(--ink);\n    width: 34%\n}\n\n#afx-lp .cmp tbody tr:last-child th, #afx-lp .cmp tbody tr:last-child td {\n    border-bottom: 0\n}\n\n#afx-lp .cmp td.yes {\n    color: var(--teal);\n    font-weight: 600\n}\n\n#afx-lp .cmp td.no {\n    color: var(--ink-60)\n}\n\n#afx-lp .cmp td:last-child {\n    background: rgba(61, 183, 176, .08)\n}\n\n@media (max-width: 520px) {\n    #afx-lp .cmp {\n        font-size: 13.5px;\n        table-layout:fixed\n    }\n\n    #afx-lp .cmp th, #afx-lp .cmp td {\n        overflow-wrap: break-word;\n        hyphens:auto\n    }\n\n    #afx-lp .cmp th, #afx-lp .cmp td {\n        padding:10px 7px\n    }\n\n    #afx-lp .cmp tbody th, #afx-lp .cmp thead th:first-child {\n        width: 34%\n    }\n}\n\n@media (max-width: 380px) {\n    #afx-lp .cmp {\n        font-size:12.5px\n    }\n\n    #afx-lp .cmp th, #afx-lp .cmp td {\n        padding: 9px 5px\n    }\n}\n\n#afx-lp .hero-video video {\n    display: block;\n    width: 100%;\n    height: auto;\n    border-radius: 10px;\n    background: var(--soft)\n}\n\n#afx-lp .couple .photo img {\n    aspect-ratio: 4\/3\n}\n<\/style>\n<div id=\"afx-lp\">\n    <header class=\"top\">\n        <div class=\"wide\">\n            <a class=\"logo\" href=\"https:\/\/www.andufit.com\/\" data-track=\"logo\">\n                <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.andufit.com\/logo-andufit.png\" alt=\"ANDUFIT\" width=\"81\" height=\"22\">\n            <\/a>\n        <\/div>\n    <\/header>\n\n    <main>\n        <section class=\"hero\">\n            <div class=\"col\">\n                <h1>Adormecer juntos, descontra\u00eddos<\/h1>\n                <p class=\"dek\">Cada vez mais casais dormem separados, na esperan\u00e7a de que ambos durmam melhor e acordem descansados. Tamb\u00e9m pode ser diferente. Descubra porque \u00e9 que relaxar juntos antes de dormir \u00e9 o caminho para um sono profundo, e como um m\u00f3dulo de massagem debaixo do vosso colch\u00e3o pode ajudar.<\/p>\n                <div class=\"byline\">\n                    <img loading=\"lazy\" decoding=\"async\" class=\"avatar\" src=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/dr-roland-portrait.webp\" width=\"44\" height=\"44\" alt=\"\">\n                    <div>\n                        <b>Em colabora\u00e7\u00e3o com o Dr. Roland Stutz<\/b>\n                        <span class=\"byline-role\">Cientista do desporto e presidente do conselho cient\u00edfico da Andullation\u00ae<\/span>\n                    <\/div>\n                <\/div>\n                <figure class=\"hero-fig hero-video\">\n                    <video autoplay muted loop playsinline preload=\"auto\" poster=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/andufit-couple-two-modules-poster.webp\" style=\"aspect-ratio:6\/5\" aria-label=\"Anima\u00e7\u00e3o: um casal na cama escolhe cada um o seu programa, enquanto dois m\u00f3dulos ANDUFIT funcionam debaixo do colch\u00e3o\" data-video=\"koppel\">\n                        <source src=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/andufit-couple-two-modules.mp4\" type=\"video\/mp4\">\n                    <\/video>\n                    <figcaption>Juntos numa s\u00f3 cama, com um m\u00f3dulo de massagem ANDUFIT pr\u00f3prio de cada lado, debaixo do colch\u00e3o. Cada um escolhe o seu programa.<\/figcaption>\n                <\/figure>\n            <\/div>\n        <\/section>\n\n        <article>\n            <div class=\"col\">\n                <h2 style=\"margin-top:.8em\">O melhor momento do dia<\/h2>\n                <p class=\"lead\">A luz apaga-se, os telem\u00f3veis ficam de lado e o dia vai ficando para tr\u00e1s. Estar juntos na cama, conversar mais um pouco e adormecer devagar. \u00c9 assim que todas as noites deviam terminar.<\/p>\n                <p>Mas muitas vezes n\u00e3o \u00e9 assim. Ele adormece logo, ela fica acordada mais uma hora com a cabe\u00e7a a mil. Um vira-se, a outra acorda. E a certa altura surge a pergunta que muitos casais conhecem: n\u00e3o dormir\u00edamos melhor separados?<\/p>\n\n                <h2>Dormir separados? H\u00e1 outro caminho<\/h2>\n                <div class=\"stat\">\n                    <div class=\"num\">31%<\/div>\n                    <p>\n                        dos adultos nos Estados Unidos dormem \u00e0s vezes ou sempre separados do parceiro, para dormir melhor. Os principais motivos: o ressonar, ritmos de sono diferentes e o virar constante na cama.\n                        <span class=\"src\">American Academy of Sleep Medicine, 2025<\/span>\n                    <\/p>\n                <\/div>\n                <p>Dormir separados evita que se acordem um ao outro. Mas n\u00e3o muda nada na tens\u00e3o com que cada um de voc\u00eas se deita. E tem um pre\u00e7o: a \u00faltima conversa do dia, ficar encostados, acordar juntos.<\/p>\n                <p class=\"fine\">Um de voc\u00eas ressona muito alto, ou a respira\u00e7\u00e3o para durante a noite? Ent\u00e3o pe\u00e7am ao m\u00e9dico para avaliar. Nem um colch\u00e3o nem uma massagem resolvem isso.<\/p>\n                <p>O que funciona melhor: cada um relaxar \u00e0 sua maneira, juntos na mesma cama.<\/p>\n\n                <h2>Porque \u00e9 que relaxar \u00e9 o caminho para um sono profundo<\/h2>\n                <p>O sono mais profundo concentra-se sobretudo nas primeiras horas da noite. Por isso, a forma como entra nessas primeiras horas conta muito. Quem se deita descontra\u00eddo entra com mais facilidade na primeira fase profunda. Quem leva para a cama as tens\u00f5es do dia fica mais tempo no sono leve.<\/p>\n                <p>E a tens\u00e3o \u00e9 pessoal. Num, fica nas costas, depois de um longo dia de p\u00e9 ou \u00e0 secret\u00e1ria. No outro, fica na cabe\u00e7a, que simplesmente n\u00e3o sossega. Dois corpos, dois tipos de tens\u00e3o, numa s\u00f3 cama.<\/p>\n\n                <h2>O que a falta de sono profundo vos faz<\/h2>\n                <p>Uma noite agitada n\u00e3o se nota \u00e0 noite, mas no dia seguinte. E quando ambos dormem mal, tamb\u00e9m o notam um no outro.<\/p>\n                <div class=\"tried\">\n                    <div>\n                        <h3>\n                            Cansado, mesmo depois de uma noite inteira \n                            <em>energia<\/em>\n                        <\/h3>\n                        <p>Sem sono profundo suficiente, o corpo n\u00e3o recupera devidamente. Acorda-se sem energia, e a meio do dia j\u00e1 se est\u00e1 de rastos.<\/p>\n                    <\/div>\n                    <div>\n                        <h3>\n                            Mais irrit\u00e1vel, tamb\u00e9m um com o outro \n                            <em>humor<\/em>\n                        <\/h3>\n                        <p>Depois de uma m\u00e1 noite, h\u00e1 menos paci\u00eancia e mais irrita\u00e7\u00e3o. Os m\u00e9dicos do sono observam que quem dorme mal discute mais vezes com o parceiro.<\/p>\n                    <\/div>\n                    <div>\n                        <h3>\n                            Menos concentra\u00e7\u00e3o \n                            <em>cabe\u00e7a<\/em>\n                        <\/h3>\n                        <p>O sono profundo ajuda o c\u00e9rebro a processar o dia. Quando falta, nota-se na concentra\u00e7\u00e3o, na mem\u00f3ria e na produtividade.<\/p>\n                    <\/div>\n                    <div>\n                        <h3>\n                            Parecer mais velho do que \u00e9 \n                            <em>apar\u00eancia<\/em>\n                        <\/h3>\n                        <p>O sono profundo \u00e9 a manuten\u00e7\u00e3o noturna do corpo, tamb\u00e9m da pele. Quem dorme mal nota-o: olheiras, pele ba\u00e7a e linhas finas.<\/p>\n                    <\/div>\n                <\/div>\n                <p>A boa not\u00edcia: o sono profundo n\u00e3o \u00e9 um dado fixo. O qu\u00e3o descontra\u00eddos entram na noite faz uma grande diferen\u00e7a.<\/p>\n\n                <h2>Um momento para aguardar juntos<\/h2>\n                <p>O dia acabou, os telem\u00f3veis est\u00e3o de lado, a luz apaga-se. Este \u00e9 o momento que \u00e9 s\u00f3 vosso. Nada de conversas sobre agendas ou trabalho, apenas estar juntos e deixar o dia ir embora.<\/p>\n                <p>Cada um liga o m\u00f3dulo de massagem debaixo do seu lado do colch\u00e3o e relaxa \u00e0 sua maneira: um depois de um longo dia de p\u00e9, a outra com a cabe\u00e7a que n\u00e3o para. Um quarto de hora em que ambos sentem a tens\u00e3o desaparecer, lado a lado. Ao fim de algumas noites, percebem que j\u00e1 est\u00e3o \u00e0 espera desse momento.<\/p>\n                <figure class=\"photo\">\n                    <img decoding=\"async\" src=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/andufit_sleep_together.jpg\" width=\"1200\" height=\"896\" alt=\"Um casal deitado e descontra\u00eddo, lado a lado na mesma cama, de olhos fechados\" loading=\"lazy\">\n                <\/figure>\n                <h3>O vosso novo ritual noturno em tr\u00eas passos<\/h3>\n                <ol class=\"trial\">\n                    <li>\n                        <b>Telem\u00f3veis de lado<\/b>\n                        <span>O primeiro sinal, para si e para o outro: o dia acabou.<\/span>\n                    <\/li>\n                    <li>\n                        <b>Cada um o seu programa<\/b>\n                        <span>Cada um escolhe no seu pr\u00f3prio m\u00f3dulo um programa, uma intensidade e uma dura\u00e7\u00e3o. N\u00e3o precisam de chegar a acordo sobre nada.<\/span>\n                    <\/li>\n                    <li>\n                        <b>Adormecer juntos<\/b>\n                        <span>Um quarto de hora de relaxamento e depois adormecer tranquilamente, juntos.<\/span>\n                    <\/li>\n                <\/ol>\n\n            <\/div>\n\n            <section class=\"sol\" id=\"oplossing\">\n                <div class=\"col\">\n                    <div class=\"sol-card\">\n                        <p class=\"eyebrow\">A solu\u00e7\u00e3o<\/p>\n                        <h2>Dormir mais profundamente juntos, cada um \u00e0 sua maneira<\/h2>\n                        <p class=\"sol-lead\">O ANDUFIT \u00e9 um m\u00f3dulo de massagem que desliza para debaixo do colch\u00e3o, um de cada lado da cama. Assim, cada um escolhe o seu programa, a sua intensidade e a dura\u00e7\u00e3o da sua sess\u00e3o. Continuam a dormir juntos, e cada um recebe aquilo de que o corpo precisa. Um de voc\u00eas quer sobretudo adormecer mais depressa? Para isso existe o programa 19, Adormecer.<\/p>\n                        <div class=\"progs\">\n                            <div>\n                                <span class=\"pnum\">P08<\/span>\n                                <div>\n                                    <b>Lado dele: Costas<\/b>\n                                    <span>Alivia as tens\u00f5es musculares nas costas e solta os m\u00fasculos dorsais.<\/span>\n                                <\/div>\n                            <\/div>\n                            <div>\n                                <span class=\"pnum\">P20<\/span>\n                                <div>\n                                    <b>Lado dela: Stress<\/b>\n                                    <span>Ajuda a reduzir o stress e aumenta a toler\u00e2ncia aos fatores de stress.<\/span>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n\n                        <figure class=\"sol-hero\">\n                            <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/andufit-boxspring-two-modules.webp\" width=\"1080\" height=\"810\" alt=\"Uma cama boxspring com o colch\u00e3o levantado e, por baixo, dois m\u00f3dulos ANDUFIT com zonas de massagem iluminadas\">\n                            <span class=\"chip\" style=\"left:6%;top:63%\">Um m\u00f3dulo de cada lado<\/span>\n                            <span class=\"chip\" style=\"right:6%;top:80%\">Apenas 7 cm de altura<\/span>\n                        <\/figure>\n\n                        <h3>Como funciona<\/h3>\n                        <figure class=\"frame\">\n                            <video autoplay muted loop playsinline preload=\"metadata\" poster=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/andufit-how-it-works-mattress-poster.webp\" style=\"aspect-ratio:16\/9\" aria-label=\"Anima\u00e7\u00e3o: o colch\u00e3o desce sobre o m\u00f3dulo ANDUFIT e as vibra\u00e7\u00f5es atravessam o colch\u00e3o at\u00e9 uma mulher deitada\" data-video=\"werking\">\n                                <source src=\"https:\/\/nl.andufit.com\/wp-content\/uploads\/sites\/2\/2026\/10\/andufit-how-it-works-mattress.mp4\" type=\"video\/mp4\">\n                            <\/video>\n                        <\/figure>\n                        <p>Suaves vibra\u00e7\u00f5es Andullation\u00ae de baixa frequ\u00eancia atravessam o colch\u00e3o atrav\u00e9s de sete motores, at\u00e9 cinco zonas do corpo, dos ombros \u00e0s pernas. Ajudam os m\u00fasculos a relaxar e acalmam o corpo. A mesma tecnologia \u00e9 tamb\u00e9m usada em fisioterapia.<\/p>\n                        <div class=\"specs\">\n                            <div>\n                                <b>Cada lado independente<\/b>\n                                <span>Cada um escolhe o seu programa, a intensidade e a dura\u00e7\u00e3o. N\u00e3o precisam de chegar a acordo sobre nada.<\/span>\n                            <\/div>\n                            <div>\n                                <b>Adapta-se a qualquer cama<\/b>\n                                <span>Funciona atrav\u00e9s de qualquer colch\u00e3o ou topper at\u00e9 45 cm de espessura, em boxspring, estrado de ripas ou base fixa.<\/span>\n                            <\/div>\n                            <div>\n                                <b>20 programas<\/b>\n                                <span>Do relaxamento das costas e do pesco\u00e7o a adormecer, dormir seguido ou aliviar o stress. Em 7 intensidades, de suave a intensa.<\/span>\n                            <\/div>\n                            <div>\n                                <b>Instalado em 10 minutos<\/b>\n                                <span>Deslizem os m\u00f3dulos para debaixo do colch\u00e3o, liguem o comando e est\u00e1 pronto. N\u00e3o precisam de ferramentas.<\/span>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <section class=\"science\">\n                <div class=\"col\">\n                    <h2>Tecnologia Andullation\u00ae, baseada na ci\u00eancia<\/h2>\n                    <p>A Andullation\u00ae foi desenvolvida na Alemanha em conjunto com universidades e \u00e9 tamb\u00e9m usada em fisioterapia. A tecnologia foi, al\u00e9m disso, estudada de forma independente.<\/p>\n                    <p>Um estudo revisto por pares, publicado na PubMed, acompanhou 50 pessoas que receberam cinco massagens de andula\u00e7\u00e3o de meia hora. Os investigadores mediram, antes e depois, como os participantes sentiam a dor, como se sentiam e quanta press\u00e3o a zona lombar tolerava.<\/p>\n                    <div class=\"study\">\n                        <span class=\"pill\">Revisto por pares \u00b7 PubMed<\/span>\n                        <h3>O que mudou ap\u00f3s cinco sess\u00f5es<\/h3>\n                        <p class=\"meta\">Parras-Molt\u00f3 A, Ribas-Serna J. Dose-Response, 2019;17(2). PMID 31105478.<\/p>\n                        <div class=\"study-grid\">\n                            <div>\n                                <b>-52,3%<\/b>\n                                <span>perce\u00e7\u00e3o da dor<\/span>\n                            <\/div>\n                            <div>\n                                <b>+45,1%<\/b>\n                                <span>bem-estar<\/span>\n                            <\/div>\n                            <div>\n                                <b>+34,5%<\/b>\n                                <span>limiar de dor lombar<\/span>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                    <p class=\"fine\">Estudo com 50 pessoas sem grupo de controlo, publicado na PubMed. O ANDUFIT n\u00e3o \u00e9 um dispositivo m\u00e9dico e n\u00e3o promete qualquer cura. Se as queixas persistirem, consulte o seu m\u00e9dico.<\/p>\n                    <p>E para o vosso sono? Num inqu\u00e9rito aos seus pr\u00f3prios utilizadores, 82% disseram adormecer com mais facilidade e 79% acordar mais descansados.<\/p>\n                    <div class=\"reviews\">\n                        <figure>\n                            <p>\u00abChego a casa completamente stressado. Uma sess\u00e3o e sou outra pessoa. A minha mulher nota logo.\u00bb<\/p>\n                            <figcaption>Rainer T., Su\u00ed\u00e7a<\/figcaption>\n                        <\/figure>\n                        <figure>\n                            <p>\u00abA minha cabe\u00e7a andava sempre a mil. Depois de vinte minutos estou simplesmente calmo e adorme\u00e7o.\u00bb<\/p>\n                            <figcaption>Bert A., B\u00e9lgica<\/figcaption>\n                        <\/figure>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <div class=\"col\">\n                <section class=\"offer\" id=\"aanbod\">\n                    <h2>Curiosos sobre o que o ANDUFIT pode fazer por voc\u00eas? Experimentem 14 noites juntos<\/h2>\n                    <p>Antes de prepararem um segundo quarto, podem experimentar primeiro dormir mais profundamente juntos. Coloquem um m\u00f3dulo de cada lado debaixo do vosso colch\u00e3o e usem-nos durante duas semanas como os usariam depois todas as noites.<\/p>\n                    <ol class=\"trial\">\n                        <li>\n                            <b>Noite 1<\/b>\n                            <span>Cada um escolhe o seu programa e a intensidade que lhe sabe bem.<\/span>\n                        <\/li>\n                        <li>\n                            <b>Semana 1<\/b>\n                            <span>Relaxar juntos antes de dormir torna-se um momento fixo da vossa noite.<\/span>\n                        <\/li>\n                        <li>\n                            <b>Noite 14<\/b>\n                            <span>Voc\u00eas decidem. Se n\u00e3o notarem qualquer diferen\u00e7a, devolvem-no gratuitamente e recebem o valor total de volta.<\/span>\n                        <\/li>\n                    <\/ol>\n                    <ul>\n                        <li>\n                            <svg viewBox=\"0 0 20 20\" width=\"20\" height=\"20\" aria-hidden=\"true\">\n                                <path d=\"M4 10.5l4 4 8-9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                            <\/svg>\n                            Entrega gratuita em 2 a 3 dias \u00fateis, devolu\u00e7\u00e3o gratuita\n                        <\/li>\n                        <li>\n                            <svg viewBox=\"0 0 20 20\" width=\"20\" height=\"20\" aria-hidden=\"true\">\n                                <path d=\"M4 10.5l4 4 8-9\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                            <\/svg>\n                            Pagamento em presta\u00e7\u00f5es poss\u00edvel\n                        <\/li>\n                    <\/ul>\n                    <a class=\"btn\" href=\"#\" data-cta=\"offer\">Ver o pre\u00e7o<\/a>\n                <\/section>\n\n                <section class=\"sources\">\n                    <h2>Fontes<\/h2>\n                    <ol>\n                        <li>American Academy of Sleep Medicine, Sleep Prioritization Survey 2025 (2.007 adultos nos Estados Unidos). Fonte para 31%.<\/li>\n                        <li>ResMed, Global Sleep Survey 2024. Fonte para o ressonar e ritmos de sono diferentes como principais motivos.<\/li>\n                        <li>Parras-Molt\u00f3 A, Ribas-Serna J. Dose-Response, 2019;17(2). PMID 31105478. Fonte para os resultados da Andullation\u00ae.<\/li>\n                        <li>ANDUFIT, inqu\u00e9rito aos seus pr\u00f3prios utilizadores. Relatado pelos utilizadores, sem grupo de controlo. Fonte para 82% e 79%.<\/li>\n                    <\/ol>\n                    <p class=\"fine\">Este artigo \u00e9 uma publirreportagem do ANDUFIT. O ANDUFIT n\u00e3o \u00e9 um dispositivo m\u00e9dico e n\u00e3o substitui aconselhamento m\u00e9dico. Os resultados variam de pessoa para pessoa.<\/p>\n                <\/section>\n            <\/div>\n        <\/article>\n    <\/main>\n\n    <div class=\"sticky\" id=\"sticky\" aria-hidden=\"true\">\n        <div class=\"inner\">\n            <a class=\"btn\" href=\"#\" data-cta=\"sticky\" tabindex=\"-1\">Ver o pre\u00e7o<\/a>\n        <\/div>\n    <\/div>\n<\/div>\n<script>\n(function() {\n    \/\/ Destination: change once per market\/page\n    \/\/ ---- Page config (same in every language) ----\n    var LP_ID = \"sleep-together\"; \/\/ English page name, identical across all languages\n    var LP_VERSION = \"v1\"; \/\/ bump to v2, v3... for a new version of the same page\n    var CTA_URL = \"https:\/\/www.andufit.com\/checkout\/?width=90&length=200\";\n    \/\/ Language comes from the directory (\/nl\/, \/fr\/, \/de\/...), with the html lang attribute as fallback\n    \/\/ Language: html lang set by WordPress\/WPML (nl-NL, fr-BE, da-DK...), else URL directory (\/fr\/), else subdomain\n    var seg = (location.pathname.split(\"\/\")[1] || \"\").toLowerCase();\n    var sub = location.hostname.split(\".\")[0].toLowerCase();\n    var htmlLang = (document.documentElement.lang || \"\").slice(0, 2).toLowerCase();\n    var PAGE_LANG = \"pt\"; \/\/ language this file is written in, used when the page itself has no lang setting\n    var LP_LANG = htmlLang || (\/^[a-z]{2}(-[a-z]{2})?$\/.test(seg) ? seg : PAGE_LANG);\n\n    \/\/ Tracking: pushes to GTM dataLayer, picked up later for pixel + CAPI\n    window.dataLayer = window.dataLayer || [];\n    function track(name, params) {\n        var p = Object.assign({\n            event: name,\n            lp_id: LP_ID,\n            lp_version: LP_VERSION,\n            lp_lang: LP_LANG,\n            lp_key: LP_ID + \"-\" + LP_VERSION\n        }, params || {});\n        try {\n            window.dataLayer.push(p);\n        } catch (e) {}\n    }\n\n    \/\/ CTA links + click events\n    document.querySelectorAll(\"[data-cta]\").forEach(function(a) {\n        a.href = CTA_URL;\n        a.addEventListener(\"click\", function() {\n            track(\"lp_cta_click\", {\n                cta_position: a.dataset.cta\n            });\n        });\n    });\n\n    \/\/ ---- Rugcheck survey: same score, bands and Klaviyo properties as the bedcheck on andufit.com ----\n    var KLAVIYO = {\n        \"be-nl\": {\n            k: \"VQ3H6i\",\n            l: \"RGkCrC\",\n            taal: \"nl\"\n        },\n        \"be-fr\": {\n            k: \"VQ3H6i\",\n            l: \"RGkCrC\",\n            taal: \"fr\"\n        },\n        \"nl\": {\n            k: \"VWTWCN\",\n            l: \"QRrRwi\",\n            taal: \"nl\"\n        },\n        \"fr\": {\n            k: \"RX49Be\",\n            l: \"TTHgX8\",\n            taal: \"fr\"\n        },\n        \"de\": {\n            k: \"W26WX5\",\n            l: \"RKQdiz\",\n            taal: \"de\"\n        },\n        \"es\": {\n            k: \"Ryu86G\",\n            l: \"TbXjdV\",\n            taal: \"es\"\n        },\n        \"int\": {\n            k: \"U2QKtz\",\n            l: \"WBcW8Z\"\n        } \/\/ ANDUFIT (Luxembourg, Europe)\n    };\n    var SOURCE = \"Survey - \" + LP_ID; \/\/ naming: \"Survey - {page name}\"\n    var BANDS = {\n        high: {\n            t: \"Je nachten doen grotendeels hun werk\",\n            x: \"Je staat meestal op met genoeg reserve. Het verslag laat zien waar het laatste stuk herstel zit en hoe je het zo houdt.\",\n            c: \"#15803d\",\n            b: \"#22c55e\"\n        },\n        ok: {\n            t: \"Het gaat, maar niet elke nacht\",\n            x: \"De ene nacht geeft je wat je nodig hebt, de andere niet. Dat verschil zit meestal in hoe diep je lichaam \\u2019s nachts tot rust komt. Het verslag laat zien welke nachten je het meest kosten en wat eraan helpt.\",\n            c: \"#a16207\",\n            b: \"#eab308\"\n        },\n        mid: {\n            t: \"Er zit ruimte in je nachten\",\n            x: \"Een deel van je nacht gaat naar spanning in plaats van naar herstel, en dat voel je overdag. Het verslag laat zien waar dat gebeurt en wat je het eerst verandert.\",\n            c: \"#c2410c\",\n            b: \"#f97316\"\n        },\n        low: {\n            t: \"Hier valt veel te winnen\",\n            x: \"Je nachten kosten je meer dan ze opleveren, en dat stapelt op. Het verslag laat zien wat je het eerst aanpakt en welke programma\\u2019s daarbij horen.\",\n            c: \"#b3261e\",\n            b: \"#dc2626\"\n        }\n    };\n    var MSG = {\n        invalid: \"Vul een geldig e-mailadres in.\",\n        failed: \"Er ging iets mis. Probeer het nog eens.\",\n        busy: \"Een moment\"\n    };\n\n    var sv = document.getElementById(\"rugcheck\");\n    if (sv) {\n        var TOTAL = 6,\n            RESULT = 7;\n        var st = {\n                wakeup: \"\",\n                duur: \"\",\n                slaap: null,\n                klachten: null,\n                ochtend: null,\n                tried: []\n            },\n            started = false,\n            cur = 1;\n        function band(s) {\n            return s >= 80 ? \"high\" : s >= 60 ? \"ok\" : s >= 40 ? \"mid\" : \"low\";\n        }\n        function score() {\n            var v = [st.slaap, st.klachten, st.ochtend].filter(function(x) {\n                return typeof x === \"number\";\n            });\n            return v.length ? Math.round(v.reduce(function(a, b) {\n                return a + b;\n            }, 0) \/ v.length * 20) : 0;\n        }\n        function doelen() {\n            var d = [\"sleep\"]; \/\/ always sleep on this page\n            if (st.klachten !== null && st.klachten <= 2)\n                d.push(\"stress\");\n\n            if (st.ochtend !== null && st.ochtend <= 3)\n                d.push(\"energy\");\n            if (st.ochtend !== null && st.ochtend <= 2)\n                d.push(\"recovery\");\n            var order = [\"back\", \"sleep\", \"energy\", \"stress\", \"recovery\", \"muscle\"];\n            return order.filter(function(x) {\n                return d.indexOf(x) > -1;\n            });\n        }\n        function startOnce() {\n            if (!started) {\n                started = true;\n                track(\"lp_survey_start\");\n            }\n        }\n        function go(n) {\n            cur = n;\n            sv.querySelectorAll(\".sv-step\").forEach(function(s) {\n                s.hidden = (+s.dataset.s !== n);\n            });\n            sv.dataset.step = n;\n            document.getElementById(\"svNum\").textContent = Math.min(n, TOTAL);\n            document.getElementById(\"svBar\").style.width = (n >= RESULT ? 100 : n \/ TOTAL * 100) + \"%\";\n            sv.querySelector(\".sv-count\").style.visibility = n >= RESULT ? \"hidden\" : \"visible\";\n            if (n === RESULT)\n                showScore();\n            track(\"lp_survey_step\", {\n                step: n\n            });\n            var top = sv.getBoundingClientRect().top;\n            if (top < 0 || top > innerHeight * 0.6)\n                sv.scrollIntoView({\n                    behavior: \"smooth\",\n                    block: \"start\"\n                });\n        }\n        function next() {\n            setTimeout(function() {\n                go(cur + 1);\n            }, 240);\n        }\n        sv.querySelectorAll(\"[data-back]\").forEach(function(b) {\n            b.addEventListener(\"click\", function() {\n                go(Math.max(1, cur - 1));\n            });\n        });\n        sv.querySelectorAll(\"[data-go]\").forEach(function(b) {\n            b.addEventListener(\"click\", function() {\n                go(+b.dataset.go);\n            });\n        });\n\n        \/\/ single-choice questions (one tap, auto-advance)\n        sv.querySelectorAll(\"[data-q][data-v]\").forEach(function(b) {\n            b.addEventListener(\"click\", function() {\n                startOnce();\n                var q = b.dataset.q;\n                sv.querySelectorAll('[data-q=\"' + q + '\"][data-v]').forEach(function(o) {\n                    o.setAttribute(\"aria-checked\", o === b ? \"true\" : \"false\");\n                });\n                st[q] = b.dataset.v;\n                next();\n            });\n        });\n\n        \/\/ 1-5 scales (one tap, auto-advance)\n        sv.querySelectorAll(\".sv-scale\").forEach(function(q) {\n            var box = q.querySelector(\".sv-nums\"),\n                key = q.dataset.q,\n                label = q.closest(\".sv-step\").querySelector(\"h3\").textContent;\n            for (var i = 1; i <= 5; i++) {\n                (function(v) {\n                    var b = document.createElement(\"button\");\n                    b.type = \"button\";\n                    b.textContent = v;\n                    b.setAttribute(\"aria-pressed\", \"false\");\n                    b.setAttribute(\"aria-label\", label + \" \" + v);\n                    b.addEventListener(\"click\", function() {\n                        startOnce();\n                        st[key] = v;\n                        box.querySelectorAll(\"button\").forEach(function(x) {\n                            x.setAttribute(\"aria-pressed\", x === b ? \"true\" : \"false\");\n                        });\n                        next();\n                    });\n                    box.appendChild(b);\n                })(i);\n            }\n        });\n\n        \/\/ what have you tried (optional, multi-select; \"nothing\" is exclusive)\n        var chips = sv.querySelectorAll(\"[data-chip]\");\n        chips.forEach(function(c) {\n            c.addEventListener(\"click\", function() {\n                var on = c.getAttribute(\"aria-pressed\") !== \"true\";\n                if (on && c.dataset.chip === \"nothing\")\n                    chips.forEach(function(x) {\n                        x.setAttribute(\"aria-pressed\", \"false\");\n                    });\n                if (on && c.dataset.chip !== \"nothing\")\n                    sv.querySelector('[data-chip=\"nothing\"]').setAttribute(\"aria-pressed\", \"false\");\n                c.setAttribute(\"aria-pressed\", on ? \"true\" : \"false\");\n                st.tried = [].filter.call(chips, function(x) {\n                    return x.getAttribute(\"aria-pressed\") === \"true\";\n                }).map(function(x) {\n                    return x.dataset.chip;\n                });\n            });\n        });\n        sv.querySelector(\"[data-finish]\").addEventListener(\"click\", function() {\n            go(RESULT);\n        });\n\n        \/\/ result\n        function showScore() {\n            var s = score(),\n                k = band(s),\n                B = BANDS[k],\n                el = document.getElementById(\"svScore\");\n            sv.style.setProperty(\"--band-text\", B.c);\n            sv.style.setProperty(\"--band-bar\", B.b);\n            document.getElementById(\"svBandTitle\").textContent = B.t;\n            document.getElementById(\"svBandText\").textContent = B.x;\n            var meter = document.getElementById(\"svMeter\");\n            meter.style.width = \"0\";\n            setTimeout(function() {\n                meter.style.width = s + \"%\";\n            }, 60);\n            if (matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n                el.textContent = s;\n            }\n            else {\n                var t0 = null;\n                (function f(t) {\n                    if (!t0)\n                        t0 = t;\n                    var p = Math.min((t - t0) \/ 900, 1);\n                    el.textContent = Math.round(s * p);\n                    if (p < 1)\n                        requestAnimationFrame(f);\n                })(performance.now());\n            }\n            track(\"lp_survey_score\", {\n                score: s,\n                band: k,\n                wakeup: st.wakeup,\n                duur: st.duur,\n                tried: st.tried.join(\",\")\n            });\n        }\n\n        var form = document.getElementById(\"svForm\"),\n            err = document.getElementById(\"svErr\"),\n            btn = document.getElementById(\"svSubmit\");\n        \/\/ Country for Klaviyo: browser time zone first, store subdomain as fallback\n        function tz() {\n            try {\n                return Intl.DateTimeFormat().resolvedOptions().timeZone || \"\";\n            } catch (x) {\n                return \"\";\n            }\n        }\n        function market() {\n            var z = tz(),\n                TZ = {\n                    \"Europe\/Brussels\": \"be\",\n                    \"Europe\/Amsterdam\": \"nl\",\n                    \"Europe\/Berlin\": \"de\",\n                    \"Europe\/Vienna\": \"de\",\n                    \"Europe\/Paris\": \"fr\",\n                    \"Europe\/Madrid\": \"es\",\n                    \"Europe\/Dublin\": \"ie\",\n                    \"Europe\/Luxembourg\": \"lu\",\n                    \"Europe\/Copenhagen\": \"dk\",\n                    \"Europe\/Stockholm\": \"se\",\n                    \"Europe\/Helsinki\": \"fi\",\n                    \"Europe\/Rome\": \"it\",\n                    \"Europe\/Lisbon\": \"pt\",\n                    \"Europe\/London\": \"uk\"\n                };\n            if (TZ[z])\n                return TZ[z];\n            if (LP_LANG === \"en\" && z.indexOf(\"America\/\") === 0)\n                return \"us\";\n            return location.hostname.split(\".\")[0].toLowerCase();\n        }\n        \/\/ email submit -> Klaviyo\n        form.addEventListener(\"submit\", function(e) {\n            e.preventDefault();\n            var email = document.getElementById(\"svEmail\").value.trim();\n            if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$\/.test(email)) {\n                err.textContent = MSG.invalid;\n                return;\n            }\n            err.textContent = \"\";\n            btn.disabled = true;\n            var label = btn.textContent;\n            btn.textContent = MSG.busy;\n            var mkt = market();\n            var cfg = KLAVIYO[mkt === \"be\" ? \"be-\" + LP_LANG : mkt];\n            \/\/ only use the country account if it sends emails in this page's language, otherwise the language's home account\n            if (!cfg || (cfg.taal && cfg.taal !== LP_LANG))\n                cfg = KLAVIYO[LP_LANG] || KLAVIYO.int;\n            var s = score();\n            var props = {\n                \/\/ generic: which survey, which version, which market (overwritten by the next survey)\n                language: (mkt === \"us\" ? \"us\" : (cfg.taal || LP_LANG || \"en\")),\n                survey_last: LP_ID,\n                survey_version: LP_VERSION,\n                market: mkt,\n                \/\/ page-specific answers (prefix stays unique per page)\n                deep_sleep_wakeup: st.wakeup,\n                deep_sleep_fall_asleep: st.duur,\n                deep_sleep_tried: st.tried.join(\",\"),\n                deep_sleep_sleep: st.slaap || 0,\n                deep_sleep_tension: st.klachten || 0,\n                deep_sleep_morning: st.ochtend || 0,\n                deep_sleep_score: s,\n                \/\/ read by the \"Verslag dr. Stutz\" email template, keep until the template uses the English keys\n                herstelscore: s,\n                check_slaap: st.slaap || 0,\n                check_klachten: st.klachten || 0,\n                check_ochtend: st.ochtend || 0,\n                check_doelen: doelen().join(\",\")\n            };\n            fetch(\"https:\/\/a.klaviyo.com\/client\/subscriptions?company_id=\" + encodeURIComponent(cfg.k), {\n                method: \"POST\",\n                headers: {\n                    \"Content-Type\": \"application\/vnd.api+json\",\n                    \"revision\": \"2024-10-15\"\n                },\n                body: JSON.stringify({\n                    data: {\n                        type: \"subscription\",\n                        attributes: {\n                            custom_source: SOURCE,\n                            profile: {\n                                data: {\n                                    type: \"profile\",\n                                    attributes: {\n                                        email: email,\n                                        properties: props\n                                    }\n                                }\n                            }\n                        },\n                        relationships: {\n                            list: {\n                                data: {\n                                    type: \"list\",\n                                    id: cfg.l\n                                }\n                            }\n                        }\n                    }\n                })\n            }).then(function(r) {\n                if (!r.ok)\n                    throw new Error(\"Klaviyo \" + r.status);\n                form.hidden = true;\n                document.getElementById(\"svDone\").hidden = false;\n                track(\"lp_survey_submit\", {\n                    score: s,\n                    band: band(s)\n                });\n                window.dataLayer.push({\n                    event: \"klaviyo_popup_signup\",\n                    popup_source: SOURCE\n                });\n            }).catch(function() {\n                err.textContent = MSG.failed;\n                btn.disabled = false;\n                btn.textContent = label;\n            });\n        });\n    }\n\n    \/\/ Night timeline toggle\n    var verdicts = {\n        zonder: \"Het verschil zit dus niet in hoe lang je slaapt, maar in hoe diep.\",\n        met: \"Geen extra tijd nodig: je ligt toch al in bed, en je nacht werkt beter voor je.\"\n    };\n    document.querySelectorAll(\"[data-night]\").forEach(function(btn) {\n        btn.addEventListener(\"click\", function() {\n            var k = btn.dataset.night;\n            document.querySelectorAll(\"[data-night]\").forEach(function(b) {\n                b.setAttribute(\"aria-pressed\", b === btn ? \"true\" : \"false\");\n            });\n            document.querySelectorAll(\"[data-panel]\").forEach(function(p) {\n                var on = p.dataset.panel === k;\n                p.hidden = !on;\n                p.classList.toggle(\"show\", on);\n            });\n            document.getElementById(\"verdict\").textContent = verdicts[k];\n            track(\"lp_timeline_toggle\", {\n                state: k\n            });\n        });\n    });\n\n    \/\/ Videos: play only when visible, track first view\n    document.querySelectorAll(\"video[data-video]\").forEach(function(v) {\n        var seen = false;\n        if (matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n            v.removeAttribute(\"autoplay\");\n            v.pause();\n            v.controls = true;\n        }\n        if (\"IntersectionObserver\" in window) {\n            new IntersectionObserver(function(e) {\n                if (e[0].isIntersecting) {\n                    if (!v.controls)\n                        v.play().catch(function() {});\n                    if (!seen) {\n                        seen = true;\n                        track(\"lp_video_view\", {\n                            video: v.dataset.video\n                        });\n                    }\n                }\n                else\n                    v.pause();\n            }, {\n                threshold: .4\n            }).observe(v);\n        }\n    });\n\n    \/\/ FAQ opens\n    document.querySelectorAll(\"[data-faq]\").forEach(function(d) {\n        d.addEventListener(\"toggle\", function() {\n            if (d.open)\n                track(\"lp_faq_open\", {\n                    faq: d.dataset.faq\n                });\n        });\n    });\n\n    \/\/ Scroll depth\n    var marks = [25, 50, 75, 90],\n        hit = {};\n    function onScroll() {\n        var h = document.documentElement,\n            pct = (h.scrollTop + innerHeight) \/ h.scrollHeight * 100;\n        marks.forEach(function(m) {\n            if (pct >= m && !hit[m]) {\n                hit[m] = 1;\n                track(\"lp_scroll\", {\n                    depth: m\n                });\n            }\n        });\n    }\n    addEventListener(\"scroll\", onScroll, {\n        passive: true\n    });\n\n    \/\/ Floating CTA: appears once the product section is well in view, hides at the offer block\n    var sticky = document.getElementById(\"sticky\"),\n        sol = document.getElementById(\"oplossing\"),\n        started = false,\n        offerIn = false,\n        surveyIn = false;\n    function setSticky() {\n        var on = started && !offerIn && !surveyIn;\n        sticky.classList.toggle(\"on\", on);\n        sticky.setAttribute(\"aria-hidden\", on ? \"false\" : \"true\");\n        sticky.querySelector(\"a\").tabIndex = on ? 0 : -1;\n    }\n    function checkStart() {\n        if (!started && sol && sol.getBoundingClientRect().top < innerHeight * 0.35) {\n            started = true;\n            setSticky();\n        }\n    }\n    addEventListener(\"scroll\", checkStart, {\n        passive: true\n    });\n    checkStart();\n    if (\"IntersectionObserver\" in window) {\n        new IntersectionObserver(function(e) {\n            offerIn = e[0].isIntersecting;\n            setSticky();\n        }).observe(document.getElementById(\"aanbod\"));\n        var rc = document.getElementById(\"rugcheck\");\n        if (rc)\n            new IntersectionObserver(function(e) {\n                surveyIn = e[0].isIntersecting;\n                setSticky();\n            }).observe(rc);\n    }\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Adormecer juntos, descontra\u00eddos Cada vez mais casais dormem separados, na esperan\u00e7a de que ambos durmam melhor e acordem descansados. Tamb\u00e9m pode ser diferente. Descubra porque \u00e9 que relaxar juntos antes de dormir \u00e9 o caminho para um sono profundo, e como um m\u00f3dulo de massagem debaixo do vosso colch\u00e3o pode ajudar. Em colabora\u00e7\u00e3o com o [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-blank-canvas.php","meta":{"footnotes":""},"class_list":["post-1243","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/pages\/1243","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/comments?post=1243"}],"version-history":[{"count":2,"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/pages\/1243\/revisions"}],"predecessor-version":[{"id":1247,"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/pages\/1243\/revisions\/1247"}],"wp:attachment":[{"href":"https:\/\/lu.andufit.com\/pt-pt\/wp-json\/wp\/v2\/media?parent=1243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}