{"product_id":"let-it-all-soak-in-sidekick-towel","title":"Let It All Soak In Sidekick Towel","description":"\u003csection class=\"hf-soak-wrap\"\u003e\n  \u003cstyle\u003e\n    .hf-soak-wrap{\n      --hf-yellow:#ffd900;\n      --hf-bg:#0d0d0d;\n      --hf-panel:#151515;\n      --hf-panel-2:#1c1c1c;\n      --hf-border:rgba(255,255,255,0.12);\n      --hf-text:#f5f5f5;\n      --hf-muted:#b7b7b7;\n      --hf-shadow:0 20px 50px rgba(0,0,0,0.38);\n      --hf-radius:22px;\n      max-width: 980px;\n      margin: 0 auto 3rem;\n      color: var(--hf-text);\n      font-family: -apple-system,BlinkMacSystemFont,'San Francisco','Segoe UI',Roboto,'Helvetica Neue',sans-serif;\n    }\n\n    .hf-soak{\n      position: relative;\n      overflow: hidden;\n      border: 1px solid var(--hf-border);\n      border-radius: 28px;\n      background:\n        radial-gradient(circle at top right, rgba(255,217,0,0.12), transparent 30%),\n        radial-gradient(circle at bottom left, rgba(255,217,0,0.08), transparent 28%),\n        linear-gradient(180deg, #111 0%, #0b0b0b 100%);\n      box-shadow: var(--hf-shadow);\n      padding: 28px;\n    }\n\n    .hf-soak:before{\n      content:\"\";\n      position:absolute;\n      inset:0;\n      pointer-events:none;\n      background-image:\n        linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),\n        linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);\n      background-size: 26px 26px;\n      mask-image: linear-gradient(180deg, rgba(0,0,0,0.3), rgba(0,0,0,0));\n    }\n\n    .hf-soak__hero{\n      position: relative;\n      z-index: 1;\n      display: grid;\n      grid-template-columns: 1.25fr 0.9fr;\n      gap: 20px;\n      align-items: stretch;\n      margin-bottom: 18px;\n    }\n\n    .hf-soak__hero-main,\n    .hf-soak__hero-side{\n      background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));\n      border: 1px solid var(--hf-border);\n      border-radius: var(--hf-radius);\n      padding: 22px;\n      backdrop-filter: blur(4px);\n    }\n\n    .hf-soak__kicker{\n      display:inline-flex;\n      align-items:center;\n      gap:8px;\n      margin:0 0 14px;\n      padding: 7px 12px;\n      border-radius: 999px;\n      background: rgba(255,217,0,0.1);\n      border: 1px solid rgba(255,217,0,0.28);\n      color: var(--hf-yellow);\n      font-size: 12px;\n      font-weight: 800;\n      letter-spacing: 0.12em;\n      text-transform: uppercase;\n    }\n\n    .hf-soak__title{\n      margin: 0 0 12px;\n      font-size: clamp(2rem, 3vw, 3.2rem);\n      line-height: 0.96;\n      letter-spacing: -0.04em;\n      color: var(--hf-yellow);\n      text-transform: uppercase;\n    }\n\n    .hf-soak__title span{\n      display:block;\n      color:#fff;\n    }\n\n    .hf-soak__lead{\n      margin: 0;\n      font-size: 1.05rem;\n      line-height: 1.7;\n      color: #fff;\n      max-width: 60ch;\n    }\n\n    .hf-soak__side-label{\n      margin:0 0 14px;\n      font-size: 0.78rem;\n      letter-spacing: 0.14em;\n      text-transform: uppercase;\n      color: var(--hf-muted);\n      font-weight: 700;\n    }\n\n    .hf-soak__side-quote{\n      margin:0 0 18px;\n      font-size: 1.35rem;\n      line-height: 1.12;\n      font-weight: 800;\n      letter-spacing: -0.03em;\n      color:#fff;\n    }\n\n    .hf-soak__mini-list{\n      display:grid;\n      gap:10px;\n      margin:0;\n      padding:0;\n      list-style:none;\n    }\n\n    .hf-soak__mini-list li{\n      display:flex;\n      align-items:flex-start;\n      gap:10px;\n      color:#e8e8e8;\n      font-size:0.95rem;\n      line-height:1.45;\n      padding-top:10px;\n      border-top:1px solid rgba(255,255,255,0.08);\n    }\n\n    .hf-soak__mini-list li:first-child{\n      border-top:0;\n      padding-top:0;\n    }\n\n    .hf-soak__dot{\n      flex:0 0 auto;\n      width:10px;\n      height:10px;\n      border-radius:999px;\n      background:var(--hf-yellow);\n      margin-top:0.38rem;\n      box-shadow:0 0 0 4px rgba(255,217,0,0.12);\n    }\n\n    .hf-soak__pills{\n      position: relative;\n      z-index: 1;\n      display:flex;\n      flex-wrap:wrap;\n      gap:10px;\n      margin: 0 0 20px;\n    }\n\n    .hf-soak__pills span{\n      display:inline-flex;\n      align-items:center;\n      justify-content:center;\n      padding: 10px 14px;\n      border-radius:999px;\n      background:#fff;\n      color:#000;\n      font-size:0.82rem;\n      font-weight:800;\n      letter-spacing:0.02em;\n      box-shadow: 0 10px 20px rgba(0,0,0,0.22);\n      white-space: nowrap;\n    }\n\n    .hf-soak__grid{\n      position: relative;\n      z-index: 1;\n      display:grid;\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n      gap: 16px;\n      margin-bottom: 16px;\n    }\n\n    .hf-soak__card{\n      background: linear-gradient(180deg, var(--hf-panel-2), var(--hf-panel));\n      border:1px solid var(--hf-border);\n      border-radius: var(--hf-radius);\n      padding: 20px;\n      box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);\n    }\n\n    .hf-soak__card--full{\n      grid-column: 1 \/ -1;\n    }\n\n    .hf-soak__section-tag{\n      display:inline-block;\n      margin:0 0 10px;\n      color:var(--hf-yellow);\n      font-size:0.78rem;\n      font-weight:800;\n      letter-spacing:0.14em;\n      text-transform:uppercase;\n    }\n\n    .hf-soak__card h3{\n      margin:0 0 12px;\n      font-size:1.3rem;\n      line-height:1.1;\n      letter-spacing:-0.03em;\n      color:#fff;\n    }\n\n    .hf-soak__card p{\n      margin:0;\n      color:#efefef;\n      font-size:1rem;\n      line-height:1.7;\n    }\n\n    .hf-soak__feature-list{\n      display:grid;\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n      gap: 12px;\n      margin: 16px 0 0;\n      padding: 0;\n      list-style:none;\n    }\n\n    .hf-soak__feature-list li{\n      background: rgba(255,255,255,0.03);\n      border:1px solid rgba(255,255,255,0.08);\n      border-radius:18px;\n      padding:14px 14px 14px 16px;\n      line-height:1.55;\n      color:#ececec;\n      min-height:100%;\n    }\n\n    .hf-soak__feature-list strong{\n      color:var(--hf-yellow);\n      display:block;\n      margin-bottom:4px;\n      font-size:0.98rem;\n    }\n\n    .hf-soak__cta{\n      position: relative;\n      z-index: 1;\n      margin: 18px 0;\n      padding: 18px;\n      border: 1px solid rgba(255,217,0,0.28);\n      border-radius: 22px;\n      background:\n        radial-gradient(circle at top right, rgba(255,217,0,0.12), transparent 35%),\n        linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02));\n      text-align: center;\n    }\n\n    .hf-soak__cta p{\n      margin: 0 0 14px;\n      color: #f1f1f1;\n      font-size: 1rem;\n      line-height: 1.5;\n      font-weight: 700;\n    }\n\n    .hf-soak__cta-btn{\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 48px;\n      padding: 0.95rem 1.35rem;\n      border-radius: 999px;\n      background: var(--hf-yellow);\n      color: #000;\n      text-decoration: none;\n      border: 0;\n      cursor: pointer;\n      font-weight: 900;\n      font-size: 0.82rem;\n      letter-spacing: 0.08em;\n      text-transform: uppercase;\n      box-shadow: 0 10px 22px rgba(0,0,0,0.25);\n      transition: transform .18s ease, opacity .18s ease;\n    }\n\n    .hf-soak__cta-btn:hover{\n      opacity: 0.9;\n      transform: translateY(-1px);\n    }\n\n    .hf-soak__faq{\n      position: relative;\n      z-index: 1;\n      background: linear-gradient(180deg, #121212, #0f0f0f);\n      border:1px solid var(--hf-border);\n      border-radius: 24px;\n      padding: 22px;\n      margin: 16px 0;\n    }\n\n    .hf-soak__faq h3,\n    .hf-soak__specs h3{\n      margin:0 0 14px;\n      color:var(--hf-yellow);\n      font-size:1.25rem;\n      line-height:1.1;\n      letter-spacing:-0.02em;\n      text-transform:uppercase;\n    }\n\n    .hf-soak__faq details{\n      border:1px solid rgba(255,255,255,0.1);\n      border-radius:18px;\n      background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));\n      margin-bottom:12px;\n      overflow:hidden;\n    }\n\n    .hf-soak__faq details:last-child{\n      margin-bottom:0;\n    }\n\n    .hf-soak__faq summary{\n      list-style:none;\n      cursor:pointer;\n      padding:16px 18px;\n      font-weight:800;\n      color:#fff;\n      position:relative;\n      padding-right:48px;\n    }\n\n    .hf-soak__faq summary::-webkit-details-marker{\n      display:none;\n    }\n\n    .hf-soak__faq summary:after{\n      content:\"+\";\n      position:absolute;\n      right:18px;\n      top:50%;\n      transform:translateY(-50%);\n      color:var(--hf-yellow);\n      font-size:1.2rem;\n      font-weight:900;\n    }\n\n    .hf-soak__faq details[open] summary:after{\n      content:\"–\";\n    }\n\n    .hf-soak__faq-answer{\n      padding: 0 18px 18px;\n      color:#e8e8e8;\n      line-height:1.65;\n      font-size:0.97rem;\n    }\n\n    .hf-soak__specs{\n      position: relative;\n      z-index: 1;\n      background: linear-gradient(180deg, #111, #0d0d0d);\n      border:1px solid var(--hf-border);\n      border-radius:24px;\n      padding:22px;\n    }\n\n    .hf-soak__spec-grid{\n      display:grid;\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n      gap: 12px;\n      margin: 14px 0 16px;\n    }\n\n    .hf-soak__spec-box{\n      border:1px solid rgba(255,255,255,0.1);\n      border-radius:18px;\n      background: rgba(255,255,255,0.03);\n      padding:16px;\n    }\n\n    .hf-soak__spec-box small{\n      display:block;\n      color:var(--hf-muted);\n      text-transform:uppercase;\n      letter-spacing:0.12em;\n      font-size:0.72rem;\n      font-weight:800;\n      margin-bottom:8px;\n    }\n\n    .hf-soak__spec-box strong{\n      display:block;\n      color:var(--hf-yellow);\n      font-size:1.15rem;\n      margin-bottom:6px;\n      line-height:1.1;\n    }\n\n    .hf-soak__spec-box span{\n      color:#f1f1f1;\n      font-size:0.95rem;\n      line-height:1.45;\n    }\n\n    .hf-soak__spec-meta{\n      display:grid;\n      grid-template-columns: 1fr 1fr;\n      gap:12px;\n      margin-top: 10px;\n    }\n\n    .hf-soak__meta{\n      border:1px solid rgba(255,255,255,0.1);\n      border-radius:18px;\n      padding:16px;\n      background: rgba(255,255,255,0.025);\n    }\n\n    .hf-soak__meta strong{\n      display:block;\n      color:var(--hf-yellow);\n      margin-bottom:8px;\n      font-size:0.9rem;\n      letter-spacing:0.08em;\n      text-transform:uppercase;\n    }\n\n    .hf-soak__meta p{\n      margin:0;\n      color:#efefef;\n      line-height:1.6;\n      font-size:0.96rem;\n    }\n\n    @media (max-width: 820px){\n      .hf-soak{\n        padding:18px;\n        border-radius:24px;\n      }\n\n      .hf-soak__hero,\n      .hf-soak__grid,\n      .hf-soak__feature-list,\n      .hf-soak__spec-grid,\n      .hf-soak__spec-meta{\n        grid-template-columns: 1fr;\n      }\n\n      .hf-soak__title{\n        font-size: clamp(1.7rem, 8vw, 2.5rem);\n      }\n\n      .hf-soak__hero-main,\n      .hf-soak__hero-side,\n      .hf-soak__card,\n      .hf-soak__faq,\n      .hf-soak__specs{\n        padding:18px;\n      }\n    }\n  \u003c\/style\u003e\n\n  \u003carticle class=\"hf-soak\"\u003e\n    \u003cheader class=\"hf-soak__hero\"\u003e\n      \u003cdiv class=\"hf-soak__hero-main\"\u003e\n        \u003cp class=\"hf-soak__kicker\"\u003eJULIE SOLVSTROM SIDEKICK TOWEL\u003c\/p\u003e\n        \u003ch2 class=\"hf-soak__title\"\u003e\n          LET IT ALL SOAK IN\n          \u003cspan\u003eQuick-dry. Travel-ready. Good at slowing things down.\u003c\/span\u003e\n        \u003c\/h2\u003e\n        \u003cp class=\"hf-soak__lead\"\u003e\n          The Let It All Soak In Sidekick Towel was made for beach days, slow mornings, and post-swim reflections. It’s built for the moments that don’t need rushing.\n          \u003cbr\u003e\u003cbr\u003e\n          Whether you’re chasing waves or chasing stillness, it’s here for every tide, turn, and quiet moment in between.\n        \u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003caside class=\"hf-soak__hero-side\"\u003e\n        \u003cp class=\"hf-soak__side-label\"\u003eWhy it earns the spot\u003c\/p\u003e\n        \u003cp class=\"hf-soak__side-quote\"\u003eFast-drying. Easy to pack. Calm-looking enough to feel intentional. Useful enough to come everywhere.\u003c\/p\u003e\n        \u003cul class=\"hf-soak__mini-list\"\u003e\n          \u003cli\u003e\n            \u003cspan class=\"hf-soak__dot\"\u003e\u003c\/span\u003e\n            \u003cspan\u003eDries fast without the heavy wet-cotton drag.\u003c\/span\u003e\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cspan class=\"hf-soak__dot\"\u003e\u003c\/span\u003e\n            \u003cspan\u003ePacks small for backpacks, totes, carry-ons, and “just in case” situations.\u003c\/span\u003e\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cspan class=\"hf-soak__dot\"\u003e\u003c\/span\u003e\n            \u003cspan\u003eShakes off sand instead of bringing the beach all the way home.\u003c\/span\u003e\n          \u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/aside\u003e\n    \u003c\/header\u003e\n\n    \u003csection class=\"hf-soak__pills\"\u003e\n      \u003cspan\u003eQUICK-DRY MICROFIBER\u003c\/span\u003e\n      \u003cspan\u003eULTRA ABSORBENT\u003c\/span\u003e\n      \u003cspan\u003eANTIMICROBIAL\u003c\/span\u003e\n      \u003cspan\u003eCOMPACT \u0026amp; TRAVEL-READY\u003c\/span\u003e\n      \u003cspan\u003eSAND-FREE\u003c\/span\u003e\n      \u003cspan\u003eDURABLE \u0026amp; ECO-CONSCIOUS\u003c\/span\u003e\n      \u003cspan\u003eARTIST-DESIGNED\u003c\/span\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"hf-soak__grid\"\u003e\n      \u003cdiv class=\"hf-soak__card hf-soak__card--full\"\u003e\n        \u003cspan class=\"hf-soak__section-tag\"\u003eWhat makes it different\u003c\/span\u003e\n        \u003ch3\u003eThe towel that earns its spot whether the day stays slow or takes a sharp left.\u003c\/h3\u003e\n        \u003cp\u003e\n          Packable, practical, and always ready, the Let It All Soak In Sidekick Towel is the one you throw in the bag for quiet mornings, spontaneous swims, long walks, rinses, resets, and whatever the day decides to become.\n        \u003c\/p\u003e\n\n        \u003cul class=\"hf-soak__feature-list\"\u003e\n          \u003cli\u003e\n            \u003cstrong\u003eQuick-dry \u0026amp; ultra absorbent\u003c\/strong\u003e\n            Dries fast and drinks up water without the heavy wet-cotton weight.\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cstrong\u003eAntimicrobial \u0026amp; odor-resistant\u003c\/strong\u003e\n            Helps prevent funk so you can go from water to bag to home without the stink.\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cstrong\u003eCompact \u0026amp; travel-ready\u003c\/strong\u003e\n            Packs small for backpacks, totes, carry-ons, and the “just in case” stash.\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cstrong\u003eSand-free design\u003c\/strong\u003e\n            Sand shakes off instead of sticking around for the ride home.\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cstrong\u003eDurable \u0026amp; eco-conscious\u003c\/strong\u003e\n            Built to last through repeat washes and seasons of use.\n          \u003c\/li\u003e\n          \u003cli\u003e\n            \u003cstrong\u003eArtist-designed\u003c\/strong\u003e\n            Coastal-inspired artwork that brings form, function, and a little perspective.\n          \u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"hf-soak__cta hf-soak__card--full\"\u003e\n        \u003cp\u003eAlready convinced? Weird. Efficient. We respect it.\u003c\/p\u003e\n        \u003cbutton class=\"hf-soak__cta-btn\" type=\"button\" data-hf-scroll-to-product-title\u003e\n          Back to Product Options ↑\n        \u003c\/button\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"hf-soak__card\"\u003e\n        \u003cspan class=\"hf-soak__section-tag\"\u003eHow it feels\u003c\/span\u003e\n        \u003ch3\u003eSoft, light, and not remotely swampy.\u003c\/h3\u003e\n        \u003cp\u003e\n          Smooth, soft, and light—more like a warm shoreline breeze than a soggy bathroom mat.\n          \u003cbr\u003e\u003cbr\u003e\n          No stiffness. No cling. No soggy sadness.\n        \u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"hf-soak__card\"\u003e\n        \u003cspan class=\"hf-soak__section-tag\"\u003eDesign story\u003c\/span\u003e\n        \u003ch3\u003eWaves, wisdom, and warmth.\u003c\/h3\u003e\n        \u003cp\u003e\n          The ocean reminds us life keeps moving whether we’re ready or not.\n          \u003cbr\u003e\u003cbr\u003e\n          Julie Solvstrom designed Let It All Soak In for those quieter pauses: post-swim, on the rocks, in the dunes, after the rinse, before the next thing.\n          \u003cbr\u003e\u003cbr\u003e\n          Wrap up. Breathe. Let it all soak in. \u003ca href=\"https:\/\/happyfaced.com\/pages\/julie-solvstrom\" target=\"_blank\" title=\"Artist Profile for Julie Solvstrom\" rel=\"noopener\"\u003eMeet the artist.\u003c\/a\u003e\n        \u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"hf-soak__faq\"\u003e\n      \u003ch3\u003eQuestions, Answered\u003c\/h3\u003e\n\n      \u003cdetails open\u003e\n        \u003csummary\u003eWhat’s the Let It All Soak In Sidekick Towel best for?\u003c\/summary\u003e\n        \u003cdiv class=\"hf-soak__faq-answer\"\u003e\n          Beach days, lake dips, ocean swims, pool sessions, travel, coastal hikes, picnics, and everyday showers.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails\u003e\n        \u003csummary\u003eDoes it dry fast?\u003c\/summary\u003e\n        \u003cdiv class=\"hf-soak__faq-answer\"\u003e\n          Yes. Quick-dry microfiber dries significantly faster than standard cotton, which makes it ideal for repeat dips and same-day pack-ups.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails\u003e\n        \u003csummary\u003eIs it sand-free?\u003c\/summary\u003e\n        \u003cdiv class=\"hf-soak__faq-answer\"\u003e\n          Yes. Sand doesn’t cling like it does to cotton terry and shakes off easily with a couple of snaps.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails\u003e\n        \u003csummary\u003eIs it eco-friendly?\u003c\/summary\u003e\n        \u003cdiv class=\"hf-soak__faq-answer\"\u003e\n          Yes. 88% of the towel is made from recycled plastic that’s spun into a soft polyester yarn and woven into the microfiber. It’s reusable, washable, and durable.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n\n      \u003cdetails\u003e\n        \u003csummary\u003eWill it smell?\u003c\/summary\u003e\n        \u003cdiv class=\"hf-soak__faq-answer\"\u003e\n          Its antimicrobial, odor-resistant construction helps it stay fresher between washes, especially if you let it dry fully instead of trapping it in a damp bag.\n        \u003c\/div\u003e\n      \u003c\/details\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"hf-soak__specs\"\u003e\n      \u003ch3\u003eSpecs\u003c\/h3\u003e\n\n      \u003cdiv class=\"hf-soak__spec-grid\"\u003e\n        \u003cdiv class=\"hf-soak__spec-box\"\u003e\n          \u003csmall\u003eLarge\u003c\/small\u003e\n          \u003cstrong\u003e72\" × 36\"\u003c\/strong\u003e\n          \u003cspan\u003e20.6 oz\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"hf-soak__spec-box\"\u003e\n          \u003csmall\u003eMedium\u003c\/small\u003e\n          \u003cstrong\u003e60\" × 30\"\u003c\/strong\u003e\n          \u003cspan\u003e14.3 oz\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"hf-soak__spec-box\"\u003e\n          \u003csmall\u003eSmall\u003c\/small\u003e\n          \u003cstrong\u003e40\" × 20\"\u003c\/strong\u003e\n          \u003cspan\u003e6.6 oz\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"hf-soak__spec-meta\"\u003e\n        \u003cdiv class=\"hf-soak__meta\"\u003e\n          \u003cstrong\u003eMaterial\u003c\/strong\u003e\n          \u003cp\u003e88% recycled polyester + 12% nylon microfiber\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"hf-soak__meta\"\u003e\n          \u003cstrong\u003eCare\u003c\/strong\u003e\n          \u003cp\u003eMachine wash cold, tumble dry low or hang to dry.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"hf-soak__meta\" style=\"grid-column:1 \/ -1;\"\u003e\n          \u003cstrong\u003eUse\u003c\/strong\u003e\n          \u003cp\u003eBeach, lake, pool, ocean, travel, everyday shower, meditation, post-swim, and slow mornings.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003cdiv class=\"hf-soak__cta\"\u003e\n      \u003cp\u003eYou made it to the end. That feels like towel-buying behavior.\u003c\/p\u003e\n      \u003cbutton class=\"hf-soak__cta-btn\" type=\"button\" data-hf-scroll-to-product-title\u003e\n        Back to Product Options ↑\n      \u003c\/button\u003e\n    \u003c\/div\u003e\n  \u003c\/article\u003e\n\n  \u003cscript\u003e\n    (function() {\n      var ctaButtons = document.querySelectorAll('[data-hf-scroll-to-product-title]');\n      if (!ctaButtons.length) return;\n\n      function findProductTitleTarget() {\n        var selectors = [\n          '.product__title',\n          '.product__title h1',\n          '.product__info-container h1',\n          '.product-info h1',\n          'h1.product-title',\n          'h1'\n        ];\n\n        for (var i = 0; i \u003c selectors.length; i++) {\n          var target = document.querySelector(selectors[i]);\n          if (target) return target;\n        }\n\n        return null;\n      }\n\n      function scrollToProductTitle() {\n        var target = findProductTitleTarget();\n\n        if (target) {\n          var offset = 90;\n          var top = target.getBoundingClientRect().top + window.pageYOffset - offset;\n\n          window.scrollTo({\n            top: top,\n            behavior: 'smooth'\n          });\n        } else {\n          window.scrollTo({\n            top: 0,\n            behavior: 'smooth'\n          });\n        }\n      }\n\n      ctaButtons.forEach(function(button) {\n        button.addEventListener('click', scrollToProductTitle);\n      });\n    })();\n  \u003c\/script\u003e\n\u003c\/section\u003e","brand":"Happy Faced","offers":[{"title":"LARGE","offer_id":46986794828097,"sku":"HF-ET-LIASI_LG","price":38.0,"currency_code":"USD","in_stock":true},{"title":"MEDIUM","offer_id":46986794860865,"sku":"HF-ET-LIASI_MD","price":34.0,"currency_code":"USD","in_stock":true},{"title":"SMALL","offer_id":46986794893633,"sku":"HF-ET-LIASI_SM","price":30.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0790\/1741\/0881\/files\/Everyday_Towel_Let-it-all-soak-in-front-1000-no-background.png?v=1727728628","url":"https:\/\/happyfaced.com\/products\/let-it-all-soak-in-sidekick-towel","provider":"Happy Faced","version":"1.0","type":"link"}