{"product_id":"cart-society™-personalized-compact-mirror","title":"Cart Society™ Personalized Compact Mirror","description":"\u003cstyle\u003e\n  .cs-mirror {\n    --cs-bg: #f7f5f1;\n    --cs-card: #ffffff;\n    --cs-text: #1c1a18;\n    --cs-muted: #706b64;\n    --cs-gold: #b8925c;\n    --cs-line: rgba(28, 26, 24, 0.10);\n\n    font-family: -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", Arial, sans-serif;\n    background: var(--cs-bg);\n    padding: 80px 22px;\n    overflow: hidden;\n  }\n\n  .cs-mirror * {\n    box-sizing: border-box;\n  }\n\n  .cs-wrap {\n    max-width: 820px;\n    margin: 0 auto;\n    text-align: center;\n  }\n\n  \/* Eyebrow *\/\n  .cs-eyebrow {\n    display: inline-flex;\n    align-items: center;\n    gap: 9px;\n    color: var(--cs-gold);\n    font-size: 11px;\n    font-weight: 600;\n    letter-spacing: 2.4px;\n    text-transform: uppercase;\n    margin-bottom: 20px;\n    opacity: 0;\n    animation: csFadeUp 0.8s ease forwards;\n  }\n\n  .cs-eyebrow::before,\n  .cs-eyebrow::after {\n    content: \"\";\n    width: 22px;\n    height: 1px;\n    background: var(--cs-gold);\n  }\n\n  \/* Title *\/\n  .cs-title {\n    margin: 0;\n    color: var(--cs-text);\n    font-size: clamp(34px, 6vw, 64px);\n    line-height: 1.05;\n    font-weight: 500;\n    letter-spacing: -2px;\n    opacity: 0;\n    animation: csFadeUp 0.9s ease 0.12s forwards;\n  }\n\n  .cs-title span {\n    color: var(--cs-gold);\n    font-style: italic;\n  }\n\n  \/* Tagline *\/\n  .cs-tagline {\n    margin: 22px auto 0;\n    max-width: 620px;\n    color: var(--cs-muted);\n    font-size: 17px;\n    line-height: 1.7;\n    opacity: 0;\n    animation: csFadeUp 0.9s ease 0.24s forwards;\n  }\n\n  .cs-tagline strong {\n    color: var(--cs-text);\n    font-weight: 600;\n  }\n\n  \/* Divider *\/\n  .cs-divider {\n    width: 54px;\n    height: 1px;\n    background: linear-gradient(\n      90deg,\n      transparent,\n      var(--cs-gold),\n      transparent\n    );\n    margin: 38px auto;\n    opacity: 0;\n    animation: csFadeUp 0.8s ease 0.34s forwards;\n  }\n\n  \/* Features *\/\n  .cs-features {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n    text-align: left;\n    opacity: 0;\n    animation: csFadeUp 0.9s ease 0.42s forwards;\n  }\n\n  .cs-feature {\n    position: relative;\n    background: var(--cs-card);\n    border: 1px solid var(--cs-line);\n    border-radius: 16px;\n    padding: 19px 20px;\n    display: flex;\n    align-items: center;\n    gap: 14px;\n    overflow: hidden;\n    transition:\n      transform 0.35s ease,\n      box-shadow 0.35s ease,\n      border-color 0.35s ease;\n  }\n\n  .cs-feature::after {\n    content: \"\";\n    position: absolute;\n    top: 0;\n    left: -120%;\n    width: 60%;\n    height: 100%;\n    background: linear-gradient(\n      90deg,\n      transparent,\n      rgba(255,255,255,0.85),\n      transparent\n    );\n    transform: skewX(-20deg);\n    transition: left 0.8s ease;\n  }\n\n  .cs-feature:hover {\n    transform: translateY(-4px);\n    border-color: rgba(184, 146, 92, 0.45);\n    box-shadow: 0 16px 35px rgba(30, 25, 20, 0.08);\n  }\n\n  .cs-feature:hover::after {\n    left: 150%;\n  }\n\n  .cs-icon {\n    width: 34px;\n    height: 34px;\n    flex: 0 0 34px;\n    border-radius: 50%;\n    display: grid;\n    place-items: center;\n    background: #fbf7f0;\n    color: var(--cs-gold);\n    font-size: 16px;\n  }\n\n  .cs-feature-text {\n    color: var(--cs-text);\n    font-size: 14px;\n    line-height: 1.4;\n    font-weight: 500;\n  }\n\n  \/* Gift \/ keepsake section *\/\n  .cs-gift {\n    position: relative;\n    margin-top: 18px;\n    padding: 32px 28px;\n    border-radius: 18px;\n    background:\n      radial-gradient(\n        circle at top right,\n        rgba(184, 146, 92, 0.12),\n        transparent 35%\n      ),\n      var(--cs-card);\n    border: 1px solid var(--cs-line);\n    overflow: hidden;\n    opacity: 0;\n    animation: csFadeUp 0.9s ease 0.55s forwards;\n  }\n\n  .cs-gift::before {\n    content: \"\";\n    position: absolute;\n    inset: 0;\n    background: linear-gradient(\n      115deg,\n      transparent 35%,\n      rgba(184, 146, 92, 0.08) 50%,\n      transparent 65%\n    );\n    background-size: 220% 100%;\n    animation: csShimmer 6s ease-in-out infinite;\n    pointer-events: none;\n  }\n\n  .cs-gift-icon {\n    position: relative;\n    font-size: 25px;\n    margin-bottom: 10px;\n  }\n\n  .cs-gift p {\n    position: relative;\n    margin: 0;\n    color: var(--cs-muted);\n    font-size: 16px;\n    line-height: 1.65;\n  }\n\n  .cs-gift strong {\n    color: var(--cs-text);\n    font-weight: 600;\n  }\n\n  \/* Brand line *\/\n  .cs-signature {\n    margin-top: 34px;\n    color: var(--cs-text);\n    font-size: 15px;\n    letter-spacing: 0.2px;\n    opacity: 0;\n    animation: csFadeUp 0.9s ease 0.68s forwards;\n  }\n\n  .cs-signature span {\n    color: var(--cs-gold);\n    font-weight: 600;\n  }\n\n  \/* Animations *\/\n  @keyframes csFadeUp {\n    from {\n      opacity: 0;\n      transform: translateY(22px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  @keyframes csShimmer {\n    0% {\n      background-position: 120% 0;\n    }\n    100% {\n      background-position: -120% 0;\n    }\n  }\n\n  \/* Mobile *\/\n  @media (max-width: 640px) {\n    .cs-mirror {\n      padding: 60px 16px;\n    }\n\n    .cs-title {\n      font-size: 38px;\n      letter-spacing: -1.4px;\n    }\n\n    .cs-tagline {\n      font-size: 15px;\n      line-height: 1.65;\n    }\n\n    .cs-features {\n      grid-template-columns: 1fr;\n    }\n\n    .cs-feature {\n      padding: 17px 16px;\n    }\n\n    .cs-gift {\n      padding: 28px 20px;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce) {\n    .cs-mirror *,\n    .cs-mirror *::before,\n    .cs-mirror *::after {\n      animation: none !important;\n      transition: none !important;\n    }\n\n    .cs-eyebrow,\n    .cs-title,\n    .cs-tagline,\n    .cs-divider,\n    .cs-features,\n    .cs-gift,\n    .cs-signature {\n      opacity: 1;\n    }\n  }\n\u003c\/style\u003e\n\n\u003csection class=\"cs-mirror\"\u003e\n  \u003cdiv class=\"cs-wrap\"\u003e\n\n    \u003cdiv class=\"cs-eyebrow\"\u003eCart Society™\u003c\/div\u003e\n\n    \u003ch2 class=\"cs-title\"\u003e\n      Personalized\u003cbr\u003e\n      \u003cspan\u003eCompact Mirror\u003c\/span\u003e\n    \u003c\/h2\u003e\n\n    \u003cp class=\"cs-tagline\"\u003e\n      \u003cstrong\u003eYour name. Your style. Your personal essential.\u003c\/strong\u003e\n      \u003cbr\u003e\n      A sleek personalised compact mirror designed to make every moment feel special.\n    \u003c\/p\u003e\n\n    \u003cdiv class=\"cs-divider\"\u003e\u003c\/div\u003e\n\n    \u003cdiv class=\"cs-features\"\u003e\n\n      \u003cdiv class=\"cs-feature\"\u003e\n        \u003cdiv class=\"cs-icon\"\u003e✦\u003c\/div\u003e\n        \u003cdiv class=\"cs-feature-text\"\u003e\n          Personalised with your chosen name\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"cs-feature\"\u003e\n        \u003cdiv class=\"cs-icon\"\u003e✧\u003c\/div\u003e\n        \u003cdiv class=\"cs-feature-text\"\u003e\n          Elegant metallic finish\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"cs-feature\"\u003e\n        \u003cdiv class=\"cs-icon\"\u003e◌\u003c\/div\u003e\n        \u003cdiv class=\"cs-feature-text\"\u003e\n          Dual mirrors for everyday convenience\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"cs-feature\"\u003e\n        \u003cdiv class=\"cs-icon\"\u003e✦\u003c\/div\u003e\n        \u003cdiv class=\"cs-feature-text\"\u003e\n          Compact and travel-friendly\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"cs-gift\"\u003e\n      \u003cdiv class=\"cs-gift-icon\"\u003e♡\u003c\/div\u003e\n\n      \u003cp\u003e\n        A \u003cstrong\u003ebeautiful personalised gift for someone special\u003c\/strong\u003e\n        or a lovely keepsake to treasure for yourself.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"cs-signature\"\u003e\n      Made personal — only from \u003cspan\u003eCart Society™\u003c\/span\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/section\u003e","brand":"Cart Society","offers":[{"title":"Gold","offer_id":67622755533110,"sku":null,"price":299.0,"currency_code":"ZAR","in_stock":true},{"title":"Silver","offer_id":67622755565878,"sku":null,"price":299.0,"currency_code":"ZAR","in_stock":true},{"title":"Rose gold","offer_id":67622755598646,"sku":null,"price":299.0,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0995\/1710\/4438\/files\/ChatGPT_Image_Aug_23_2026_11_44_32_PM.png?v=1787521545","url":"https:\/\/cartsociety.co.za\/products\/cart-society%e2%84%a2-personalized-compact-mirror","provider":"Cart Society","version":"1.0","type":"link"}