{"product_id":"reusable-yard-bag-heavy-duty","title":"Reusable Yard Bag - Heavy Duty 300L","description":"\u003cbody\u003e\n\n\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:wght@400;600;700\u0026family=Montserrat:wght@300;400;500\u0026display=swap');\n\n  * { margin: 0; padding: 0; box-sizing: border-box; }\n\n  body {\n    background: #0a0a0a;\n    color: #e8e0d0;\n    font-family: 'Montserrat', sans-serif;\n  }\n\n  @keyframes fadeInDown {\n    from { opacity: 0; transform: translateY(-30px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\n  @keyframes fadeInUp {\n    from { opacity: 0; transform: translateY(30px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\n  @keyframes slideInLeft {\n    from { opacity: 0; transform: translateX(-40px); }\n    to { opacity: 1; transform: translateX(0); }\n  }\n\n  @keyframes shimmer {\n    0% { background-position: -200% center; }\n    100% { background-position: 200% center; }\n  }\n\n  @keyframes pulse {\n    0%, 100% { transform: scale(1); opacity: 0.6; }\n    50% { transform: scale(1.1); opacity: 1; }\n  }\n\n  @keyframes floatBadge {\n    0%, 100% { transform: translateY(0px); }\n    50% { transform: translateY(-6px); }\n  }\n\n  \/* ── HERO ── *\/\n  .hero {\n    background: linear-gradient(135deg, #0d1a0d 0%, #1a2e1a 50%, #0d1a0d 100%);\n    border-bottom: 1px solid #4a8a4a;\n    padding: 60px 40px;\n    text-align: center;\n    position: relative;\n    overflow: hidden;\n    animation: fadeInDown 1s ease forwards;\n  }\n\n  .hero::before {\n    content: '';\n    position: absolute;\n    top: -50%; left: -50%;\n    width: 200%; height: 200%;\n    background: radial-gradient(ellipse at center, rgba(74,138,74,0.1) 0%, transparent 60%);\n    animation: pulse 5s ease-in-out infinite;\n  }\n\n  .hero-tag {\n    display: inline-block;\n    font-size: 10px;\n    letter-spacing: 4px;\n    text-transform: uppercase;\n    color: #5aaa5a;\n    border: 1px solid #4a8a4a;\n    padding: 6px 18px;\n    margin-bottom: 20px;\n    animation: fadeInDown 1s ease 0.2s both;\n  }\n\n  .hero h1 {\n    font-family: 'Cormorant Garamond', serif;\n    font-size: clamp(28px, 5vw, 52px);\n    font-weight: 700;\n    letter-spacing: 2px;\n    background: linear-gradient(90deg, #5aaa5a, #a0d4a0, #5aaa5a, #a0d4a0);\n    background-size: 200% auto;\n    -webkit-background-clip: text;\n    -webkit-text-fill-color: transparent;\n    background-clip: text;\n    animation: shimmer 3s linear infinite, fadeInDown 1s ease 0.4s both;\n    margin-bottom: 16px;\n  }\n\n  .hero p {\n    font-size: 12px;\n    letter-spacing: 3px;\n    color: #4a6a4a;\n    text-transform: uppercase;\n    animation: fadeInDown 1s ease 0.6s both;\n  }\n\n  \/* ── SIZE BADGE ── *\/\n  .size-badge {\n    display: inline-block;\n    margin-top: 24px;\n    background: linear-gradient(135deg, #1a3a1a, #2a5a2a);\n    border: 1px solid #4a8a4a;\n    padding: 14px 32px;\n    animation: floatBadge 3s ease-in-out infinite, fadeInUp 1s ease 0.8s both;\n  }\n\n  .size-badge .size-num {\n    font-family: 'Cormorant Garamond', serif;\n    font-size: 42px;\n    font-weight: 700;\n    color: #a0d4a0;\n    line-height: 1;\n    display: block;\n  }\n\n  .size-badge .size-label {\n    font-size: 10px;\n    letter-spacing: 4px;\n    color: #5aaa5a;\n    text-transform: uppercase;\n  }\n\n  \/* ── RATING ── *\/\n  .rating-section {\n    background: #0f0f0f;\n    border-bottom: 1px solid #1a1a1a;\n    padding: 24px 40px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 20px;\n    flex-wrap: wrap;\n    animation: fadeInUp 1s ease 0.9s both;\n  }\n\n  .stars { font-size: 22px; color: #c9a227; letter-spacing: 3px; filter: drop-shadow(0 0 6px rgba(201,162,39,0.5)); }\n  .rating-text { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 700; color: #f0d060; }\n  .rating-sub { font-size: 10px; letter-spacing: 2px; color: #555; text-transform: uppercase; }\n  .rating-divider { width: 1px; height: 40px; background: #222; }\n\n  .verified-badge {\n    display: flex; align-items: center; gap: 8px;\n    font-size: 10px; letter-spacing: 2px; color: #c9a227; text-transform: uppercase;\n  }\n  .verified-badge::before {\n    content: '✓';\n    display: inline-flex; align-items: center; justify-content: center;\n    width: 20px; height: 20px;\n    border: 1px solid #c9a227; border-radius: 50%; font-size: 10px;\n  }\n\n  \/* ── WEATHER STRIP ── *\/\n  .weather-banner {\n    background: linear-gradient(90deg, #0a1a0a, #122012, #0a1a0a);\n    border-top: 1px solid #2d5a2d;\n    border-bottom: 1px solid #2d5a2d;\n    padding: 20px 40px;\n    text-align: center;\n    animation: fadeInUp 1s ease 1s both;\n  }\n\n  .weather-banner p {\n    font-size: 10px; letter-spacing: 3px; text-transform: uppercase; color: #5aaa5a; margin-bottom: 14px;\n  }\n\n  .weather-icons {\n    display: flex; justify-content: center; gap: 30px; flex-wrap: wrap;\n  }\n\n  .weather-icon {\n    display: flex; flex-direction: column; align-items: center; gap: 6px;\n    font-size: 10px; letter-spacing: 1px; color: #4a7a4a; text-transform: uppercase;\n  }\n\n  .weather-icon span:first-child { font-size: 24px; }\n\n  \/* ── CAPACITY HIGHLIGHT ── *\/\n  .capacity-section {\n    padding: 60px 40px;\n    max-width: 900px;\n    margin: 0 auto;\n    text-align: center;\n  }\n\n  .section-label {\n    font-size: 10px; letter-spacing: 4px; text-transform: uppercase; color: #5aaa5a; margin-bottom: 10px;\n  }\n\n  .section-title {\n    font-family: 'Cormorant Garamond', serif;\n    font-size: clamp(24px, 4vw, 38px);\n    font-weight: 600; color: #e8e0d0; margin-bottom: 16px; line-height: 1.2;\n  }\n\n  .section-sub {\n    font-size: 12px; line-height: 1.9; color: #6a6a5a; letter-spacing: 0.5px; max-width: 600px; margin: 0 auto 40px;\n  }\n\n  \/* ── BENEFITS ── *\/\n  .benefits-grid {\n    display: grid;\n    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n    gap: 20px;\n    text-align: left;\n  }\n\n  .benefit-card {\n    background: linear-gradient(145deg, #0f1a0f, #162416);\n    border: 1px solid #1e3a1e;\n    border-top: 2px solid #4a8a4a;\n    padding: 28px 22px;\n    transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;\n    animation: fadeInUp 0.8s ease both;\n  }\n\n  .benefit-card:nth-child(1) { animation-delay: 0.1s; }\n  .benefit-card:nth-child(2) { animation-delay: 0.2s; }\n  .benefit-card:nth-child(3) { animation-delay: 0.3s; }\n  .benefit-card:nth-child(4) { animation-delay: 0.4s; }\n\n  .benefit-card:hover {\n    transform: translateY(-6px);\n    border-color: #5aaa5a;\n    box-shadow: 0 12px 40px rgba(74,138,74,0.15);\n  }\n\n  .benefit-icon { font-size: 26px; margin-bottom: 12px; display: block; }\n\n  .benefit-title {\n    font-family: 'Cormorant Garamond', serif;\n    font-size: 17px; font-weight: 600; color: #a0d4a0; margin-bottom: 8px; letter-spacing: 1px;\n  }\n\n  .benefit-desc {\n    font-size: 11px; line-height: 1.8; color: #5a6a5a; letter-spacing: 0.5px;\n  }\n\n  \/* ── DIVIDER ── *\/\n  .green-divider {\n    display: flex; align-items: center; gap: 16px;\n    padding: 0 40px; max-width: 900px; margin: 0 auto;\n  }\n\n  .green-divider::before,\n  .green-divider::after {\n    content: ''; flex: 1; height: 1px;\n    background: linear-gradient(90deg, transparent, #4a8a4a, transparent);\n  }\n\n  .green-divider-icon { color: #4a8a4a; font-size: 12px; letter-spacing: 4px; }\n\n  \/* ── REVIEWS ── *\/\n  .reviews-section {\n    padding: 60px 40px;\n    max-width: 900px;\n    margin: 0 auto;\n  }\n\n  .review-card {\n    background: #0d0d0d;\n    border: 1px solid #1a1a1a;\n    border-left: 3px solid #4a8a4a;\n    padding: 28px 30px;\n    margin-bottom: 20px;\n    position: relative;\n    animation: slideInLeft 0.8s ease both;\n    transition: border-color 0.3s ease;\n  }\n\n  .review-card:nth-child(2) { animation-delay: 0.15s; }\n  .review-card:nth-child(3) { animation-delay: 0.3s; }\n  .review-card:nth-child(4) { animation-delay: 0.45s; }\n\n  .review-card:hover { border-left-color: #a0d4a0; }\n\n  .review-card::before {\n    content: '\"';\n    position: absolute; top: 8px; right: 18px;\n    font-family: 'Cormorant Garamond', serif;\n    font-size: 80px; color: #141414; line-height: 1;\n  }\n\n  .review-stars { color: #c9a227; font-size: 13px; letter-spacing: 2px; margin-bottom: 12px; }\n\n  .review-text {\n    font-size: 12px; line-height: 1.9; color: #7a7a6a; font-style: italic; margin-bottom: 16px;\n  }\n\n  .review-author { display: flex; align-items: center; gap: 12px; }\n\n  .review-avatar {\n    width: 36px; height: 36px; border-radius: 50%;\n    background: linear-gradient(135deg, #2d5a2d, #5aaa5a);\n    display: flex; align-items: center; justify-content: center;\n    font-size: 12px; font-weight: 600; color: #fff; flex-shrink: 0;\n  }\n\n  .review-name { font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: #5aaa5a; }\n  .review-location { font-size: 9px; letter-spacing: 1px; color: #333; text-transform: uppercase; margin-top: 2px; }\n\n  .verified-purchase {\n    margin-left: auto; font-size: 9px; letter-spacing: 2px;\n    color: #4a8a4a; text-transform: uppercase;\n    border: 1px solid #2d5a2d; padding: 3px 8px;\n  }\n\n  \/* ── CTA ── *\/\n  .cta-section {\n    background: linear-gradient(135deg, #0d1a0d 0%, #162416 100%);\n    border-top: 1px solid #4a8a4a;\n    padding: 50px 40px;\n    text-align: center;\n  }\n\n  .cta-section h3 {\n    font-family: 'Cormorant Garamond', serif;\n    font-size: clamp(20px, 4vw, 34px);\n    color: #a0d4a0; margin-bottom: 12px; letter-spacing: 2px;\n  }\n\n  .cta-section p { font-size: 10px; letter-spacing: 3px; color: #4a6a4a; text-transform: uppercase; }\n\n  \/* ── RESPONSIVE ── *\/\n  @media (max-width: 600px) {\n    .hero, .capacity-section, .reviews-section { padding: 40px 20px; }\n    .rating-section { padding: 20px; gap: 12px; }\n    .rating-divider { display: none; }\n    .size-badge .size-num { font-size: 32px; }\n  }\n\u003c\/style\u003e\n\n\n\n\u003c!-- HERO --\u003e\n\u003cdiv class=\"hero\"\u003e\n  \u003cdiv class=\"hero-tag\"\u003eSwifTrix — Garden Collection\u003c\/div\u003e\n  \u003ch1\u003eHeavy-Duty Reusable\u003cbr\u003eYard \u0026amp; Leaf Bag\u003c\/h1\u003e\n  \u003cp\u003eBuilt for Gardens · Garages · Outdoor Spaces\u003c\/p\u003e\n  \u003cdiv class=\"size-badge\"\u003e\n    \u003cspan class=\"size-num\"\u003e300L\u003c\/span\u003e\n    \u003cspan class=\"size-label\"\u003eCapacity — Our Most Popular Size\u003c\/span\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- RATING --\u003e\n\u003cdiv class=\"rating-section\"\u003e\n  \u003cdiv\u003e\u003cdiv class=\"stars\"\u003e★★★★★\u003c\/div\u003e\u003c\/div\u003e\n  \u003cdiv class=\"rating-text\"\u003e4.8\u003c\/div\u003e\n  \u003cdiv\u003e\n    \u003cdiv class=\"rating-sub\"\u003eOut of 5 Stars\u003c\/div\u003e\n    \u003cdiv class=\"rating-sub\" style=\"margin-top:4px;\"\u003eBased on 300+ Reviews\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"rating-divider\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"verified-badge\"\u003eVerified Purchases Only\u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- WEATHER --\u003e\n\u003cdiv class=\"weather-banner\"\u003e\n  \u003cp\u003e⚡ Weather Resistant — Ready for Any Condition\u003c\/p\u003e\n  \u003cdiv class=\"weather-icons\"\u003e\n    \u003cdiv class=\"weather-icon\"\u003e\n\u003cspan\u003e🌧️\u003c\/span\u003e\u003cspan\u003eRain Ready\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"weather-icon\"\u003e\n\u003cspan\u003e☀️\u003c\/span\u003e\u003cspan\u003eUV Stable\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"weather-icon\"\u003e\n\u003cspan\u003e💧\u003c\/span\u003e\u003cspan\u003eMoisture Proof\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"weather-icon\"\u003e\n\u003cspan\u003e🌿\u003c\/span\u003e\u003cspan\u003eTear Resistant\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"weather-icon\"\u003e\n\u003cspan\u003e❄️\u003c\/span\u003e\u003cspan\u003eAll-Season\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- BENEFITS --\u003e\n\u003cdiv class=\"capacity-section\"\u003e\n  \u003cdiv class=\"section-label\"\u003eThe 300L Advantage\u003c\/div\u003e\n  \u003cdiv class=\"section-title\"\u003eOne Bag. Fewer Trips.\u003cbr\u003eMore Time for What Matters.\u003c\/div\u003e\n  \u003cdiv class=\"section-sub\"\u003eThe 300L size is the sweet spot — large enough to handle a full garden clear-out in one go, yet structured enough to stand upright and fill with ease.\u003c\/div\u003e\n  \u003cdiv class=\"benefits-grid\"\u003e\n    \u003cdiv class=\"benefit-card\"\u003e\n      \u003cspan class=\"benefit-icon\"\u003e🌿\u003c\/span\u003e\n      \u003cdiv class=\"benefit-title\"\u003eMassive 300L Capacity\u003c\/div\u003e\n      \u003cdiv class=\"benefit-desc\"\u003eHolds a full load of leaves, branches, and garden waste in a single trip — no more constant emptying.\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"benefit-card\"\u003e\n      \u003cspan class=\"benefit-icon\"\u003e💪\u003c\/span\u003e\n      \u003cdiv class=\"benefit-title\"\u003eReinforced Handles\u003c\/div\u003e\n      \u003cdiv class=\"benefit-desc\"\u003eDurable carry handles distribute weight evenly, making it easy to drag, lift, or carry even when fully loaded.\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"benefit-card\"\u003e\n      \u003cspan class=\"benefit-icon\"\u003e♻️\u003c\/span\u003e\n      \u003cdiv class=\"benefit-title\"\u003eReusable Season After Season\u003c\/div\u003e\n      \u003cdiv class=\"benefit-desc\"\u003eHeavy-duty material resists ripping and fading. Rinse, fold, and store — ready for next time.\u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"benefit-card\"\u003e\n      \u003cspan class=\"benefit-icon\"\u003e📦\u003c\/span\u003e\n      \u003cdiv class=\"benefit-title\"\u003eFolds Flat for Storage\u003c\/div\u003e\n      \u003cdiv class=\"benefit-desc\"\u003eCollapses completely flat when not in use. Tucks away in a shed, garage, or cupboard without taking up space.\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cdiv class=\"green-divider\"\u003e\u003cspan class=\"green-divider-icon\"\u003e◆ ◆ ◆\u003c\/span\u003e\u003c\/div\u003e\n\n\u003c!-- REVIEWS --\u003e\n\u003cdiv class=\"reviews-section\"\u003e\n  \u003cdiv class=\"section-label\"\u003eCustomer Stories\u003c\/div\u003e\n  \u003cdiv class=\"section-title\"\u003eReal Gardens. Real Results.\u003c\/div\u003e\n\n  \u003cdiv class=\"review-card\"\u003e\n    \u003cdiv class=\"review-stars\"\u003e★★★★★\u003c\/div\u003e\n    \u003cdiv class=\"review-text\"\u003eThe 300L bag is an absolute game changer. I used to make 6 or 7 trips with smaller bags during autumn — now I do it in two. My whole Saturday afternoon is free again. Worth every cent.\u003c\/div\u003e\n    \u003cdiv class=\"review-author\"\u003e\n      \u003cdiv class=\"review-avatar\"\u003eMV\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003cdiv class=\"review-name\"\u003eMark V.\u003c\/div\u003e\n        \u003cdiv class=\"review-location\"\u003ePretoria, ZA\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"verified-purchase\"\u003e✓ Verified\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"review-card\"\u003e\n    \u003cdiv class=\"review-stars\"\u003e★★★★★\u003c\/div\u003e\n    \u003cdiv class=\"review-text\"\u003eI left it outside for three weeks during the rainy season and it held up perfectly. No tearing, no fading. The handles are strong enough to drag it across the lawn fully loaded. Brilliant product.\u003c\/div\u003e\n    \u003cdiv class=\"review-author\"\u003e\n      \u003cdiv class=\"review-avatar\"\u003eAN\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003cdiv class=\"review-name\"\u003eAnele N.\u003c\/div\u003e\n        \u003cdiv class=\"review-location\"\u003eCape Town, ZA\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"verified-purchase\"\u003e✓ Verified\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"review-card\"\u003e\n    \u003cdiv class=\"review-stars\"\u003e★★★★☆\u003c\/div\u003e\n    \u003cdiv class=\"review-text\"\u003eExactly what I needed for my large garden. The 300L size means I can clear the whole back yard in one session. Folds away neatly in the shed too. Would definitely buy again.\u003c\/div\u003e\n    \u003cdiv class=\"review-author\"\u003e\n      \u003cdiv class=\"review-avatar\"\u003eLB\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003cdiv class=\"review-name\"\u003eLinda B.\u003c\/div\u003e\n        \u003cdiv class=\"review-location\"\u003eJohannesburg, ZA\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"verified-purchase\"\u003e✓ Verified\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"review-card\"\u003e\n    \u003cdiv class=\"review-stars\"\u003e★★★★★\u003c\/div\u003e\n    \u003cdiv class=\"review-text\"\u003eMy elderly mum can even use this — the handles make it so easy to move around even when it's full. We cleared the entire garden in one afternoon. It's made gardening genuinely enjoyable again.\u003c\/div\u003e\n    \u003cdiv class=\"review-author\"\u003e\n      \u003cdiv class=\"review-avatar\"\u003eRS\u003c\/div\u003e\n      \u003cdiv\u003e\n        \u003cdiv class=\"review-name\"\u003eRuan S.\u003c\/div\u003e\n        \u003cdiv class=\"review-location\"\u003eDurban, ZA\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"verified-purchase\"\u003e✓ Verified\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- CTA --\u003e\n\u003cdiv class=\"cta-section\"\u003e\n  \u003ch3\u003eClear Your Garden in Half the Time\u003c\/h3\u003e\n  \u003cp\u003eFree Delivery · Premium Packaging · 30-Day Guarantee\u003c\/p\u003e\n\u003c\/div\u003e\n\n\n\n\u003c\/body\u003e","brand":"SwifTrix","offers":[{"title":"1pc","offer_id":46901725888700,"sku":null,"price":359.99,"currency_code":"ZAR","in_stock":true},{"title":"2pc","offer_id":46901725921468,"sku":null,"price":649.99,"currency_code":"ZAR","in_stock":true},{"title":"4pc","offer_id":46901725954236,"sku":null,"price":999.99,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0766\/7941\/3948\/files\/bb74505e-61d1-4b53-9d0e-4ccda10d2273.avif?v=1780652257","url":"https:\/\/www.swiftrix.co.za\/products\/reusable-yard-bag-heavy-duty","provider":"SwifTrix","version":"1.0","type":"link"}