{"title":"Woman","description":null,"products":[{"product_id":"his-herhaven™-the-satin-knit","title":"His\u0026HerHaven™ The Satin Knit","description":"\u003cstyle\u003e\n\/* =========================================================\n   HIS\u0026HERHAVEN™ — SATIN KNIT PRODUCT SECTION\n   Lightweight \/ Mobile First \/ Shopify Friendly\n   ========================================================= *\/\n\n.hh-satin-section,\n.hh-satin-section * {\n  box-sizing: border-box;\n}\n\n.hh-satin-section {\n  --hh-bg: #f3f3f3;\n  --hh-card: #ffffff;\n  --hh-dark: #1d1d1d;\n  --hh-text: #555;\n  --hh-brown: #7b5d3d;\n  --hh-gold: #b8905c;\n  --hh-radius: 22px;\n\n  width: 100%;\n  padding: 65px 20px;\n  background: var(--hh-bg);\n  border-radius: var(--hh-radius);\n  overflow: hidden;\n}\n\n.hh-satin-container {\n  width: min(1100px, 100%);\n  margin: 0 auto;\n}\n\n\/* =========================\n   HEADER\n   ========================= *\/\n\n.hh-satin-brand {\n  margin: 0 0 12px;\n  text-align: center;\n  font-family: Georgia, \"Times New Roman\", serif;\n  font-size: clamp(22px, 3vw, 30px);\n  font-weight: 700;\n  letter-spacing: 3px;\n  line-height: 1.2;\n  color: #3d2c20;\n}\n\n.hh-satin-brand::after {\n  content: \"\";\n  display: block;\n  width: 90px;\n  height: 2px;\n  margin: 14px auto 0;\n  background: linear-gradient(\n    90deg,\n    transparent,\n    var(--hh-gold),\n    #222,\n    var(--hh-gold),\n    transparent\n  );\n}\n\n.hh-satin-title {\n  max-width: 900px;\n  margin: 0 auto 22px;\n  text-align: center;\n  font-family: inherit;\n  font-size: clamp(30px, 5vw, 46px);\n  font-weight: 700;\n  line-height: 1.15;\n  letter-spacing: -0.5px;\n  color: var(--hh-dark);\n}\n\n.hh-satin-title span {\n  display: block;\n  margin-top: 8px;\n  font-size: .58em;\n  font-weight: 600;\n  line-height: 1.35;\n  color: var(--hh-brown);\n}\n\n.hh-satin-description {\n  max-width: 820px;\n  margin: 0 auto;\n  text-align: center;\n  font-size: 17px;\n  line-height: 1.8;\n  color: var(--hh-text);\n}\n\n.hh-satin-description strong {\n  color: #292929;\n}\n\n\/* =========================\n   CTA\n   ========================= *\/\n\n.hh-satin-cta-wrap {\n  margin-top: 30px;\n  text-align: center;\n}\n\n.hh-satin-cta {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 9px;\n  min-height: 54px;\n  padding: 15px 34px;\n\n  border: 0;\n  border-radius: 999px;\n\n  background: linear-gradient(\n    135deg,\n    #6f5235,\n    #b8905c,\n    #765637\n  );\n\n  color: #fff;\n  font-size: 16px;\n  font-weight: 700;\n  line-height: 1;\n  text-decoration: none;\n\n  box-shadow: 0 8px 24px rgba(75, 53, 30, .18);\n\n  transition:\n    transform .25s ease,\n    box-shadow .25s ease;\n}\n\n.hh-satin-cta:hover {\n  transform: translateY(-3px);\n  box-shadow: 0 14px 30px rgba(75, 53, 30, .28);\n}\n\n.hh-satin-cta:focus-visible {\n  outline: 3px solid rgba(184, 144, 92, .45);\n  outline-offset: 4px;\n}\n\n\/* =========================\n   BENEFITS\n   ========================= *\/\n\n.hh-satin-benefits {\n  display: grid;\n  grid-template-columns: repeat(3, minmax(0, 1fr));\n  gap: 20px;\n  margin-top: 48px;\n}\n\n.hh-satin-card {\n  position: relative;\n  padding: 26px 24px;\n  background: var(--hh-card);\n  border: 1px solid rgba(0, 0, 0, .05);\n  border-radius: 18px;\n\n  box-shadow: 0 8px 25px rgba(0, 0, 0, .055);\n\n  transition:\n    transform .25s ease,\n    box-shadow .25s ease;\n}\n\n.hh-satin-card:hover {\n  transform: translateY(-5px);\n  box-shadow: 0 14px 32px rgba(0, 0, 0, .10);\n}\n\n.hh-satin-icon {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n\n  width: 44px;\n  height: 44px;\n  margin-bottom: 15px;\n\n  border-radius: 50%;\n  background: #f2eee8;\n\n  font-size: 20px;\n}\n\n.hh-satin-card h3 {\n  margin: 0 0 9px;\n  font-size: 18px;\n  font-weight: 700;\n  line-height: 1.35;\n  color: #2b2b2b;\n}\n\n.hh-satin-card p {\n  margin: 0;\n  font-size: 14px;\n  line-height: 1.7;\n  color: #666;\n}\n\n\/* =========================\n   PERFECT FOR\n   ========================= *\/\n\n.hh-satin-perfect {\n  margin-top: 55px;\n  text-align: center;\n}\n\n.hh-satin-perfect h2 {\n  margin: 0 0 20px;\n  font-size: clamp(25px, 4vw, 32px);\n  line-height: 1.2;\n  color: #222;\n}\n\n.hh-satin-tags {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  gap: 10px;\n}\n\n.hh-satin-tag {\n  padding: 10px 17px;\n  border-radius: 999px;\n  background: #292929;\n  color: #fff;\n  font-size: 14px;\n  font-weight: 500;\n  line-height: 1;\n  transition:\n    background .2s ease,\n    transform .2s ease;\n}\n\n.hh-satin-tag:hover {\n  background: var(--hh-brown);\n  transform: translateY(-2px);\n}\n\n\/* =========================\n   PROMISE\n   ========================= *\/\n\n.hh-satin-promise {\n  margin-top: 55px;\n  padding: 34px 28px;\n\n  border-radius: 20px;\n\n  background: linear-gradient(\n    135deg,\n    #262626,\n    #414141\n  );\n\n  text-align: center;\n  color: #fff;\n\n  box-shadow: 0 12px 30px rgba(0, 0, 0, .12);\n}\n\n.hh-satin-promise h2 {\n  margin: 0 0 15px;\n  font-family: Georgia, \"Times New Roman\", serif;\n  font-size: clamp(25px, 4vw, 30px);\n  line-height: 1.2;\n}\n\n.hh-satin-promise p {\n  max-width: 800px;\n  margin: 0 auto;\n  font-size: 16px;\n  line-height: 1.8;\n  color: #ddd;\n}\n\n.hh-satin-promise strong {\n  color: #fff;\n}\n\n\/* =========================\n   TABLET\n   ========================= *\/\n\n@media (max-width: 900px) {\n\n  .hh-satin-benefits {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n\n}\n\n\/* =========================\n   MOBILE\n   ========================= *\/\n\n@media (max-width: 600px) {\n\n  .hh-satin-section {\n    padding: 45px 15px;\n    border-radius: 18px;\n  }\n\n  .hh-satin-brand {\n    font-size: 21px;\n    letter-spacing: 2px;\n  }\n\n  .hh-satin-title {\n    font-size: 31px;\n  }\n\n  .hh-satin-title span {\n    font-size: .62em;\n  }\n\n  .hh-satin-description {\n    font-size: 15px;\n    line-height: 1.7;\n  }\n\n  .hh-satin-cta {\n    width: 100%;\n    max-width: 360px;\n    min-height: 56px;\n  }\n\n  .hh-satin-benefits {\n    grid-template-columns: 1fr;\n    gap: 14px;\n    margin-top: 38px;\n  }\n\n  .hh-satin-card {\n    padding: 22px 20px;\n  }\n\n  .hh-satin-perfect {\n    margin-top: 42px;\n  }\n\n  .hh-satin-tags {\n    gap: 8px;\n  }\n\n  .hh-satin-tag {\n    padding: 10px 14px;\n    font-size: 13px;\n  }\n\n  .hh-satin-promise {\n    margin-top: 42px;\n    padding: 28px 20px;\n  }\n\n  .hh-satin-promise p {\n    font-size: 14px;\n    line-height: 1.7;\n  }\n\n}\n\n\/* =========================\n   ACCESSIBILITY\n   ========================= *\/\n\n@media (prefers-reduced-motion: reduce) {\n\n  .hh-satin-cta,\n  .hh-satin-card,\n  .hh-satin-tag {\n    transition: none;\n  }\n\n}\n\u003c\/style\u003e\n\n\n\u003csection class=\"hh-satin-section\" aria-labelledby=\"hh-satin-title\"\u003e\n\n  \u003cdiv class=\"hh-satin-container\"\u003e\n\n    \u003c!-- BRAND --\u003e\n\n    \u003cheader\u003e\n\n      \u003cdiv class=\"hh-satin-brand\"\u003e\n        His\u0026amp;HerHaven™\n      \u003c\/div\u003e\n\n      \u003ch1 id=\"hh-satin-title\" class=\"hh-satin-title\"\u003e\n\n        The Satin Knit\n\n        \u003cspan\u003e\n          Your Hair Deserves Better Than a Regular Beanie.\n        \u003c\/span\u003e\n\n      \u003c\/h1\u003e\n\n      \u003cdiv class=\"hh-satin-description\"\u003e\n\n        Introducing \u003cstrong\u003eThe Satin Knit\u003c\/strong\u003e — the luxury beanie\n        designed to keep you warm while helping protect your hair.\n\n        Why sacrifice your hairstyle for comfort when you can have both?\n\n        Proudly inspired by South African winters, The Satin Knit combines\n        a cosy knitted exterior with a silky satin lining designed to\n        reduce friction and help your hair stay looking its best.\n\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"hh-satin-cta-wrap\"\u003e\n\n        \u003ca href=\"#product-form\" class=\"hh-satin-cta\" aria-label=\"Shop The Satin Knit\"\u003e\n          ✨ Shop The Satin Knit\n        \u003c\/a\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/header\u003e\n\n\n    \u003c!-- BENEFITS --\u003e\n\n    \u003cdiv class=\"hh-satin-benefits\"\u003e\n\n      \u003carticle class=\"hh-satin-card\"\u003e\n\n        \u003cdiv class=\"hh-satin-icon\" aria-hidden=\"true\"\u003e\n          ✨\n        \u003c\/div\u003e\n\n        \u003ch3\u003e\n          Reduces Frizz\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          The smooth satin lining glides over your hair instead of\n          creating the friction that can contribute to frizz.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"hh-satin-card\"\u003e\n\n        \u003cdiv class=\"hh-satin-icon\" aria-hidden=\"true\"\u003e\n          💧\n        \u003c\/div\u003e\n\n        \u003ch3\u003e\n          Helps Retain Moisture\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          Satin helps reduce friction and moisture loss, helping your\n          hair feel softer and less dry during cold weather.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"hh-satin-card\"\u003e\n\n        \u003cdiv class=\"hh-satin-icon\" aria-hidden=\"true\"\u003e\n          💇\n        \u003c\/div\u003e\n\n        \u003ch3\u003e\n          Helps Preserve Your Style\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          Keep your twist-outs, braid-outs, curls, blowouts and\n          protective styles looking fresh while staying warm.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"hh-satin-card\"\u003e\n\n        \u003cdiv class=\"hh-satin-icon\" aria-hidden=\"true\"\u003e\n          🛡️\n        \u003c\/div\u003e\n\n        \u003ch3\u003e\n          Reduces Hair Friction\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          The satin interior provides a smoother surface against your\n          hair, helping reduce the friction associated with breakage.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"hh-satin-card\"\u003e\n\n        \u003cdiv class=\"hh-satin-icon\" aria-hidden=\"true\"\u003e\n          ⚡\n        \u003c\/div\u003e\n\n        \u003ch3\u003e\n          Helps Reduce Static\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          The smooth satin lining helps minimise the friction that can\n          contribute to static and flyaway hair.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"hh-satin-card\"\u003e\n\n        \u003cdiv class=\"hh-satin-icon\" aria-hidden=\"true\"\u003e\n          🔥\n        \u003c\/div\u003e\n\n        \u003ch3\u003e\n          Warm \u0026amp; Comfortable\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          A cosy knitted exterior helps keep you warm while the satin\n          interior provides a smooth, comfortable finish.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003c!-- PERFECT FOR --\u003e\n\n    \u003csection class=\"hh-satin-perfect\" aria-labelledby=\"hh-perfect-title\"\u003e\n\n      \u003ch2 id=\"hh-perfect-title\"\u003e\n        Perfect For\n      \u003c\/h2\u003e\n\n      \u003cdiv class=\"hh-satin-tags\"\u003e\n\n        \u003cspan class=\"hh-satin-tag\"\u003eNatural Hair\u003c\/span\u003e\n        \u003cspan class=\"hh-satin-tag\"\u003eLocs\u003c\/span\u003e\n        \u003cspan class=\"hh-satin-tag\"\u003eBraids\u003c\/span\u003e\n        \u003cspan class=\"hh-satin-tag\"\u003eRelaxed Hair\u003c\/span\u003e\n        \u003cspan class=\"hh-satin-tag\"\u003eProtective Styles\u003c\/span\u003e\n        \u003cspan class=\"hh-satin-tag\"\u003eAll Hair Types\u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/section\u003e\n\n\n    \u003c!-- BRAND PROMISE --\u003e\n\n    \u003csection class=\"hh-satin-promise\" aria-labelledby=\"hh-promise-title\"\u003e\n\n      \u003ch2 id=\"hh-promise-title\"\u003e\n        The His\u0026amp;HerHaven™ Promise\n      \u003c\/h2\u003e\n\n      \u003cp\u003e\n\n        We created \u003cstrong\u003eThe Satin Knit\u003c\/strong\u003e because we understand\n        how much care goes into your hair.\n\n        You shouldn't have to choose between staying warm and keeping\n        your hairstyle looking fresh.\n\n        Our mission is simple: provide premium satin-lined beanies that\n        combine warmth, comfort and hair care in one timeless design.\n\n      \u003c\/p\u003e\n\n    \u003c\/section\u003e\n\n  \u003c\/div\u003e\n\n\u003c\/section\u003e","brand":"HIS\u0026her haven","offers":[{"title":"Blue","offer_id":54533185667347,"sku":null,"price":119.99,"currency_code":"ZAR","in_stock":true},{"title":"Orange","offer_id":54533185700115,"sku":null,"price":119.99,"currency_code":"ZAR","in_stock":true},{"title":"White","offer_id":54533185732883,"sku":null,"price":119.99,"currency_code":"ZAR","in_stock":true},{"title":"Black","offer_id":54533185765651,"sku":null,"price":119.99,"currency_code":"ZAR","in_stock":true},{"title":"Red","offer_id":54533185798419,"sku":null,"price":119.99,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1001\/4959\/2339\/files\/WhatsAppImage2026-08-05at12.58.19_1.jpg?v=1785929680"},{"product_id":"handmade-crochet-bag-wooden-base-hand-painted-leather-flap","title":"Handmade Crochet Bag – Wooden Base \u0026 Hand Painted Leather Flap","description":"\u003cstyle\u003e\n\/* =========================================================\n   HIS\u0026HERHAVEN™ — ARTISAN BAG\n   Lightweight \/ Responsive \/ Shopify Friendly\n   ========================================================= *\/\n\n.hh-artisan-bag,\n.hh-artisan-bag * {\n  box-sizing: border-box;\n}\n\n.hh-artisan-bag {\n\n  --hh-gold: #b88952;\n  --hh-gold-light: #e0bb82;\n  --hh-cream: #f7f1e7;\n  --hh-muted: #a99b8e;\n  --hh-dark: #100c09;\n  --hh-card: rgba(255,255,255,.035);\n\n  position: relative;\n  width: 100%;\n  overflow: hidden;\n\n  padding: 70px 20px;\n\n  color: var(--hh-cream);\n\n  background:\n    radial-gradient(\n      circle at 15% 20%,\n      rgba(184,137,82,.10),\n      transparent 28%\n    ),\n    radial-gradient(\n      circle at 85% 80%,\n      rgba(130,85,50,.08),\n      transparent 28%\n    ),\n    linear-gradient(\n      135deg,\n      #100c09,\n      #1d1510,\n      #0c0907\n    );\n\n  font-family: Georgia, \"Times New Roman\", serif;\n}\n\n.hh-artisan-bag::after {\n  content: \"\";\n  position: absolute;\n  inset: 18px;\n\n  border: 1px solid rgba(255,255,255,.035);\n\n  pointer-events: none;\n}\n\n.hh-artisan-wrap {\n  width: min(1100px, 100%);\n  margin: 0 auto;\n  position: relative;\n  z-index: 1;\n}\n\n\n\/* =========================================================\n   HERO\n   ========================================================= *\/\n\n.hh-artisan-hero {\n  max-width: 850px;\n  margin: 0 auto;\n  text-align: center;\n}\n\n.hh-artisan-label {\n  display: inline-flex;\n  align-items: center;\n  gap: 8px;\n\n  padding: 8px 15px;\n\n  border: 1px solid rgba(224,187,130,.30);\n  border-radius: 999px;\n\n  color: var(--hh-gold-light);\n\n  font-family: Arial, sans-serif;\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 2.2px;\n  text-transform: uppercase;\n}\n\n.hh-artisan-label-dot {\n  width: 6px;\n  height: 6px;\n\n  flex: 0 0 6px;\n\n  border-radius: 50%;\n  background: var(--hh-gold-light);\n}\n\n.hh-artisan-title {\n  margin: 24px 0 18px;\n\n  font-size: clamp(40px, 6vw, 70px);\n  line-height: 1;\n  letter-spacing: -2px;\n  font-weight: 500;\n}\n\n.hh-artisan-title span {\n  color: var(--hh-gold-light);\n}\n\n.hh-artisan-subtitle {\n  max-width: 650px;\n  margin: 0 auto;\n\n  color: var(--hh-muted);\n\n  font-family: Arial, sans-serif;\n  font-size: 15px;\n  line-height: 1.8;\n}\n\n\n\/* =========================================================\n   ORNAMENT\n   ========================================================= *\/\n\n.hh-artisan-ornament {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 14px;\n\n  margin: 28px 0 55px;\n\n  color: var(--hh-gold-light);\n}\n\n.hh-artisan-line {\n  width: 65px;\n  height: 1px;\n\n  background: linear-gradient(\n    90deg,\n    transparent,\n    var(--hh-gold)\n  );\n}\n\n.hh-artisan-line:last-child {\n  background: linear-gradient(\n    90deg,\n    var(--hh-gold),\n    transparent\n  );\n}\n\n.hh-artisan-diamond {\n  font-size: 13px;\n}\n\n\n\/* =========================================================\n   SHOWCASE\n   ========================================================= *\/\n\n.hh-artisan-showcase {\n  display: grid;\n\n  grid-template-columns:\n    minmax(0, 1fr)\n    minmax(0, 1fr);\n\n  gap: 65px;\n\n  align-items: center;\n}\n\n\n\/* =========================================================\n   PRODUCT VISUAL\n   ========================================================= *\/\n\n.hh-artisan-display {\n  min-height: 470px;\n\n  position: relative;\n\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.hh-artisan-glow {\n  position: absolute;\n\n  width: 260px;\n  height: 260px;\n\n  border-radius: 50%;\n\n  background: rgba(184,137,82,.10);\n\n  filter: blur(55px);\n\n  pointer-events: none;\n}\n\n\n\/* =========================================================\n   BAG MOCKUP\n   ========================================================= *\/\n\n.hh-artisan-mockup {\n\n  position: relative;\n\n  width: 250px;\n  height: 300px;\n\n  border-radius:\n    20px\n    20px\n    34px\n    34px;\n\n  background:\n    repeating-linear-gradient(\n      45deg,\n      #4a3021 0,\n      #4a3021 7px,\n      #593b29 7px,\n      #593b29 14px\n    );\n\n  border: 1px solid rgba(224,187,130,.40);\n\n  box-shadow:\n    0 30px 55px rgba(0,0,0,.45),\n    inset 0 2px rgba(255,255,255,.07);\n\n  transform: rotate(-1deg);\n\n  transition:\n    transform .35s ease,\n    box-shadow .35s ease;\n}\n\n.hh-artisan-mockup:hover {\n  transform:\n    translateY(-6px)\n    rotate(1deg);\n\n  box-shadow:\n    0 40px 70px rgba(0,0,0,.50),\n    0 0 30px rgba(184,137,82,.10);\n}\n\n\n\/* STRAPS *\/\n\n.hh-artisan-mockup::before,\n.hh-artisan-mockup::after {\n\n  content: \"\";\n\n  position: absolute;\n\n  width: 66px;\n  height: 90px;\n\n  border:\n    8px solid #251912;\n\n  border-bottom: 0;\n\n  border-radius:\n    50px\n    50px\n    0\n    0;\n\n  top: -62px;\n}\n\n.hh-artisan-mockup::before {\n  left: 34px;\n}\n\n.hh-artisan-mockup::after {\n  right: 34px;\n}\n\n\n\/* =========================================================\n   LEATHER FLAP\n   ========================================================= *\/\n\n.hh-artisan-flap {\n\n  position: absolute;\n\n  top: 58px;\n  left: 17px;\n  right: 17px;\n\n  height: 103px;\n\n  border-radius:\n    10px\n    10px\n    25px\n    25px;\n\n  background:\n    radial-gradient(\n      circle at 30% 30%,\n      #b57a45,\n      #704322 50%,\n      #3d2415\n    );\n\n  border: 1px solid rgba(224,187,130,.45);\n\n  box-shadow:\n    inset 0 2px rgba(255,255,255,.12),\n    0 8px 18px rgba(0,0,0,.28);\n\n  overflow: hidden;\n}\n\n.hh-artisan-flap::after {\n\n  content: \"✦\";\n\n  position: absolute;\n  inset: 0;\n\n  display: flex;\n  align-items: center;\n  justify-content: center;\n\n  color: rgba(255,221,164,.65);\n\n  font-size: 45px;\n\n  text-shadow:\n    0 0 18px rgba(255,210,140,.25);\n}\n\n\n\/* =========================================================\n   WOODEN BASE\n   ========================================================= *\/\n\n.hh-artisan-wood {\n\n  position: absolute;\n\n  left: -9px;\n  right: -9px;\n  bottom: -11px;\n\n  height: 34px;\n\n  border-radius: 8px;\n\n  background:\n    repeating-linear-gradient(\n      90deg,\n      #6e4428 0,\n      #6e4428 10px,\n      #815333 10px,\n      #815333 20px\n    );\n\n  border: 1px solid #9b7048;\n\n  box-shadow:\n    0 12px 18px rgba(0,0,0,.30);\n}\n\n\n\/* =========================================================\n   FLOATING BADGES\n   ========================================================= *\/\n\n.hh-artisan-badge {\n\n  position: absolute;\n\n  padding: 11px 14px;\n\n  border:\n    1px solid rgba(224,187,130,.18);\n\n  border-radius: 13px;\n\n  background: rgba(20,14,10,.82);\n\n  font-family: Arial, sans-serif;\n\n  font-size: 10px;\n\n  color: #d9cabc;\n\n  box-shadow:\n    0 10px 25px rgba(0,0,0,.25);\n}\n\n.hh-artisan-badge strong {\n\n  display: block;\n\n  margin-bottom: 3px;\n\n  color: var(--hh-gold-light);\n\n  font-size: 12px;\n}\n\n.hh-artisan-badge-left {\n  left: 0;\n  top: 90px;\n}\n\n.hh-artisan-badge-right {\n  right: 0;\n  bottom: 90px;\n}\n\n\n\/* =========================================================\n   CONTENT\n   ========================================================= *\/\n\n.hh-artisan-content {\n  font-family: Arial, sans-serif;\n}\n\n.hh-artisan-eyebrow {\n\n  margin-bottom: 13px;\n\n  color: var(--hh-gold-light);\n\n  font-size: 10px;\n  font-weight: 700;\n  letter-spacing: 2.5px;\n  text-transform: uppercase;\n}\n\n.hh-artisan-heading {\n\n  margin: 0 0 18px;\n\n  font-family: Georgia, serif;\n\n  font-size: clamp(30px, 4vw, 46px);\n\n  line-height: 1.08;\n\n  font-weight: 500;\n}\n\n.hh-artisan-heading span {\n  color: var(--hh-gold-light);\n}\n\n.hh-artisan-description {\n\n  margin: 0 0 25px;\n\n  color: #a99b8e;\n\n  font-size: 14px;\n\n  line-height: 1.8;\n}\n\n\n\/* =========================================================\n   FEATURES\n   ========================================================= *\/\n\n.hh-artisan-features {\n\n  display: grid;\n\n  grid-template-columns:\n    repeat(2, minmax(0, 1fr));\n\n  gap: 10px;\n}\n\n.hh-artisan-feature {\n\n  padding: 16px;\n\n  border:\n    1px solid rgba(255,255,255,.07);\n\n  border-radius: 14px;\n\n  background: var(--hh-card);\n\n  transition:\n    transform .25s ease,\n    border-color .25s ease,\n    background .25s ease;\n}\n\n.hh-artisan-feature:hover {\n\n  transform: translateY(-3px);\n\n  border-color:\n    rgba(224,187,130,.30);\n\n  background:\n    rgba(184,137,82,.055);\n}\n\n.hh-artisan-icon {\n\n  margin-bottom: 7px;\n\n  font-size: 19px;\n}\n\n.hh-artisan-feature strong {\n\n  display: block;\n\n  margin-bottom: 4px;\n\n  color: #fff;\n\n  font-size: 12px;\n}\n\n.hh-artisan-feature small {\n\n  color: #83776c;\n\n  font-size: 10px;\n\n  line-height: 1.5;\n}\n\n\n\/* =========================================================\n   CTA\n   ========================================================= *\/\n\n.hh-artisan-cta {\n\n  margin-top: 65px;\n\n  padding: 45px 25px;\n\n  border:\n    1px solid rgba(224,187,130,.13);\n\n  border-radius: 22px;\n\n  background:\n    rgba(255,255,255,.025);\n\n  text-align: center;\n}\n\n.hh-artisan-cta h2 {\n\n  margin: 0 0 9px;\n\n  font-family: Georgia, serif;\n\n  font-size: clamp(27px, 4vw, 40px);\n\n  font-weight: 500;\n}\n\n.hh-artisan-cta p {\n\n  margin: 0 0 23px;\n\n  color: #8e8277;\n\n  font-family: Arial, sans-serif;\n\n  font-size: 13px;\n}\n\n.hh-artisan-button {\n\n  display: inline-flex;\n\n  align-items: center;\n  justify-content: center;\n\n  min-height: 50px;\n\n  padding: 14px 28px;\n\n  border-radius: 999px;\n\n  background:\n    linear-gradient(\n      110deg,\n      #e2bb82,\n      #a9703e\n    );\n\n  color: #17100b;\n\n  text-decoration: none;\n\n  font-family: Arial, sans-serif;\n\n  font-size: 12px;\n\n  font-weight: 800;\n\n  letter-spacing: .5px;\n\n  box-shadow:\n    0 10px 30px rgba(184,137,82,.22);\n\n  transition:\n    transform .25s ease,\n    box-shadow .25s ease;\n}\n\n.hh-artisan-button:hover {\n\n  transform: translateY(-3px);\n\n  box-shadow:\n    0 16px 38px rgba(184,137,82,.34);\n}\n\n.hh-artisan-button:focus-visible {\n\n  outline:\n    3px solid rgba(224,187,130,.45);\n\n  outline-offset: 4px;\n}\n\n\n\/* =========================================================\n   TABLET\n   ========================================================= *\/\n\n@media (max-width: 850px) {\n\n  .hh-artisan-showcase {\n\n    grid-template-columns: 1fr;\n\n    gap: 25px;\n  }\n\n  .hh-artisan-display {\n    min-height: 430px;\n  }\n\n}\n\n\n\/* =========================================================\n   MOBILE\n   ========================================================= *\/\n\n@media (max-width: 600px) {\n\n  .hh-artisan-bag {\n\n    padding:\n      50px\n      15px;\n  }\n\n  .hh-artisan-title {\n\n    font-size: 42px;\n\n    letter-spacing: -1.5px;\n  }\n\n  .hh-artisan-subtitle {\n\n    font-size: 13px;\n  }\n\n  .hh-artisan-display {\n\n    min-height: 390px;\n  }\n\n  .hh-artisan-mockup {\n\n    width: 205px;\n    height: 255px;\n  }\n\n  .hh-artisan-badge {\n\n    padding: 9px 10px;\n\n    font-size: 9px;\n  }\n\n  .hh-artisan-badge strong {\n    font-size: 11px;\n  }\n\n  .hh-artisan-badge-left {\n    left: -3px;\n    top: 65px;\n  }\n\n  .hh-artisan-badge-right {\n    right: -3px;\n    bottom: 65px;\n  }\n\n  .hh-artisan-features {\n    grid-template-columns: 1fr;\n  }\n\n  .hh-artisan-cta {\n\n    margin-top: 45px;\n\n    padding:\n      35px\n      18px;\n  }\n\n  .hh-artisan-button {\n\n    width: 100%;\n\n    max-width: 330px;\n  }\n\n}\n\n\n\/* =========================================================\n   REDUCED MOTION\n   ========================================================= *\/\n\n@media (prefers-reduced-motion: reduce) {\n\n  .hh-artisan-bag *,\n  .hh-artisan-bag *::before,\n  .hh-artisan-bag *::after {\n\n    animation: none !important;\n\n    transition: none !important;\n  }\n\n}\n\u003c\/style\u003e\n\u003csection class=\"hh-artisan-bag\"\u003e\n\u003cdiv class=\"hh-artisan-wrap\"\u003e\n\u003c!-- HERO --\u003e\u003cheader class=\"hh-artisan-hero\"\u003e\n\u003cdiv class=\"hh-artisan-label\"\u003e\n\u003cspan class=\"hh-artisan-label-dot\"\u003e\u003c\/span\u003e HANDCRAFTED • ONE OF A KIND\u003c\/div\u003e\n\u003ch1 id=\"hh-artisan-title\" class=\"hh-artisan-title\"\u003e\n\u003cspan\u003eA Wearable\u003c\/span\u003e\u003cbr\u003eWork Of Art.\u003c\/h1\u003e\n\u003cp class=\"hh-artisan-subtitle\"\u003eHandcrafted with T-shirt yarn, hand-painted leather, and a solid wooden base where artistry meets function.\u003c\/p\u003e\n\u003cdiv class=\"hh-artisan-ornament\"\u003e\n\u003cspan class=\"hh-artisan-line\"\u003e\u003c\/span\u003e \u003cspan class=\"hh-artisan-diamond\"\u003e✦\u003c\/span\u003e \u003cspan class=\"hh-artisan-line\"\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\u003c!-- PRODUCT SHOWCASE --\u003e\n\u003cdiv class=\"hh-artisan-showcase\"\u003e\n\u003c!-- PRODUCT VISUAL --\u003e\n\u003cdiv class=\"hh-artisan-display\"\u003e\n\u003cdiv class=\"hh-artisan-glow\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"hh-artisan-badge hh-artisan-badge-left\"\u003e\n\u003cstrong\u003e100% Handmade\u003c\/strong\u003e Crafted with care\u003c\/div\u003e\n\u003cdiv class=\"hh-artisan-badge hh-artisan-badge-right\"\u003e\n\u003cstrong\u003eOne Of a Kind\u003c\/strong\u003e No two are alike\u003c\/div\u003e\n\u003cdiv class=\"hh-artisan-mockup\" role=\"img\"\u003e\n\u003cdiv class=\"hh-artisan-flap\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"hh-artisan-wood\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- PRODUCT INFORMATION --\u003e\n\u003cdiv class=\"hh-artisan-content\"\u003e\n\u003cdiv class=\"hh-artisan-eyebrow\"\u003eCrafted With Intention\u003c\/div\u003e\n\u003ch2 class=\"hh-artisan-heading\"\u003eMade by hand.\u003cbr\u003e\u003cspan\u003eMade to stand out.\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003cp class=\"hh-artisan-description\"\u003eEvery bag is individually crafted, making each piece unique. Soft textured crochet meets hand-painted leather and a sturdy wooden base.\u003c\/p\u003e\n\u003cdiv class=\"hh-artisan-features\"\u003e\n\u003carticle class=\"hh-artisan-feature\"\u003e\n\u003cdiv class=\"hh-artisan-icon\"\u003e🧶\u003c\/div\u003e\n\u003cstrong\u003e T-Shirt Yarn \u003c\/strong\u003e \u003csmall\u003e Soft, chunky \u0026amp; durable texture. \u003c\/small\u003e\u003c\/article\u003e\n\u003carticle class=\"hh-artisan-feature\"\u003e\n\u003cdiv class=\"hh-artisan-icon\"\u003e🎨\u003c\/div\u003e\n\u003cstrong\u003e Hand-Painted Leather \u003c\/strong\u003e \u003csmall\u003e Unique artwork on every piece. \u003c\/small\u003e\u003c\/article\u003e\n\u003carticle class=\"hh-artisan-feature\"\u003e\n\u003cdiv class=\"hh-artisan-icon\"\u003e🪵\u003c\/div\u003e\n\u003cstrong\u003e Wooden Base \u003c\/strong\u003e \u003csmall\u003e Structure, stability \u0026amp; style. \u003c\/small\u003e\u003c\/article\u003e\n\u003carticle class=\"hh-artisan-feature\"\u003e\n\u003cdiv class=\"hh-artisan-icon\"\u003e♡\u003c\/div\u003e\n\u003cstrong\u003e Made With Love \u003c\/strong\u003e \u003csmall\u003e Carefully crafted by hand. \u003c\/small\u003e\u003c\/article\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- CTA --\u003e\n\u003csection class=\"hh-artisan-cta\"\u003e\n\u003ch2 id=\"hh-artisan-cta-title\"\u003eCarry Something Truly Unique.\u003c\/h2\u003e\n\u003cp\u003eHandmade • Artistic • Functional • One Of A Kind\u003c\/p\u003e\n\u003c!-- Replace #PRODUCT-LINK with your actual Shopify product URL --\u003e \u003ca href=\"#PRODUCT-LINK\" class=\"hh-artisan-button\"\u003e DISCOVER YOUR BAG → \u003c\/a\u003e\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e","brand":"HIS\u0026her haven","offers":[{"title":"Brown","offer_id":54615354966291,"sku":null,"price":349.99,"currency_code":"ZAR","in_stock":true},{"title":"Olive green","offer_id":54615354999059,"sku":null,"price":349.99,"currency_code":"ZAR","in_stock":true},{"title":"Red","offer_id":54615355031827,"sku":null,"price":349.99,"currency_code":"ZAR","in_stock":true},{"title":"Green","offer_id":54615355064595,"sku":null,"price":349.99,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1001\/4959\/2339\/files\/premium-olive-crochet-bag-product-focus.png?v=1786563442"}],"url":"https:\/\/hisherhaven.co.za\/collections\/woman.oembed","provider":"HIS\u0026her haven","version":"1.0","type":"link"}