{"product_id":"set-of-50-mini-christmas-crochet","title":"50 Mini Christmas Crochet Ornaments - Amigurumi Patterns","description":"\u003cdiv class=\"cs-product-wrapper cs-christmas\" id=\"csTop\"\u003e\n\u003c!-- ❄️ page-wide animated Christmas layer --\u003e\n\u003cdiv class=\"cs-page-fx\"\u003e\n\u003cspan class=\"cs-snow cs-snow--1\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--2\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--3\"\u003e❅\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--4\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--5\"\u003e❆\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--6\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--7\"\u003e❅\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--8\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--9\"\u003e❆\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--10\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--11\"\u003e❅\u003c\/span\u003e \u003cspan class=\"cs-snow cs-snow--12\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-pfx-drift cs-pfx-drift--1\"\u003e🎅\u003c\/span\u003e \u003cspan class=\"cs-pfx-drift cs-pfx-drift--2\"\u003e⛄\u003c\/span\u003e \u003cspan class=\"cs-pfx-drift cs-pfx-drift--3\"\u003e🎁\u003c\/span\u003e \u003cspan class=\"cs-pfx-drift cs-pfx-drift--4\"\u003e🦌\u003c\/span\u003e\n\u003cdiv class=\"cs-hang cs-hang--1\"\u003e\n\u003cspan class=\"cs-hang-thread\"\u003e\u003c\/span\u003e\u003cspan class=\"cs-hang-orn\"\u003e🔔\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hang cs-hang--2\"\u003e\n\u003cspan class=\"cs-hang-thread\"\u003e\u003c\/span\u003e\u003cspan class=\"cs-hang-orn\"\u003e⭐\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hang cs-hang--3\"\u003e\n\u003cspan class=\"cs-hang-thread\"\u003e\u003c\/span\u003e\u003cspan class=\"cs-hang-orn\"\u003e🎄\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hang cs-hang--4\"\u003e\n\u003cspan class=\"cs-hang-thread\"\u003e\u003c\/span\u003e\u003cspan class=\"cs-hang-orn\"\u003e🔔\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hang cs-hang--5\"\u003e\n\u003cspan class=\"cs-hang-thread\"\u003e\u003c\/span\u003e\u003cspan class=\"cs-hang-orn\"\u003e⭐\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hang cs-hang--6\"\u003e\n\u003cspan class=\"cs-hang-thread\"\u003e\u003c\/span\u003e\u003cspan class=\"cs-hang-orn\"\u003e🎁\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- 🎯 HERO --\u003e\n\u003cdiv class=\"cs-hero-section\"\u003e\n\u003cdiv class=\"cs-spooky-layer\"\u003e\n\u003cspan class=\"cs-corner-flake cs-corner-flake--l\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-corner-flake cs-corner-flake--r\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-drift cs-drift--1\"\u003e🎅\u003c\/span\u003e \u003cspan class=\"cs-drift cs-drift--2\"\u003e⛄\u003c\/span\u003e \u003cspan class=\"cs-drift cs-drift--3\"\u003e🍬\u003c\/span\u003e \u003cspan class=\"cs-fog cs-fog--1\"\u003e\u003c\/span\u003e \u003cspan class=\"cs-fog cs-fog--2\"\u003e\u003c\/span\u003e \u003cspan class=\"cs-tree\"\u003e🎄\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hero-content\"\u003e\n\u003cspan class=\"cs-hero-badge\"\u003e✨ Instant Digital Download\u003c\/span\u003e\n\u003ch1 class=\"cs-hero-title\"\u003e50 Mini Christmas Ornament Patterns 🎄\u003c\/h1\u003e\n\u003cp class=\"cs-hero-subtitle\"\u003eCreate a festive collection of adorable mini Christmas ornaments with this set of 50 crochet patterns — 18 festive companions, 16 tree decorations, and 16 winter friends. Inside you'll find Santa Claus, reindeer, snowmen, gingerbread men, elves, penguins, polar bears, Christmas trees, wreaths, bells, holly, poinsettias, candy canes, bows, stockings, gingerbread houses, snowflakes, winter accessories, gifts, angels, nutcrackers, gnomes, and much more — written in American crochet terminology with clear step-by-step instructions, in 7 languages. Please note: this listing is for a digital crochet pattern in PDF format only — no physical or finished crocheted items will be shipped.\u003c\/p\u003e\n\u003cdiv class=\"cs-hero-features\"\u003e\n\u003cdiv class=\"cs-hero-feature\"\u003e\n\u003cspan class=\"cs-hero-feature-icon\"\u003e🎅\u003c\/span\u003e \u003cspan\u003e50 designs: companions, tree decor \u0026amp; winter friends\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hero-feature\"\u003e\n\u003cspan class=\"cs-hero-feature-icon\"\u003e🌍\u003c\/span\u003e \u003cspan\u003e7 languages incl. English, Spanish \u0026amp; German\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hero-feature\"\u003e\n\u003cspan class=\"cs-hero-feature-icon\"\u003e🌱\u003c\/span\u003e \u003cspan\u003eBeginner to intermediate, per pattern\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hero-feature\"\u003e\n\u003cspan class=\"cs-hero-feature-icon\"\u003e🧶\u003c\/span\u003e \u003cspan\u003eAmigurumi minis · US crochet terms\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-hero-image\"\u003e\n\u003cimg loading=\"eager\" class=\"cs-hero-img\" alt=\"Set of 50 Mini Christmas Ornament Crochet Patterns - Amigurumi PDF\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImage30sept.2026_23_00_03_430x.webp?v=1790809312\"\u003e\n\u003cdiv class=\"cs-hero-image-badge\"\u003e\n\u003cspan class=\"cs-badge-icon\"\u003e🎅\u003c\/span\u003e\n\u003cdiv class=\"cs-badge-text\"\u003e\n\u003cstrong\u003e50 Mini Patterns\u003c\/strong\u003e \u003cspan\u003eHoliday amigurumi collection\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- ⭐ PHOTO REVIEWS --\u003e\n\u003cdiv class=\"cs-photo-reviews-section\"\u003e\n\u003cdiv class=\"cs-photo-reviews-header\"\u003e\n\u003cdiv class=\"cs-pr-rating\"\u003e\n\u003cdiv class=\"cs-pr-stars\"\u003e★★★★★\u003c\/div\u003e\n\u003cdiv class=\"cs-pr-rating-text\"\u003e\n\u003cstrong\u003e4.9\u003c\/strong\u003e · \u003cspan\u003eReal reviews from real makers\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-pr-title\"\u003e🎄 Loved by Festive Makers\u003c\/div\u003e\n\u003cdiv class=\"cs-pr-subtitle\"\u003eReal mini ornaments made by real customers, filling trees and stockings every December\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"csPhotoReviewSlider\" class=\"cs-photo-reviews-slider\"\u003e\n\u003cdiv class=\"cs-photo-reviews-track\"\u003e\n\u003c!-- Review 1 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Ansfleda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/Sunlit_Balcony_Crochet_Christmas_Crafts-2_430x.webp?v=1790809919\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eBest Christmas pattern set I have ever bought fifty detailed PDFs and every mini comes out like the photos\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eAnsfleda V\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 2 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Bernefrida\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/Grandmother_s_Crochet_Christmas_Workshop-1_430x.webp?v=1790809919\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eThe step by step instructions are so clear my Santa reindeer and gingerbread man all worked up in single evenings\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eBernefrida K\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 3 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Clarembalda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/Crafting_Christmas_Ornaments_in_a_Cosy_Kitchen-5_430x.webp?v=1790809918\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eSuch an easy detailed set the snowmen penguins and polar bears are my tree's winter corner now\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eClarembalda R\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 4 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Diethilda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/Cozy_Crocheted_Christmas_Craft_Table-3_430x.webp?v=1790809919\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eHaving the patterns in German as well as English is wonderful I crochet with my mother from the same set\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eDiethilda M\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 5 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Frumhilda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_43_AM-2_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eThe elves and angels came out so sweet this detailed PDF collection is worth every penny\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eFrumhilda T\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 6 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Gerswinda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_46_AM-3_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eMy aunt crochets from the Spanish version while I use the English one and our minis match perfectly\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eGerswinda S\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 7 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Hadeberga\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_48_AM-4_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eThe candy canes wreaths and bells crocheted up so fast I strung a whole garland in a weekend\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eHadeberga N\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 8 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Ingelberga\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_50_AM-5_430x.webp?v=1791083814\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eDecorated our holiday party table with the minis and guests kept taking them home as favors\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eIngelberga D\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 9 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Jodoca\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_52_AM-6_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eThe gingerbread house pattern is adorable and the clear instructions made it completely simple\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eJodoca F\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 10 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Kreszentia\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_54_AM-7_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eFifty patterns means I never run out of quick festive projects between my bigger makes\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eKreszentia H\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 11 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Liebgarda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_56_AM-8_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eThe nutcracker and gnome minis are my favourites such clear easy instructions in every PDF\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eLiebgarda G\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 12 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Madelgarda\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_14_58_AM-9_430x.webp?v=1791083814\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eMade little gift toppers for every present this year and they outshone the wrapping itself\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eMadelgarda W\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 13 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Norberta\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPT_Image_Oct_4_2026_03_15_00_AM-10_430x.webp?v=1791083813\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eThe tiny snowflakes and stockings look perfect on our tree best mini ornament set I own\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eNorberta P\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- Review 14 --\u003e\n\u003cdiv class=\"cs-photo-review-card\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-pr-image\" alt=\"Mini Christmas ornaments by Ermenberga\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/Cosy_Crochet_Christmas_Crafting-7_430x.webp?v=1790809918\"\u003e\n\u003cdiv class=\"cs-pr-content\"\u003e\n\u003cdiv class=\"cs-pr-stars-small\"\u003e★★★★★\u003c\/div\u003e\n\u003cp class=\"cs-pr-text\"\u003eFilled every stocking with handmade minis this year and I am already crocheting a second batch of gifts\u003c\/p\u003e\n\u003cdiv class=\"cs-pr-author\"\u003e\n\u003cspan class=\"cs-pr-name\"\u003eErmenberga B\u003c\/span\u003e \u003cspan class=\"cs-pr-verified\"\u003e✓ Verified Buyer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"csPhotoReviewDots\" class=\"cs-pr-dots\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- DELIVERY \u0026 INFO BOX --\u003e\n\u003cdiv class=\"cs-info-box\"\u003e\n\u003cdiv class=\"cs-info-item\"\u003e\n\u003csvg height=\"28\" width=\"28\" stroke-width=\"2\" stroke=\"#35553f\" fill=\"none\" viewbox=\"0 0 24 24\" class=\"cs-info-icon\"\u003e\u003cpath d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003cdiv class=\"cs-info-text\"\u003e\n\u003cstrong\u003eInstant Delivery\u003c\/strong\u003e \u003cspan\u003ePDFs arrive in your email within 1 minute\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-info-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"cs-info-item\"\u003e\n\u003csvg height=\"28\" width=\"28\" stroke-width=\"2\" stroke=\"#35553f\" fill=\"none\" viewbox=\"0 0 24 24\" class=\"cs-info-icon\"\u003e\u003cpath d=\"M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003cdiv class=\"cs-info-text\"\u003e\n\u003cstrong\u003eLifetime Access\u003c\/strong\u003e \u003cspan\u003eDownload forever, decorate every December\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-info-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"cs-info-item\"\u003e\n\u003csvg height=\"28\" width=\"28\" stroke-width=\"2\" stroke=\"#35553f\" fill=\"none\" viewbox=\"0 0 24 24\" class=\"cs-info-icon\"\u003e\u003cpath d=\"M20 6L9 17l-5-5\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003cdiv class=\"cs-info-text\"\u003e\n\u003cstrong\u003e7 Languages\u003c\/strong\u003e \u003cspan\u003eEN · ES · FR · DE · IT · NL · PT-BR\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- 🔒 PREVIEW + LOCKED PAGE TEASER --\u003e\n\u003cdiv class=\"cs-preview-section\"\u003e\n\u003ch2 class=\"cs-section-title\"\u003e👀 Peek at the Designs\u003c\/h2\u003e\n\u003cp class=\"cs-preview-subtitle\"\u003eGet a free look — unlock the full step-by-step patterns with the bundle\u003c\/p\u003e\n\u003cdiv class=\"cs-preview-grid cs-preview-grid-small\"\u003e\n\u003ca class=\"cs-preview-page cs-preview-visible\" href=\"#csZoom1\"\u003e\n\u003cdiv class=\"cs-preview-page-inner\"\u003e\u003cimg loading=\"lazy\" class=\"cs-preview-img\" alt=\"50 Mini Christmas Patterns - Free Preview\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImageSep30_2026_10_56_05PM-6_430x.webp?v=1790809312\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"cs-preview-label cs-preview-label-free\"\u003e\n\u003cspan\u003e✓\u003c\/span\u003e Free Preview · Tap to enlarge\u003c\/div\u003e\n\u003c\/a\u003e\u003ca class=\"cs-preview-page cs-preview-locked\" href=\"#csTop\"\u003e\n\u003cdiv class=\"cs-preview-page-inner\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-preview-img cs-preview-img-blurred\" alt=\"50 Mini Christmas Patterns - Locked Preview\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImageSep30_2026_10_56_03PM-5_430x.webp?v=1790809312\"\u003e\n\u003cdiv class=\"cs-preview-overlay\"\u003e\n\u003cdiv class=\"cs-preview-lock-icon\"\u003e🔒\u003c\/div\u003e\n\u003cdiv class=\"cs-preview-lock-title\"\u003eUnlock the full patterns\u003c\/div\u003e\n\u003cdiv class=\"cs-preview-lock-text\"\u003eGet more patterns in our bundle\u003c\/div\u003e\n\u003cdiv class=\"cs-preview-lock-btn\"\u003eView Bundle Deal ↑\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-preview-label cs-preview-label-locked\"\u003e\n\u003cspan\u003e🔒\u003c\/span\u003e Members Only\u003c\/div\u003e\n\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- 🔍 CSS-ONLY ZOOM TARGET --\u003e\n\u003cdiv class=\"cs-zoom\" id=\"csZoom1\"\u003e\n\u003ca class=\"cs-zoom-backdrop\" href=\"#csTop\"\u003e\u003c\/a\u003e \u003ca class=\"cs-zoom-close\" href=\"#csTop\"\u003e×\u003c\/a\u003e \u003cimg class=\"cs-zoom-img\" alt=\"50 Mini Christmas Patterns - Free Preview enlarged\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImageSep30_2026_10_56_05PM-6_430x.webp?v=1790809312\"\u003e\n\u003c\/div\u003e\n\u003c!-- 🎨 LIFESTYLE IMAGE 1 --\u003e\n\u003cdiv class=\"cs-lifestyle-image\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-lifestyle-img\" alt=\"50 Mini Christmas Patterns - Character details\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImageSep30_2026_10_56_03PM-5_430x.webp?v=1790809312\"\u003e\n\u003cdiv class=\"cs-lifestyle-caption\"\u003e\n\u003cspan class=\"cs-lifestyle-icon\"\u003e🎅\u003c\/span\u003e\n\u003cp\u003eSanta, reindeer, snowmen, gingerbread men, elves, penguins, polar bears, trees, wreaths, bells, holly, poinsettias, candy canes, bows, stockings, gingerbread houses, snowflakes, gifts, angels, nutcrackers, gnomes and much more — 50 mini designs in one collection\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- WHAT YOU'LL RECEIVE --\u003e\n\u003cdiv class=\"cs-receive-section\"\u003e\n\u003ch2 class=\"cs-section-title\"\u003e🎁 What You'll Receive\u003c\/h2\u003e\n\u003cdiv class=\"cs-receive-grid\"\u003e\n\u003cdiv class=\"cs-receive-item\"\u003e\n\u003cspan class=\"cs-receive-emoji\"\u003e📖\u003c\/span\u003e\n\u003ch4\u003e50 PDF Patterns\u003c\/h4\u003e\n\u003cp\u003eA complete digital Christmas crochet collection\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-receive-item\"\u003e\n\u003cspan class=\"cs-receive-emoji\"\u003e🎅\u003c\/span\u003e\n\u003ch4\u003e18 Festive Companions\u003c\/h4\u003e\n\u003cp\u003eSanta, elves, gnomes, nutcrackers, angels \u0026amp; friends\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-receive-item\"\u003e\n\u003cspan class=\"cs-receive-emoji\"\u003e🎄\u003c\/span\u003e\n\u003ch4\u003e16 Tree Decorations\u003c\/h4\u003e\n\u003cp\u003eTrees, wreaths, bells, stockings, candy canes \u0026amp; more\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-receive-item\"\u003e\n\u003cspan class=\"cs-receive-emoji\"\u003e⛄\u003c\/span\u003e\n\u003ch4\u003e16 Winter Friends\u003c\/h4\u003e\n\u003cp\u003eSnowmen, penguins, polar bears \u0026amp; winter accessories\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-receive-item\"\u003e\n\u003cspan class=\"cs-receive-emoji\"\u003e🌍\u003c\/span\u003e\n\u003ch4\u003e7 Languages\u003c\/h4\u003e\n\u003cp\u003eEnglish, Spanish, French, German, Italian, Dutch \u0026amp; Brazilian Portuguese\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-receive-item\"\u003e\n\u003cspan class=\"cs-receive-emoji\"\u003e📝\u003c\/span\u003e\n\u003ch4\u003eClear Instructions\u003c\/h4\u003e\n\u003cp\u003eUS terminology, step-by-step \u0026amp; easy to complete\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- PATTERN AT A GLANCE --\u003e\n\u003cdiv class=\"cs-why-section\"\u003e\n\u003ch2 class=\"cs-section-title\"\u003e📋 Pattern at a Glance\u003c\/h2\u003e\n\u003cdiv class=\"cs-why-grid\"\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003e50 designs\u003c\/strong\u003e — 18 festive companions, 16 tree decorations, 16 winter friends\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eProject style\u003c\/strong\u003e — amigurumi, mini ornaments, party decorations \u0026amp; festive projects\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eSkill level\u003c\/strong\u003e — beginner to intermediate, depending on the pattern\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eTerminology\u003c\/strong\u003e — American crochet terms, clear step-by-step\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eLanguages\u003c\/strong\u003e — English, Spanish, French, German, Italian, Dutch \u0026amp; Brazilian Portuguese\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eFormat\u003c\/strong\u003e — digital PDF only; yarn, hooks \u0026amp; stuffing not included; final size may vary with yarn, hook, tension \u0026amp; style\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- 🎨 LIFESTYLE IMAGE 2 --\u003e\n\u003cdiv class=\"cs-lifestyle-image\"\u003e\n\u003cimg loading=\"lazy\" class=\"cs-lifestyle-img\" alt=\"50 Mini Christmas Patterns - Holiday display\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImageSep30_2026_10_55_56PM-2_430x.webp?v=1790809312\"\u003e\n\u003cdiv class=\"cs-lifestyle-caption\"\u003e\n\u003cspan class=\"cs-lifestyle-icon\"\u003e🎄\u003c\/span\u003e\n\u003cp\u003eDecorate the Christmas tree, make handmade holiday decorations, fill Christmas stockings, build festive displays or give small handcrafted gifts — 50 minis to carry you through the whole season\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- PERFECT FOR --\u003e\n\u003cdiv class=\"cs-why-section\"\u003e\n\u003ch2 class=\"cs-section-title\"\u003e🎄 Perfect For\u003c\/h2\u003e\n\u003cdiv class=\"cs-why-grid\"\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eChristmas tree decorating\u003c\/strong\u003e — a different mini on every branch\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eHandmade holiday decorations\u003c\/strong\u003e — the whole home, covered\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eStocking fillers\u003c\/strong\u003e — small handcrafted surprises\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eFestive displays \u0026amp; party decorations\u003c\/strong\u003e — mix \u0026amp; match 50 designs\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eSmall handcrafted gifts\u003c\/strong\u003e — quick makes for everyone\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eBeginners \u0026amp; intermediates alike\u003c\/strong\u003e — 50 skill-matched projects\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- HOW IT WORKS --\u003e\n\u003cdiv class=\"cs-how-section\"\u003e\n\u003cdiv class=\"cs-spooky-layer cs-spooky-layer--dark\"\u003e\n\u003cspan class=\"cs-dark-fx cs-dark-fx--1\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-dark-fx cs-dark-fx--2\"\u003e⭐\u003c\/span\u003e \u003cspan class=\"cs-dark-fx cs-dark-fx--3\"\u003e❄️\u003c\/span\u003e \u003cspan class=\"cs-dark-fx cs-dark-fx--4\"\u003e🔔\u003c\/span\u003e \u003cspan class=\"cs-tree cs-tree--dark\"\u003e🎄\u003c\/span\u003e\n\u003c\/div\u003e\n\u003ch2 class=\"cs-section-title\"\u003e✨ How It Works\u003c\/h2\u003e\n\u003cdiv class=\"cs-steps-container\"\u003e\n\u003cdiv class=\"cs-step\"\u003e\n\u003cdiv class=\"cs-step-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"cs-step-content\"\u003e\n\u003ch4\u003eOrder Placed\u003c\/h4\u003e\n\u003cp\u003eToday · Secure checkout\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-step-arrow\"\u003e→\u003c\/div\u003e\n\u003cdiv class=\"cs-step\"\u003e\n\u003cdiv class=\"cs-step-number\"\u003e2\u003c\/div\u003e\n\u003cdiv class=\"cs-step-content\"\u003e\n\u003ch4\u003ePayment Confirmed\u003c\/h4\u003e\n\u003cp\u003eWithin 1 minute\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-step-arrow\"\u003e→\u003c\/div\u003e\n\u003cdiv class=\"cs-step\"\u003e\n\u003cdiv class=\"cs-step-number\"\u003e3\u003c\/div\u003e\n\u003cdiv class=\"cs-step-content\"\u003e\n\u003ch4\u003ePDFs Delivered\u003c\/h4\u003e\n\u003cp\u003eInstantly to your email\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- WHY MAKERS LOVE --\u003e\n\u003cdiv class=\"cs-why-section\"\u003e\n\u003ch2 class=\"cs-section-title\"\u003e💚 Why Makers Love This Set\u003c\/h2\u003e\n\u003cdiv class=\"cs-why-grid\"\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003e50 patterns in one set\u003c\/strong\u003e — unbeatable festive value\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eEvery Christmas icon\u003c\/strong\u003e — from Santa to nutcrackers to gnomes\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eQuick mini projects\u003c\/strong\u003e — perfect between bigger makes\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003e7 languages included\u003c\/strong\u003e — crochet in the one you love\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eClear step-by-step\u003c\/strong\u003e — easy to complete at every level\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"cs-why-item\"\u003e\n\u003cspan class=\"cs-why-icon\"\u003e✓\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eLifetime access\u003c\/strong\u003e — download once, decorate every Christmas\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- FAQ --\u003e\n\u003cdiv class=\"cs-faq-section\"\u003e\n\u003ch2 class=\"cs-section-title\"\u003e❓ Frequently Asked Questions\u003c\/h2\u003e\n\u003cdetails class=\"cs-faq-item\"\u003e\n\u003csummary\u003eAre these finished ornaments?\u003c\/summary\u003e\n\u003cp\u003eNo — this is a DIGITAL DOWNLOAD. You are purchasing crochet instructions, not finished ornaments. This listing is for digital crochet patterns in PDF format only; no physical or finished crocheted items will be shipped, and yarn, hooks, stuffing, and other supplies are not included.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"cs-faq-item\"\u003e\n\u003csummary\u003eHow many patterns are included?\u003c\/summary\u003e\n\u003cp\u003e50 Christmas-inspired designs: 18 festive companions, 16 tree decorations, and 16 winter friends — including Santa Claus, reindeer, snowmen, gingerbread men, elves, penguins, polar bears, Christmas trees, wreaths, bells, holly, poinsettias, candy canes, bows, stockings, gingerbread houses, snowflakes, winter accessories, gifts, angels, nutcrackers, gnomes, and much more.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"cs-faq-item\"\u003e\n\u003csummary\u003eWhich languages are included?\u003c\/summary\u003e\n\u003cp\u003eEnglish, Spanish, French, German, Italian, Dutch, and Brazilian Portuguese — seven languages in total.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"cs-faq-item\"\u003e\n\u003csummary\u003eWhat skill level do I need?\u003c\/summary\u003e\n\u003cp\u003eThe set is suitable for beginners to intermediate crocheters, depending on the pattern. All patterns are written using American crochet terminology with clear, step-by-step instructions to make the projects easy to complete.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"cs-faq-item\"\u003e\n\u003csummary\u003eWhat can I make with the minis?\u003c\/summary\u003e\n\u003cp\u003eThey're perfect for decorating the Christmas tree, making handmade holiday decorations, filling Christmas stockings, creating festive displays, and giving small handcrafted gifts — plus party decorations and festive amigurumi projects.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"cs-faq-item\"\u003e\n\u003csummary\u003eWill my ornaments be the exact same size?\u003c\/summary\u003e\n\u003cp\u003eFinal size may vary depending on yarn, hook size, tension, and individual crochet style.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n    \/* ==================== BRAND VARIABLES — CHRISTMAS EDITION ==================== *\/\n    .cs-product-wrapper {\n      --cs-forest: #35553f;\n      --cs-forest-dark: #26402f;\n      --cs-sage: #7c9b78;\n      --cs-terracotta: #b23a3a;\n      --cs-terracotta-dark: #8e2b2b;\n      --cs-cream: #faf6ef;\n      --cs-cream-dark: #f0e7d8;\n      --cs-sand: #e7d8c4;\n      --cs-text: #2c2a26;\n      --cs-text-light: #6f665c;\n      --cs-star: #e0a92e;\n      --cs-success: #4a7c59;\n      --cs-serif: Georgia, 'Cormorant Garamond', 'Times New Roman', serif;\n      font-family: inherit;\n      color: var(--cs-text);\n      line-height: 1.65;\n      max-width: 100%;\n      margin: 0 auto;\n    }\n    .cs-product-wrapper * { box-sizing: border-box; }\n    .cs-product-wrapper h1, .cs-product-wrapper h2, .cs-product-wrapper h3, .cs-product-wrapper h4 { margin: 0 0 12px; line-height: 1.3; }\n    .cs-product-wrapper p { margin: 0 0 12px; }\n\n    \/* ==================== HERO ==================== *\/\n    .cs-hero-section {\n      display: block;\n      text-align: center;\n      padding: 56px 36px;\n      background:\n        radial-gradient(circle at 88% 12%, rgba(124,155,120,0.16) 0%, rgba(124,155,120,0) 42%),\n        linear-gradient(135deg, var(--cs-cream) 0%, #fffdf9 100%);\n      border: 1px solid var(--cs-sand); border-radius: 24px; margin-bottom: 32px;\n    }\n    .cs-hero-content { max-width: 800px; margin: 0 auto 36px; }\n    .cs-hero-badge { display: inline-block; background: var(--cs-terracotta); color: #fff; padding: 8px 16px; border-radius: 50px; font-size: 12px; font-weight: 700; letter-spacing: 0.6px; text-transform: uppercase; margin-bottom: 18px; box-shadow: 0 4px 14px rgba(178,58,58,0.28); }\n    .cs-hero-title { font-family: var(--cs-serif); font-size: 46px; font-weight: 700; color: var(--cs-forest-dark); margin-bottom: 16px; line-height: 1.15; letter-spacing: 0.2px; }\n    .cs-hero-subtitle { font-size: 17px; color: var(--cs-text-light); margin-bottom: 26px; line-height: 1.7; }\n    .cs-hero-features { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; max-width: 580px; margin: 0 auto; }\n    .cs-hero-feature { display: flex; align-items: center; gap: 9px; font-size: 14px; color: var(--cs-text); background: rgba(255,255,255,0.6); border: 1px solid var(--cs-sand); border-radius: 10px; padding: 9px 12px; text-align: left; }\n    .cs-hero-feature-icon { font-size: 19px; }\n    .cs-hero-image { position: relative; max-width: 740px; margin: 0 auto; }\n    .cs-hero-img { width: 100%; height: auto; border-radius: 18px; box-shadow: 0 16px 40px rgba(53,85,63,0.22); border: 4px solid #fff; }\n    .cs-hero-image-badge { position: absolute; bottom: 16px; right: 16px; background: #fff; padding: 7px 12px; border-radius: 50px; display: inline-flex; align-items: center; gap: 8px; box-shadow: 0 8px 24px rgba(38,64,47,0.18); white-space: nowrap; }\n    .cs-badge-icon { font-size: 18px; flex-shrink: 0; line-height: 1; }\n    .cs-badge-text strong { display: block; font-size: 13px; color: var(--cs-forest-dark); line-height: 1.15; white-space: nowrap; }\n    .cs-badge-text span { display: block; font-size: 11px; color: var(--cs-text-light); white-space: nowrap; }\n\n    \/* ==================== ⭐ PHOTO REVIEWS ==================== *\/\n    .cs-photo-reviews-section { background: linear-gradient(135deg, var(--cs-cream) 0%, #fffdf9 100%); border-radius: 24px; padding: 34px 26px; margin: 0 0 28px; border: 1px solid var(--cs-sand); box-shadow: 0 6px 20px rgba(53,85,63,0.06); }\n    .cs-photo-reviews-header { text-align: center; margin-bottom: 26px; }\n    .cs-pr-rating { display: inline-flex; align-items: center; gap: 12px; background: #fff; padding: 8px 18px; border-radius: 50px; border: 1px solid var(--cs-sand); margin-bottom: 14px; box-shadow: 0 2px 8px rgba(53,85,63,0.08); }\n    .cs-pr-stars { color: var(--cs-star); font-size: 18px; letter-spacing: 2px; }\n    .cs-pr-rating-text { font-size: 14px; color: var(--cs-text-light); }\n    .cs-pr-rating-text strong { color: var(--cs-forest-dark); font-size: 16px; font-weight: 700; }\n    .cs-pr-title { font-family: var(--cs-serif); font-size: 27px; color: var(--cs-forest-dark); font-weight: 700; margin-bottom: 6px; }\n    .cs-pr-subtitle { font-size: 14px; color: var(--cs-text-light); font-style: italic; }\n\n    .cs-photo-reviews-slider { overflow: hidden; margin: 0 -8px; padding: 8px; }\n    .cs-photo-reviews-track { display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; padding-bottom: 8px; scrollbar-width: thin; scrollbar-color: var(--cs-sage) transparent; }\n    .cs-photo-reviews-track::-webkit-scrollbar { height: 6px; }\n    .cs-photo-reviews-track::-webkit-scrollbar-track { background: var(--cs-cream-dark); border-radius: 4px; }\n    .cs-photo-reviews-track::-webkit-scrollbar-thumb { background: var(--cs-sage); border-radius: 4px; }\n\n    .cs-photo-review-card { flex: 0 0 280px; background: #fff; border-radius: 16px; overflow: hidden; border: 1px solid var(--cs-sand); scroll-snap-align: start; transition: all 0.3s ease; display: flex; flex-direction: column; }\n    .cs-photo-review-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(53,85,63,0.15); border-color: var(--cs-sage); }\n    .cs-pr-image { width: 100%; height: 280px; object-fit: cover; display: block; transition: transform 0.5s ease; background: var(--cs-cream); }\n    .cs-photo-review-card:hover .cs-pr-image { transform: scale(1.05); }\n    .cs-pr-content { padding: 16px 18px; flex-grow: 1; display: flex; flex-direction: column; }\n    .cs-pr-stars-small { color: var(--cs-star); font-size: 14px; letter-spacing: 1px; margin-bottom: 8px; }\n    .cs-pr-text { font-size: 14px; color: var(--cs-text); line-height: 1.55; font-style: italic; margin-bottom: 12px; flex-grow: 1; }\n    .cs-pr-author { display: flex; flex-direction: column; gap: 2px; padding-top: 10px; border-top: 1px solid var(--cs-cream-dark); }\n    .cs-pr-name { font-size: 13px; font-weight: 700; color: var(--cs-forest-dark); }\n    .cs-pr-verified { font-size: 11px; color: var(--cs-success); font-weight: 600; }\n\n    .cs-pr-dots { display: flex; justify-content: center; gap: 8px; margin-top: 18px; flex-wrap: wrap; }\n    .cs-pr-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--cs-sand); border: none; cursor: pointer; transition: all 0.3s ease; padding: 0; }\n    .cs-pr-dot.active { background: var(--cs-sage); width: 24px; border-radius: 4px; }\n\n    \/* ==================== 🔒 PREVIEW + LOCKED PAGES ==================== *\/\n    .cs-preview-section { background: linear-gradient(135deg, var(--cs-cream) 0%, #fffdf9 100%); border-radius: 24px; padding: 38px 26px; margin: 36px 0; border: 1px solid var(--cs-sand); }\n    .cs-preview-subtitle { text-align: center; font-size: 14px; color: var(--cs-text-light); font-style: italic; margin: -8px 0 28px; }\n    .cs-preview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 800px; margin: 0 auto; }\n    .cs-preview-grid-small { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 480px; margin: 0 auto; justify-items: center; }\n    .cs-preview-grid-small .cs-preview-page { width: 100%; max-width: 200px; }\n    .cs-preview-page { display: block; text-decoration: none; color: inherit; transition: all 0.3s ease; cursor: pointer; }\n    .cs-preview-page-inner { position: relative; border-radius: 12px; overflow: hidden; aspect-ratio: 8.5 \/ 11; background: #fff; border: 1px solid var(--cs-sand); box-shadow: 0 6px 18px rgba(53,85,63,0.1); transition: all 0.3s ease; }\n    .cs-preview-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.4s ease; }\n    .cs-preview-visible:hover .cs-preview-page-inner { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(53,85,63,0.18); }\n    .cs-preview-locked { cursor: pointer; }\n    .cs-preview-locked:hover .cs-preview-page-inner { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(53,85,63,0.22); border-color: var(--cs-terracotta); }\n    .cs-preview-locked:hover .cs-preview-lock-btn { background: var(--cs-terracotta-dark); transform: translateY(-2px); }\n    .cs-preview-img-blurred { filter: blur(6px) brightness(0.7); transform: scale(1.05); }\n    .cs-preview-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(38,64,47,0.35) 0%, rgba(38,64,47,0.88) 100%); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 12px; color: #fff; }\n    .cs-preview-lock-icon { font-size: 28px; margin-bottom: 6px; filter: drop-shadow(0 4px 8px rgba(0,0,0,0.3)); animation: cs-lock-bounce 2s ease-in-out infinite; }\n    @keyframes cs-lock-bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }\n    .cs-preview-lock-title { font-size: 13px; font-weight: 800; margin-bottom: 4px; line-height: 1.2; text-shadow: 0 2px 8px rgba(0,0,0,0.3); }\n    .cs-preview-lock-text { font-size: 10px; opacity: 0.95; margin-bottom: 10px; max-width: 160px; line-height: 1.3; }\n    .cs-preview-lock-btn { display: inline-block; text-decoration: none; background: var(--cs-terracotta); color: #fff; padding: 7px 14px; border-radius: 50px; font-size: 11px; font-weight: 700; letter-spacing: 0.3px; box-shadow: 0 4px 12px rgba(178,58,58,0.4); transition: all 0.3s ease; }\n    .cs-preview-label { text-align: center; margin-top: 8px; font-size: 11px; font-weight: 700; padding: 5px 10px; border-radius: 50px; display: inline-flex; align-items: center; gap: 5px; width: 100%; justify-content: center; }\n    .cs-preview-label-free { background: rgba(74,124,89,0.14); color: var(--cs-success); }\n    .cs-preview-label-locked { background: rgba(178,58,58,0.12); color: var(--cs-terracotta-dark); }\n\n    \/* ==================== 🔍 CSS-ONLY ZOOM ==================== *\/\n    .cs-zoom { display: none; position: fixed; inset: 0; z-index: 99999; align-items: center; justify-content: center; padding: 24px; }\n    .cs-zoom:target { display: flex; }\n    .cs-zoom-backdrop { position: absolute; inset: 0; background: rgba(30,40,32,0.93); cursor: zoom-out; display: block; }\n    .cs-zoom-img { position: relative; max-width: 92%; max-height: 88%; border-radius: 12px; box-shadow: 0 20px 60px rgba(0,0,0,0.5); object-fit: contain; z-index: 1; }\n    .cs-zoom-close { position: absolute; top: 20px; right: 28px; font-size: 42px; line-height: 1; color: #fff; text-decoration: none; cursor: pointer; font-weight: 300; text-shadow: 0 2px 8px rgba(0,0,0,0.4); z-index: 2; }\n\n    \/* ==================== 🎨 LIFESTYLE IMAGES ==================== *\/\n    .cs-lifestyle-image { margin: 32px 0; border-radius: 18px; overflow: hidden; box-shadow: 0 10px 28px rgba(53,85,63,0.1); background: var(--cs-cream); border: 1px solid var(--cs-sand); }\n    .cs-lifestyle-img { width: 100%; height: auto; display: block; }\n    .cs-lifestyle-caption { padding: 20px 24px; background: linear-gradient(135deg, var(--cs-cream) 0%, #fffdf9 100%); display: flex; align-items: center; gap: 12px; border-top: 1px solid var(--cs-sand); }\n    .cs-lifestyle-icon { font-size: 24px; flex-shrink: 0; }\n    .cs-lifestyle-caption p { font-size: 15px; color: var(--cs-text); font-weight: 500; margin: 0; line-height: 1.45; }\n\n    \/* ==================== INFO BOX ==================== *\/\n    .cs-info-box { background: #fff; border: 1px solid var(--cs-sand); border-radius: 16px; padding: 20px 22px; margin: 24px 0; display: flex; align-items: center; justify-content: space-around; gap: 16px; flex-wrap: wrap; box-shadow: 0 4px 14px rgba(53,85,63,0.05); }\n    .cs-info-item { display: flex; align-items: center; gap: 11px; flex: 1; min-width: 200px; }\n    .cs-info-icon { width: 28px; height: 28px; flex-shrink: 0; }\n    .cs-info-text strong { display: block; font-size: 14px; color: var(--cs-forest-dark); font-weight: 700; }\n    .cs-info-text span { font-size: 12px; color: var(--cs-text-light); }\n    .cs-info-divider { width: 1px; height: 36px; background: var(--cs-sand); }\n\n    \/* ==================== SECTION TITLES ==================== *\/\n    .cs-section-title { font-family: var(--cs-serif); font-size: 27px; color: var(--cs-forest-dark); font-weight: 700; text-align: center; margin-bottom: 24px; padding-bottom: 14px; position: relative; }\n    .cs-section-title::after { content: ''; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); width: 56px; height: 3px; border-radius: 3px; background: var(--cs-terracotta); }\n\n    \/* ==================== RECEIVE ==================== *\/\n    .cs-receive-section { margin: 40px 0; }\n    .cs-receive-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }\n    .cs-receive-item { background: #fff; border: 1px solid var(--cs-sand); border-radius: 14px; padding: 22px 16px; text-align: center; transition: all 0.3s ease; }\n    .cs-receive-item:hover { transform: translateY(-3px); box-shadow: 0 10px 22px rgba(53,85,63,0.12); border-color: var(--cs-sage); }\n    .cs-receive-emoji { font-size: 32px; display: block; margin-bottom: 10px; }\n    .cs-receive-item h4 { font-size: 15px; color: var(--cs-forest-dark); font-weight: 700; }\n    .cs-receive-item p { font-size: 13px; color: var(--cs-text-light); margin: 0; }\n\n    \/* ==================== HOW IT WORKS ==================== *\/\n    .cs-how-section { background: linear-gradient(135deg, var(--cs-forest) 0%, var(--cs-forest-dark) 100%); border-radius: 20px; padding: 34px 24px; margin: 40px 0; }\n    .cs-how-section .cs-section-title { color: #fff; }\n    .cs-how-section .cs-section-title::after { background: var(--cs-terracotta); }\n    .cs-steps-container { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }\n    .cs-step { flex: 1; min-width: 180px; display: flex; align-items: center; gap: 12px; }\n    .cs-step-number { width: 46px; height: 46px; border-radius: 50%; background: var(--cs-terracotta); color: #fff; font-weight: 700; font-size: 18px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 4px 14px rgba(178,58,58,0.4); }\n    .cs-step-content h4 { font-size: 14px; color: #fff; margin: 0; }\n    .cs-step-content p { font-size: 12px; color: rgba(255,255,255,0.72); margin: 0; }\n    .cs-step-arrow { font-size: 22px; color: var(--cs-sage); font-weight: 700; }\n\n    \/* ==================== WHY \/ GRID SECTIONS ==================== *\/\n    .cs-why-section { margin: 40px 0; }\n    .cs-why-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }\n    .cs-why-item { background: #fff; border: 1px solid var(--cs-sand); border-left: 3px solid var(--cs-sage); border-radius: 10px; padding: 14px 16px; display: flex; align-items: flex-start; gap: 10px; transition: all 0.25s ease; }\n    .cs-why-item:hover { border-left-color: var(--cs-terracotta); box-shadow: 0 6px 16px rgba(53,85,63,0.08); }\n    .cs-why-icon { width: 24px; height: 24px; border-radius: 50%; background: var(--cs-success); color: #fff; font-size: 13px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }\n    .cs-why-item p { font-size: 14px; margin: 0; color: var(--cs-text); }\n\n    \/* ==================== FAQ ==================== *\/\n    .cs-faq-section { margin: 40px 0; }\n    .cs-faq-item { background: #fff; border: 1px solid var(--cs-sand); border-radius: 12px; padding: 15px 18px; margin-bottom: 10px; transition: all 0.3s ease; }\n    .cs-faq-item:hover { border-color: var(--cs-sage); }\n    .cs-faq-item summary { font-weight: 700; color: var(--cs-forest-dark); cursor: pointer; list-style: none; position: relative; padding-right: 30px; font-size: 15px; }\n    .cs-faq-item summary::-webkit-details-marker { display: none; }\n    .cs-faq-item summary::after { content: '+'; position: absolute; right: 0; top: 50%; transform: translateY(-50%); font-size: 24px; color: var(--cs-terracotta); font-weight: 300; }\n    .cs-faq-item[open] summary::after { content: '−'; }\n    .cs-faq-item p { margin-top: 12px; font-size: 14px; color: var(--cs-text-light); line-height: 1.65; }\n\n    \/* ==================== 🎄 CHRISTMAS ANIMATED EFFECTS ==================== *\/\n    .cs-christmas { position: relative; overflow: hidden; }\n    .cs-christmas .cs-hero-section { position: relative; overflow: hidden; }\n    .cs-christmas .cs-hero-content,\n    .cs-christmas .cs-hero-image { position: relative; z-index: 2; }\n\n    .cs-spooky-layer { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 1; }\n\n    \/* --- ❄️ PAGE-WIDE snowfall layer --- *\/\n    .cs-page-fx { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 4; }\n    .cs-snow { position: absolute; top: -40px; opacity: 0; will-change: transform, opacity; }\n    .cs-snow--1  { left: 4%;  font-size: 16px; animation: cs-snowfall 14s linear infinite; }\n    .cs-snow--2  { left: 12%; font-size: 12px; animation: cs-snowfall 18s linear infinite; animation-delay: -6s; }\n    .cs-snow--3  { left: 22%; font-size: 20px; animation: cs-snowfall-sway 16s linear infinite; animation-delay: -3s; }\n    .cs-snow--4  { left: 31%; font-size: 13px; animation: cs-snowfall 20s linear infinite; animation-delay: -11s; }\n    .cs-snow--5  { left: 40%; font-size: 17px; animation: cs-snowfall-sway 15s linear infinite; animation-delay: -8s; }\n    .cs-snow--6  { left: 49%; font-size: 12px; animation: cs-snowfall 19s linear infinite; animation-delay: -2s; }\n    .cs-snow--7  { left: 58%; font-size: 21px; animation: cs-snowfall-sway 17s linear infinite; animation-delay: -13s; }\n    .cs-snow--8  { left: 66%; font-size: 14px; animation: cs-snowfall 21s linear infinite; animation-delay: -5s; }\n    .cs-snow--9  { left: 74%; font-size: 18px; animation: cs-snowfall-sway 14s linear infinite; animation-delay: -9s; }\n    .cs-snow--10 { left: 82%; font-size: 12px; animation: cs-snowfall 18s linear infinite; animation-delay: -15s; }\n    .cs-snow--11 { left: 90%; font-size: 19px; animation: cs-snowfall-sway 16s linear infinite; animation-delay: -4s; }\n    .cs-snow--12 { left: 96%; font-size: 14px; animation: cs-snowfall 22s linear infinite; animation-delay: -10s; }\n    @keyframes cs-snowfall {\n      0%   { transform: translateY(-4vh); opacity: 0; }\n      8%   { opacity: 0.8; }\n      92%  { opacity: 0.8; }\n      100% { transform: translateY(104vh); opacity: 0; }\n    }\n    @keyframes cs-snowfall-sway {\n      0%   { transform: translate(0, -4vh) rotate(0deg); opacity: 0; }\n      8%   { opacity: 0.75; }\n      50%  { transform: translate(24px, 50vh) rotate(180deg); }\n      92%  { opacity: 0.75; }\n      100% { transform: translate(-12px, 104vh) rotate(360deg); opacity: 0; }\n    }\n\n    \/* --- 🎅 drifting festive figures across the page --- *\/\n    .cs-pfx-drift { position: absolute; left: 0; font-size: 22px; opacity: 0; will-change: transform, opacity; }\n    .cs-pfx-drift--1 { top: 22%; animation: cs-drift-across 36s linear infinite; animation-delay: -5s; }\n    .cs-pfx-drift--2 { top: 48%; font-size: 20px; animation: cs-drift-across 44s linear infinite; animation-delay: -21s; }\n    .cs-pfx-drift--3 { top: 72%; font-size: 18px; animation: cs-drift-across 40s linear infinite; animation-delay: -31s; }\n    .cs-pfx-drift--4 { top: 9%; font-size: 21px; animation: cs-drift-across 48s linear infinite; animation-delay: -13s; }\n    @keyframes cs-drift-across {\n      0%   { transform: translate(-16vw, 0); opacity: 0; }\n      10%  { opacity: 0.7; }\n      50%  { transform: translate(52vw, -18px); }\n      90%  { opacity: 0.7; }\n      100% { transform: translate(120vw, 10px); opacity: 0; }\n    }\n\n    \/* --- 🔔 hanging ornaments on threads --- *\/\n    .cs-hang { position: absolute; text-align: center; transform-origin: top center; will-change: transform; }\n    .cs-hang-thread { display: block; width: 2px; height: 40px; margin: 0 auto; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(120,90,50,0.35)); }\n    .cs-hang-orn { display: block; font-size: 18px; line-height: 1; margin-top: -2px; }\n    .cs-hang--1 { top: 15%; left: 8%;  animation: cs-hang-bob 4.2s ease-in-out infinite; animation-delay: -0.5s; }\n    .cs-hang--2 { top: 33%; left: 88%; animation: cs-hang-bob 5.1s ease-in-out infinite; animation-delay: -2s; }\n    .cs-hang--3 { top: 50%; left: 20%; animation: cs-hang-bob 4.6s ease-in-out infinite; animation-delay: -3.2s; }\n    .cs-hang--4 { top: 63%; left: 72%; animation: cs-hang-bob 5.4s ease-in-out infinite; animation-delay: -1.4s; }\n    .cs-hang--5 { top: 78%; left: 14%; animation: cs-hang-bob 4.4s ease-in-out infinite; animation-delay: -2.7s; }\n    .cs-hang--6 { top: 90%; left: 82%; animation: cs-hang-bob 5.0s ease-in-out infinite; animation-delay: -0.8s; }\n    .cs-hang--2 .cs-hang-thread, .cs-hang--4 .cs-hang-thread, .cs-hang--6 .cs-hang-thread { height: 30px; }\n    @keyframes cs-hang-bob {\n      0%, 100% { transform: translateY(0) rotate(-4deg); }\n      50%      { transform: translateY(9px) rotate(4deg); }\n    }\n\n    \/* --- hero corner snowflakes --- *\/\n    .cs-corner-flake { position: absolute; top: 6px; font-size: 42px; line-height: 1; opacity: 0.22; z-index: 1; animation: cs-flake-spin 24s linear infinite; }\n    .cs-corner-flake--l { left: 6px; }\n    .cs-corner-flake--r { right: 6px; animation-direction: reverse; }\n    @keyframes cs-flake-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }\n\n    \/* --- rising drift emojis (hero) --- *\/\n    .cs-drift { position: absolute; bottom: -30px; font-size: 20px; opacity: 0; will-change: transform, opacity; }\n    .cs-drift--1 { left: 24%; animation: cs-rise 9s ease-in infinite; animation-delay: -1s; }\n    .cs-drift--2 { left: 9%;  font-size: 24px; animation: cs-rise 12s ease-in infinite; animation-delay: -5s; }\n    .cs-drift--3 { left: 40%; font-size: 18px; animation: cs-rise 10s ease-in infinite; animation-delay: -3s; }\n    @keyframes cs-rise {\n      0%   { transform: translate(0, 0); opacity: 0; }\n      12%  { opacity: 0.85; }\n      85%  { opacity: 0.85; }\n      100% { transform: translate(20px, -190px); opacity: 0; }\n    }\n\n    \/* --- drifting snow mist along the bottom --- *\/\n    .cs-fog { position: absolute; bottom: -10px; left: -60%; width: 220%; height: 80px;\n      background:\n        radial-gradient(ellipse 50% 60% at 30% 60%, rgba(235,240,250,0.45), rgba(235,240,250,0) 72%),\n        radial-gradient(ellipse 45% 55% at 70% 55%, rgba(220,230,245,0.38), rgba(220,230,245,0) 72%);\n      filter: blur(3px); z-index: 1; }\n    .cs-fog--1 { animation: cs-fog-a 18s linear infinite; }\n    .cs-fog--2 { bottom: -22px; height: 100px; opacity: 0.7; animation: cs-fog-b 26s linear infinite; }\n    @keyframes cs-fog-a { 0% { transform: translateX(-6%); } 100% { transform: translateX(6%); } }\n    @keyframes cs-fog-b { 0% { transform: translateX(6%); } 100% { transform: translateX(-6%); } }\n\n    \/* --- glowing Christmas tree --- *\/\n    .cs-tree { position: absolute; bottom: 9%; left: 4%; font-size: 30px; line-height: 1; z-index: 1; animation: cs-tree-glow 2.6s ease-in-out infinite; }\n    .cs-tree--dark { bottom: auto; top: 14%; left: auto; right: 6%; font-size: 26px; }\n    @keyframes cs-tree-glow {\n      0%,100% { filter: drop-shadow(0 0 5px rgba(224,169,46,0.55)); }\n      50%     { filter: drop-shadow(0 0 14px rgba(224,169,46,0.95)); }\n    }\n\n    \/* --- gentle golden title glow --- *\/\n    .cs-christmas .cs-hero-title { animation: cs-festive 4s ease-in-out infinite; }\n    @keyframes cs-festive {\n      0%, 100% { text-shadow: 0 0 8px rgba(178,58,58,0.25), 0 0 18px rgba(224,169,46,0.18); }\n      50%      { text-shadow: 0 0 14px rgba(178,58,58,0.45), 0 0 30px rgba(224,169,46,0.38); }\n    }\n\n    \/* --- floating hero image --- *\/\n    .cs-christmas .cs-hero-img { animation: cs-float 5.5s ease-in-out infinite; }\n    @keyframes cs-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }\n\n    \/* --- pulsing badge --- *\/\n    .cs-christmas .cs-hero-image-badge { animation: cs-badge-pulse 2.4s ease-in-out infinite; }\n    @keyframes cs-badge-pulse {\n      0%, 100% { box-shadow: 0 8px 24px rgba(38,64,47,0.18); }\n      50%      { box-shadow: 0 10px 32px rgba(178,58,58,0.5); }\n    }\n    .cs-christmas .cs-badge-icon { display: inline-block; animation: cs-santa-bob 2.4s ease-in-out infinite; }\n    @keyframes cs-santa-bob { 0%, 100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-3px) rotate(-8deg); } }\n\n    \/* --- festive sparkle in the dark How-It-Works band --- *\/\n    .cs-christmas .cs-how-section { position: relative; overflow: hidden; }\n    .cs-christmas .cs-how-section .cs-section-title,\n    .cs-christmas .cs-how-section .cs-steps-container { position: relative; z-index: 2; }\n    .cs-dark-fx { position: absolute; top: -30px; opacity: 0; font-size: 20px; text-shadow: 0 0 12px rgba(255,255,255,0.6); will-change: transform, opacity; }\n    .cs-dark-fx--1 { left: 12%; animation: cs-dark-fall 9s linear infinite; animation-delay: -1s; }\n    .cs-dark-fx--2 { left: 52%; font-size: 16px; animation: cs-dark-fall 12s linear infinite; animation-delay: -6s; }\n    .cs-dark-fx--3 { left: 80%; font-size: 22px; animation: cs-dark-fall 10s linear infinite; animation-delay: -3s; }\n    .cs-dark-fx--4 { left: 33%; font-size: 18px; animation: cs-dark-fall 11s linear infinite; animation-delay: -8s; }\n    @keyframes cs-dark-fall {\n      0%   { transform: translateY(0) rotate(0deg); opacity: 0; }\n      15%  { opacity: 0.85; }\n      85%  { opacity: 0.85; }\n      100% { transform: translateY(220px) rotate(180deg); opacity: 0; }\n    }\n\n    \/* --- respect reduced-motion preferences --- *\/\n    @media (prefers-reduced-motion: reduce) {\n      .cs-christmas .cs-hero-title,\n      .cs-christmas .cs-hero-img,\n      .cs-christmas .cs-hero-image-badge,\n      .cs-christmas .cs-badge-icon,\n      .cs-christmas .cs-tree,\n      .cs-christmas .cs-fog,\n      .cs-christmas .cs-corner-flake { animation: none !important; }\n      .cs-christmas .cs-page-fx,\n      .cs-christmas .cs-spooky-layer { display: none !important; }\n    }\n\n    \/* ==================== MOBILE ==================== *\/\n    @media (max-width: 749px) {\n      .cs-hero-section { padding: 34px 22px; }\n      .cs-hero-title { font-size: 32px; }\n      .cs-hero-subtitle { font-size: 15px; }\n      .cs-hero-features { grid-template-columns: 1fr; max-width: 100%; }\n      .cs-hero-image-badge { bottom: 10px; right: 10px; padding: 6px 11px; gap: 7px; }\n      .cs-badge-icon { font-size: 16px; }\n      .cs-badge-text strong { font-size: 12px; }\n      .cs-badge-text span { font-size: 9px; }\n\n      .cs-photo-reviews-section { padding: 24px 16px; border-radius: 18px; }\n      .cs-pr-title { font-size: 22px; }\n      .cs-pr-subtitle { font-size: 13px; }\n      .cs-photo-review-card { flex: 0 0 240px; }\n      .cs-pr-image { height: 240px; }\n\n      .cs-preview-section { padding: 24px 16px; }\n      .cs-preview-grid-small { max-width: 320px; gap: 12px; }\n      .cs-preview-grid-small .cs-preview-page { max-width: 150px; }\n      .cs-preview-lock-icon { font-size: 22px; margin-bottom: 4px; }\n      .cs-preview-lock-title { font-size: 11px; margin-bottom: 3px; }\n      .cs-preview-lock-text { font-size: 9px; margin-bottom: 8px; max-width: 130px; }\n      .cs-preview-lock-btn { padding: 5px 11px; font-size: 9px; }\n      .cs-preview-label { font-size: 10px; padding: 4px 8px; margin-top: 6px; }\n\n      .cs-lifestyle-caption { padding: 16px 18px; }\n      .cs-lifestyle-icon { font-size: 20px; }\n      .cs-lifestyle-caption p { font-size: 14px; }\n\n      .cs-info-box { flex-direction: column; gap: 14px; padding: 18px; }\n      .cs-info-divider { display: none; }\n      .cs-info-item { width: 100%; }\n      .cs-steps-container { flex-direction: column; }\n      .cs-step-arrow { transform: rotate(90deg); }\n      .cs-section-title { font-size: 22px; }\n      .cs-zoom-close { top: 12px; right: 18px; }\n    }\n  \u003c\/style\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"crochetschool.shop","offers":[{"title":"Default Title","offer_id":40948625506433,"sku":null,"price":8.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0604\/9451\/2257\/files\/ChatGPTImageSep30_2026_10_55_56PM-2.webp?v=1790809312","url":"https:\/\/crochetschool.shop\/products\/set-of-50-mini-christmas-crochet","provider":"crochetschool.shop","version":"1.0","type":"link"}