{"id":1207,"date":"2026-10-26T16:12:38","date_gmt":"2026-10-26T15:12:38","guid":{"rendered":"https:\/\/lu.andufit.com\/?page_id=1207"},"modified":"2026-10-26T17:07:47","modified_gmt":"2026-10-26T16:07:47","slug":"sleep-together","status":"publish","type":"page","link":"https:\/\/lu.andufit.com\/sv\/sleep-together\/","title":{"rendered":"Somna tillsammans, avslappnade"},"content":{"rendered":"\n<!-- ANDUFIT landing page: sleep-together v1 (sv). 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>Somna tillsammans, avslappnade<\/h1>\n                <p class=\"dek\">Allt fler par sover var f\u00f6r sig, i hopp om att b\u00e5da ska sova b\u00e4ttre och vakna utvilade. Det g\u00e5r ocks\u00e5 att g\u00f6ra annorlunda. L\u00e4s varf\u00f6r det att slappna av tillsammans f\u00f6re s\u00e4ngg\u00e5endet \u00e4r v\u00e4gen till en djup s\u00f6mn, och hur en massagemodul under er madrass kan hj\u00e4lpa.<\/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>I samarbete med dr Roland Stutz<\/b>\n                        <span class=\"byline-role\">Idrottsforskare och ordf\u00f6rande i Andullation\u00aes vetenskapliga r\u00e5d<\/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=\"Animation: ett par i s\u00e4ngen v\u00e4ljer var sitt program medan tv\u00e5 ANDUFIT-moduler arbetar under madrassen\" 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>Tillsammans i en s\u00e4ng, med en egen ANDUFIT-massagemodul p\u00e5 varje sida under madrassen. Var och en v\u00e4ljer sitt eget program.<\/figcaption>\n                <\/figure>\n            <\/div>\n        <\/section>\n\n        <article>\n            <div class=\"col\">\n                <h2 style=\"margin-top:.8em\">Dagens b\u00e4sta stund<\/h2>\n                <p class=\"lead\">Lampan sl\u00e4cks, telefonerna l\u00e4ggs undan och dagen faller av er. Att ligga tillsammans i s\u00e4ngen, prata lite till och sakta somna. S\u00e5 borde varje kv\u00e4ll sluta.<\/p>\n                <p>Men ofta blir det annorlunda. Han somnar direkt, hon ligger vaken en timme till med tankar som snurrar. Den ena v\u00e4nder sig, den andra vaknar av det. Och n\u00e5gon g\u00e5ng kommer fr\u00e5gan som m\u00e5nga par k\u00e4nner igen: skulle vi inte sova b\u00e4ttre var f\u00f6r sig?<\/p>\n\n                <h2>Sova var f\u00f6r sig? Det finns en annan v\u00e4g<\/h2>\n                <div class=\"stat\">\n                    <div class=\"num\">31\u00a0%<\/div>\n                    <p>\n                        av de vuxna i USA sover ibland eller alltid \u00e5tskilda fr\u00e5n sin partner f\u00f6r att sova b\u00e4ttre. De viktigaste sk\u00e4len: snarkning, olika dygnsrytm och oro i s\u00e4ngen.\n                        <span class=\"src\">American Academy of Sleep Medicine, 2025<\/span>\n                    <\/p>\n                <\/div>\n                <p>Att sova var f\u00f6r sig g\u00f6r att ni inte v\u00e4cker varandra l\u00e4ngre. Men det \u00e4ndrar ingenting i den sp\u00e4nning var och en av er g\u00e5r och l\u00e4gger sig med. Och det kostar n\u00e5got: dagens sista samtal, att ligga n\u00e4ra varandra, att vakna tillsammans.<\/p>\n                <p class=\"fine\">Snarkar n\u00e5gon av er h\u00f6gt, eller stannar andningen upp p\u00e5 natten? L\u00e5t d\u00e5 en l\u00e4kare unders\u00f6ka det. D\u00e4r hj\u00e4lper varken en madrass eller en massage.<\/p>\n                <p>Det som fungerar b\u00e4ttre: att var och en slappnar av p\u00e5 sitt eget s\u00e4tt, tillsammans i samma s\u00e4ng.<\/p>\n\n                <h2>D\u00e4rf\u00f6r \u00e4r avslappning v\u00e4gen till en djup s\u00f6mn<\/h2>\n                <p>Den djupaste s\u00f6mnen ligger fr\u00e4mst i nattens f\u00f6rsta timmar. Hur du g\u00e5r in i de f\u00f6rsta timmarna spelar d\u00e4rf\u00f6r stor roll. L\u00e4gger du dig avslappnad glider du l\u00e4ttare in i den f\u00f6rsta djupa fasen. Tar du med dig dagens sp\u00e4nningar i s\u00e4ngen stannar du l\u00e4ngre i den l\u00e4tta s\u00f6mnen.<\/p>\n                <p>Och sp\u00e4nning \u00e4r personlig. Hos den ena sitter den i ryggen, efter en l\u00e5ng dag p\u00e5 benen eller vid skrivbordet. Hos den andra sitter den i huvudet, som bara inte vill komma till ro. Tv\u00e5 kroppar, tv\u00e5 sorters sp\u00e4nning, i en s\u00e4ng.<\/p>\n\n                <h2>Vad f\u00f6r lite djups\u00f6mn g\u00f6r med er<\/h2>\n                <p>En orolig natt m\u00e4rks inte p\u00e5 natten, utan dagen efter. Och sover ni b\u00e5da d\u00e5ligt m\u00e4rker ni det ocks\u00e5 p\u00e5 varandra.<\/p>\n                <div class=\"tried\">\n                    <div>\n                        <h3>\n                            Tr\u00f6tt, \u00e4ven efter en hel natt \n                            <em>energi<\/em>\n                        <\/h3>\n                        <p>Utan tillr\u00e4ckligt med djups\u00f6mn \u00e5terh\u00e4mtar sig kroppen inte ordentligt. Du vaknar utan energi, och vid lunch \u00e4r du redan slut.<\/p>\n                    <\/div>\n                    <div>\n                        <h3>\n                            Snabbare irriterad, \u00e4ven p\u00e5 varandra \n                            <em>hum\u00f6r<\/em>\n                        <\/h3>\n                        <p>Efter en d\u00e5lig natt har du mindre t\u00e5lamod och kortare stubin. S\u00f6mnl\u00e4kare ser att den som sover d\u00e5ligt oftare gr\u00e4lar med sin partner.<\/p>\n                    <\/div>\n                    <div>\n                        <h3>\n                            Mindre fokus \n                            <em>huvud<\/em>\n                        <\/h3>\n                        <p>Djups\u00f6mnen hj\u00e4lper hj\u00e4rnan att bearbeta dagen. F\u00f6r lite av den m\u00e4rks p\u00e5 koncentrationen, minnet och produktiviteten.<\/p>\n                    <\/div>\n                    <div>\n                        <h3>\n                            Du ser \u00e4ldre ut \u00e4n du \u00e4r \n                            <em>utstr\u00e5lning<\/em>\n                        <\/h3>\n                        <p>Djups\u00f6mnen \u00e4r kroppens nattliga underh\u00e5ll, \u00e4ven av din hud. Sover du d\u00e5ligt syns det p\u00e5 p\u00e5sar under \u00f6gonen, en gr\u00e5 hy och fina linjer.<\/p>\n                    <\/div>\n                <\/div>\n                <p>Den goda nyheten: djups\u00f6mnen \u00e4r inte fastl\u00e5st. Hur avslappnade ni g\u00e5r in i natten g\u00f6r stor skillnad.<\/p>\n\n                <h2>En stund att se fram emot tillsammans<\/h2>\n                <p>Dagen \u00e4r slut, telefonerna \u00e4r undanlagda, lampan sl\u00e4cks. Det h\u00e4r \u00e4r stunden som bara \u00e4r er. Inget prat om planering eller jobb, bara ligga tillsammans och sl\u00e4ppa dagen.<\/p>\n                <p>Var och en s\u00e4tter p\u00e5 massagemodulen under sin sida av madrassen och slappnar av p\u00e5 sitt eget s\u00e4tt: den ena efter en l\u00e5ng dag p\u00e5 benen, den andra med ett huvud som forts\u00e4tter att snurra. En kvart d\u00e5 ni b\u00e5da k\u00e4nner hur sp\u00e4nningen sl\u00e4pper, sida vid sida. Efter n\u00e5gra kv\u00e4llar m\u00e4rker ni att ni redan ser fram emot det.<\/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=\"Ett par ligger avslappnat sida vid sida i samma s\u00e4ng, med slutna \u00f6gon\" loading=\"lazy\">\n                <\/figure>\n                <h3>Er nya kv\u00e4llsritual i tre steg<\/h3>\n                <ol class=\"trial\">\n                    <li>\n                        <b>Telefonerna undan<\/b>\n                        <span>Den f\u00f6rsta signalen till er sj\u00e4lva och till varandra: dagen \u00e4r slut.<\/span>\n                    <\/li>\n                    <li>\n                        <b>Var sitt program<\/b>\n                        <span>Var och en v\u00e4ljer p\u00e5 sin egen modul ett program, en intensitet och en l\u00e4ngd. Ni beh\u00f6ver inte komma \u00f6verens om n\u00e5got.<\/span>\n                    <\/li>\n                    <li>\n                        <b>Somna tillsammans<\/b>\n                        <span>En kvarts avslappning, och sedan lugnt somna, tillsammans.<\/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\">L\u00f6sningen<\/p>\n                        <h2>Sova djupare tillsammans, var och en p\u00e5 sitt s\u00e4tt<\/h2>\n                        <p class=\"sol-lead\">ANDUFIT \u00e4r en massagemodul som du skjuter in under madrassen, en p\u00e5 varje sida av s\u00e4ngen. S\u00e5 v\u00e4ljer var och en sitt eget program, sin egen intensitet och l\u00e4ngden p\u00e5 sin session. Ni forts\u00e4tter att sova tillsammans, och var och en f\u00e5r det kroppen beh\u00f6ver. Vill n\u00e5gon av er framf\u00f6r allt somna snabbare? D\u00e5 finns program 19, Insomning.<\/p>\n                        <div class=\"progs\">\n                            <div>\n                                <span class=\"pnum\">P08<\/span>\n                                <div>\n                                    <b>Hans sida: Rygg<\/b>\n                                    <span>Lindrar muskelsp\u00e4nningar i ryggen och mjukar upp ryggmusklerna.<\/span>\n                                <\/div>\n                            <\/div>\n                            <div>\n                                <span class=\"pnum\">P20<\/span>\n                                <div>\n                                    <b>Hennes sida: Stress<\/b>\n                                    <span>Hj\u00e4lper till att minska stress och \u00f6kar motst\u00e5ndskraften mot stressfaktorer.<\/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=\"En kontinentals\u00e4ng med lyft madrass och tv\u00e5 ANDUFIT-moduler med lysande massagezoner under\">\n                            <span class=\"chip\" style=\"left:6%;top:63%\">En modul p\u00e5 varje sida<\/span>\n                            <span class=\"chip\" style=\"right:6%;top:80%\">Bara 7 cm h\u00f6g<\/span>\n                        <\/figure>\n\n                        <h3>S\u00e5 fungerar det<\/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=\"Animation: madrassen s\u00e4nks ner p\u00e5 ANDUFIT-modulen och vibrationerna g\u00e5r genom madrassen till en kvinna som ligger p\u00e5 den\" 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>Mjuka, l\u00e5gfrekventa Andullation\u00ae-vibrationer g\u00e5r genom madrassen via sju motorer till fem kroppszoner, fr\u00e5n axlarna till vaderna. De hj\u00e4lper musklerna att slappna av och lugnar kroppen. Samma teknik anv\u00e4nds \u00e4ven inom fysioterapi.<\/p>\n                        <div class=\"specs\">\n                            <div>\n                                <b>Varje sida f\u00f6r sig<\/b>\n                                <span>Var och en v\u00e4ljer sitt eget program, sin intensitet och l\u00e4ngd. Ni beh\u00f6ver inte komma \u00f6verens om n\u00e5got.<\/span>\n                            <\/div>\n                            <div>\n                                <b>Passar alla s\u00e4ngar<\/b>\n                                <span>Fungerar genom alla madrasser och b\u00e4ddmadrasser upp till 45 cm, p\u00e5 kontinentals\u00e4ng, ribbotten eller fast botten.<\/span>\n                            <\/div>\n                            <div>\n                                <b>20 program<\/b>\n                                <span>Fr\u00e5n avslappning f\u00f6r rygg och nacke till insomning, att sova vidare eller stresslindring. I 7 intensiteter, fr\u00e5n mjuk till kraftig.<\/span>\n                            <\/div>\n                            <div>\n                                <b>Installerad p\u00e5 10 minuter<\/b>\n                                <span>Skjut in modulerna under madrassen, anslut fj\u00e4rrkontrollen och klart. Inga verktyg beh\u00f6vs.<\/span>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <section class=\"science\">\n                <div class=\"col\">\n                    <h2>Andullation\u00ae-teknik, baserad p\u00e5 vetenskap<\/h2>\n                    <p>Andullation\u00ae har utvecklats i Tyskland tillsammans med universitet och anv\u00e4nds \u00e4ven inom fysioterapi. Tekniken har dessutom unders\u00f6kts oberoende.<\/p>\n                    <p>En referentgranskad studie, publicerad p\u00e5 PubMed, f\u00f6ljde 50 personer som fick fem andullationsmassager p\u00e5 en halvtimme. Forskarna m\u00e4tte f\u00f6re och efter hur deltagarna upplevde sm\u00e4rta, hur de m\u00e5dde och hur mycket tryck deras l\u00e4ndrygg t\u00e5lde.<\/p>\n                    <div class=\"study\">\n                        <span class=\"pill\">Referentgranskad \u00b7 PubMed<\/span>\n                        <h3>Vad som f\u00f6r\u00e4ndrades efter fem sessioner<\/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\u00a0%<\/b>\n                                <span>sm\u00e4rtupplevelse<\/span>\n                            <\/div>\n                            <div>\n                                <b>+45,1\u00a0%<\/b>\n                                <span>v\u00e4lbefinnande<\/span>\n                            <\/div>\n                            <div>\n                                <b>+34,5\u00a0%<\/b>\n                                <span>sm\u00e4rttr\u00f6skel i l\u00e4ndryggen<\/span>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                    <p class=\"fine\">Studie med 50 personer utan kontrollgrupp, publicerad p\u00e5 PubMed. ANDUFIT \u00e4r ingen medicinteknisk produkt och lovar inget tillfrisknande. Vid ih\u00e5llande besv\u00e4r b\u00f6r du kontakta din l\u00e4kare.<\/p>\n                    <p>Och f\u00f6r er s\u00f6mn? I en enk\u00e4t bland egna anv\u00e4ndare uppgav 82\u00a0% att de somnar l\u00e4ttare och 79\u00a0% att de vaknar mer utvilade.<\/p>\n                    <div class=\"reviews\">\n                        <figure>\n                            <p>\u201dJag kommer hem helt stressad. En session och jag \u00e4r en annan m\u00e4nniska. Min fru m\u00e4rker det direkt.\u201d<\/p>\n                            <figcaption>Rainer T., Schweiz<\/figcaption>\n                        <\/figure>\n                        <figure>\n                            <p>\u201dMitt huvud gick hela tiden p\u00e5 h\u00f6gvarv. Efter tjugo minuter \u00e4r jag bara lugn och somnar.\u201d<\/p>\n                            <figcaption>Bert A., Belgien<\/figcaption>\n                        <\/figure>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <div class=\"col\">\n                <section class=\"offer\" id=\"aanbod\">\n                    <h2>Nyfikna p\u00e5 vad ANDUFIT kan g\u00f6ra f\u00f6r er? Prova i 14 n\u00e4tter tillsammans<\/h2>\n                    <p>Innan ni inreder ett extra sovrum kan ni f\u00f6rst prova att sova djupare tillsammans. L\u00e4gg en modul p\u00e5 varje sida under er madrass och anv\u00e4nd dem i tv\u00e5 veckor som ni skulle anv\u00e4nda dem varje kv\u00e4ll efter\u00e5t.<\/p>\n                    <ol class=\"trial\">\n                        <li>\n                            <b>Natt 1<\/b>\n                            <span>Var och en v\u00e4ljer sitt eget program och den intensitet som k\u00e4nns r\u00e4tt.<\/span>\n                        <\/li>\n                        <li>\n                            <b>Vecka 1<\/b>\n                            <span>Att slappna av tillsammans f\u00f6re s\u00e4ngg\u00e5endet blir ett fast inslag i er kv\u00e4ll.<\/span>\n                        <\/li>\n                        <li>\n                            <b>Natt 14<\/b>\n                            <span>Ni best\u00e4mmer. M\u00e4rker ni ingen skillnad skickar ni tillbaka det kostnadsfritt och f\u00e5r hela beloppet tillbaka.<\/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                            Fri leverans inom 2 till 3 arbetsdagar, fri retur\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                            M\u00f6jlighet till delbetalning\n                        <\/li>\n                    <\/ul>\n                    <a class=\"btn\" href=\"#\" data-cta=\"offer\">Se priset<\/a>\n                <\/section>\n\n                <section class=\"sources\">\n                    <h2>K\u00e4llor<\/h2>\n                    <ol>\n                        <li>American Academy of Sleep Medicine, Sleep Prioritization Survey 2025 (2\u00a0007 vuxna i USA). K\u00e4lla f\u00f6r 31\u00a0%.<\/li>\n                        <li>ResMed, Global Sleep Survey 2024. K\u00e4lla f\u00f6r snarkning och olika dygnsrytm som de viktigaste sk\u00e4len.<\/li>\n                        <li>Parras-Molt\u00f3 A, Ribas-Serna J. Dose-Response, 2019;17(2). PMID 31105478. K\u00e4lla f\u00f6r resultaten av Andullation\u00ae.<\/li>\n                        <li>ANDUFIT, enk\u00e4t bland egna anv\u00e4ndare. Sj\u00e4lvrapporterat, utan kontrollgrupp. K\u00e4lla f\u00f6r 82\u00a0% och 79\u00a0%.<\/li>\n                    <\/ol>\n                    <p class=\"fine\">Den h\u00e4r artikeln \u00e4r en annons fr\u00e5n ANDUFIT. ANDUFIT \u00e4r ingen medicinteknisk produkt och ers\u00e4tter inte medicinsk r\u00e5dgivning. Resultaten varierar fr\u00e5n person till person.<\/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\">Se priset<\/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 = \"sv\"; \/\/ 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>Somna tillsammans, avslappnade Allt fler par sover var f\u00f6r sig, i hopp om att b\u00e5da ska sova b\u00e4ttre och vakna utvilade. Det g\u00e5r ocks\u00e5 att g\u00f6ra annorlunda. L\u00e4s varf\u00f6r det att slappna av tillsammans f\u00f6re s\u00e4ngg\u00e5endet \u00e4r v\u00e4gen till en djup s\u00f6mn, och hur en massagemodul under er madrass kan hj\u00e4lpa. I samarbete med dr [&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-1207","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/pages\/1207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/comments?post=1207"}],"version-history":[{"count":2,"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/pages\/1207\/revisions"}],"predecessor-version":[{"id":1210,"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/pages\/1207\/revisions\/1210"}],"wp:attachment":[{"href":"https:\/\/lu.andufit.com\/sv\/wp-json\/wp\/v2\/media?parent=1207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}