{"product_id":"tucasa™-snack-saver-resealer","title":"Tucasa™ Miniseal","description":"\u003c!-- Tucasa™ Mini Bag Sealer — bold animated DESCRIPTION. No scripts, no images: works even when Shopify strips JavaScript.\n     Shopify: Products \u003e your product \u003e Description \u003e \"\u003c\u003e\" (Show HTML) \u003e paste all \u003e Save. --\u003e\n\u003clink href=\"https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@500;600;700;800\u0026amp;family=Lora:ital,wght@0,500;1,500\u0026amp;display=swap\" rel=\"stylesheet\"\u003e\n\u003cstyle\u003e\n#tcd{--ink:#0d0d0e;--mute:#4d4d49;--line:#d3d6de;--soft:#f8f9fd;max-width:780px;margin:0 auto;font-family:'Poppins','Inter',system-ui,sans-serif;font-size:18px;color:var(--ink);line-height:1.55;text-align:left;-webkit-font-smoothing:antialiased}\n:where(#tcd) *{box-sizing:border-box;margin:0;padding:0}\n#tcd p{font-size:18px;color:#2c2c2a;font-weight:500;line-height:1.6}\n#tcd .k{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--ink)}\n#tcd h2{font-family:'Poppins','Inter',sans-serif;font-size:clamp(30px,8vw,46px);font-weight:800;letter-spacing:-.025em;line-height:1.08;margin:10px 0 16px;color:var(--ink)}\n#tcd h2 em{font-family:'Lora',Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.01em}\n#tcd .hero h2{font-size:clamp(38px,10.5vw,64px);line-height:1.03}\n#tcd section{padding:40px 0;border-top:1px solid var(--line)}\n#tcd section:first-child{border-top:0;padding-top:4px}\n#tcd .tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}\n#tcd .tag{display:inline-block;background:#fff;color:var(--ink);border:2px solid var(--ink);padding:11px 18px;border-radius:999px;font-size:15px;font-weight:700}\n#tcd .tag:first-child{background:var(--ink);color:#fff}\n#tcd .grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}\n#tcd .card{background:var(--soft);border:2px solid #c9ccd6;border-radius:18px;padding:22px;transition:.35s cubic-bezier(.2,.7,.2,1)}\n#tcd .card:hover{border-color:var(--ink);background:#fff;transform:translateY(-4px);box-shadow:0 18px 30px -18px rgba(0,0,0,.35)}\n#tcd .ic{width:54px;height:54px;border-radius:16px;background:#fff;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:27px;line-height:1;margin-bottom:14px;transition:transform .4s}\n#tcd .card:hover .ic{transform:rotate(-8deg) scale(1.1)}\n#tcd .card b{display:block;font-size:21px;font-weight:700;line-height:1.2;margin-bottom:6px}\n#tcd .card span{display:block;font-size:16px;color:#3a3a37;font-weight:500}\n#tcd .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}\n#tcd .stat{background:var(--ink);color:#fff;border-radius:18px;padding:22px 18px;transition:transform .3s}\n#tcd .stat:hover{transform:translateY(-4px)}\n#tcd .num{font-size:clamp(32px,9vw,46px);font-weight:800;line-height:1}\n#tcd .num small{color:#c9c9c4;font-size:.4em;font-weight:600;margin-left:3px}\n#tcd .lab{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#c9c9c4;margin-top:10px;font-weight:600}\n#tcd .row{display:flex;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);font-size:17px}\n#tcd .row span{color:#3a3a37;font-weight:500}#tcd .row b{font-weight:700;text-align:right}\n#tcd .specs{margin-top:10px}\n#tcd .box{display:grid;gap:10px;margin-top:16px}\n#tcd .bx{display:flex;align-items:center;gap:14px;background:var(--soft);border:2px solid var(--ink);border-radius:16px;padding:18px 20px;font-size:17px;font-weight:600}\n#tcd .bx em{font-style:normal;font-size:24px;font-weight:800;min-width:38px}\n#tcd .note{margin-top:16px;font-size:14.5px;color:#2c2c2a;font-weight:600}\n\n\/* ---- CSS-only interactive demo (no scripts needed) ---- *\/\n#tcd .demo{display:flex;flex-direction:column;align-items:center;background:var(--soft);border:2px solid var(--ink);border-radius:24px;padding:18px 16px 22px;margin-top:6px;overflow:hidden}\n#tcd .stage{order:-1;position:relative;width:100%;max-width:380px;height:230px}\n#tcd .stage i,#tcd .stage b,#tcd .stage div{display:block;position:absolute}\n#tcd .stage .wt,#tcd .stage .vg{left:0;top:0;width:100%;height:100%;margin:0}\n#tcd .tryd summary{list-style:none;cursor:pointer;display:inline-block;background:var(--ink);color:#fff;font-weight:700;font-size:16px;line-height:54px;min-height:54px;padding:0 34px;border-radius:999px;margin-top:8px;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .2s}\n#tcd .tryd summary::-webkit-details-marker{display:none}\n#tcd .tryd summary:active{transform:scale(.95)}\n#tcd .tryd summary:focus-visible{outline:3px solid var(--ink);outline-offset:3px}\n#tcd .tryd .b,#tcd .cap .b{display:none}\n#tcd .tryd[open] .a,#tcd .tryd[open]~.cap .a{display:none}\n#tcd .tryd[open] .b,#tcd .tryd[open]~.cap .b{display:inline}\n#tcd .cap{margin-top:12px;font-size:15px;color:#2c2c2a;font-weight:600;text-align:center}\n#tcd .tryd{text-align:center}\n\/* spray *\/\n#tcd .bt{left:50%;bottom:22px;width:78px;height:140px;margin-left:-39px;border:3px solid var(--ink);border-radius:18px;background:#eef1f3;overflow:hidden}\n#tcd .liq{left:0;right:0;bottom:0;height:64%;background:#e3bf4a;opacity:.9;transition:height .9s}\n#tcd .tryd[open]~.stage .liq{height:52%}\n#tcd .nk{left:50%;bottom:160px;width:26px;height:20px;margin-left:-13px;border:3px solid var(--ink);background:#cfd3d6}\n#tcd .hd{left:50%;bottom:177px;width:54px;height:26px;margin-left:-27px;border-radius:9px;background:var(--ink)}\n#tcd .hd::before{content:\"\";position:absolute;left:-22px;top:8px;width:24px;height:11px;border-radius:4px;background:var(--ink)}\n#tcd .tryd[open]~.stage .hd{animation:tprs .4s}\n@keyframes tprs{50%{transform:translateY(7px)}}\n#tcd .mist{left:50%;bottom:187px;width:0;height:0;margin-left:-52px}\n#tcd .mist i{width:7px;height:7px;border-radius:50%;background:#d9b13c;opacity:0}\n#tcd .tryd[open]~.stage .mist i{animation:tmst 1.1s ease-out both;animation-delay:var(--d)}\n@keyframes tmst{0%{transform:translate(0,0) scale(.5);opacity:.95}100%{transform:translate(var(--x),var(--y)) scale(1.7);opacity:0}}\n\/* faucet *\/\n#tcd .col{left:50%;top:40px;width:36px;height:150px;margin-left:-150px;border:3px solid var(--ink);border-radius:12px;background:#d5d8dc}\n#tcd .arm{left:50%;top:40px;width:150px;height:28px;margin-left:-150px;border:3px solid var(--ink);border-radius:14px;background:#d5d8dc}\n#tcd .fx{left:50%;top:48px;width:58px;height:58px;margin-left:-16px;border-top:13px solid var(--ink);border-right:13px solid var(--ink);border-radius:0 58px 0 0;transform-origin:16px 6px;transition:transform .9s cubic-bezier(.3,.8,.3,1)}\n#tcd .fx::before{content:\"\";position:absolute;right:-19px;bottom:-12px;width:26px;height:17px;border-radius:5px;background:var(--ink)}\n#tcd .jt{right:-16px;top:60px;width:6px;height:105px;background:repeating-linear-gradient(180deg,#5aa2e0 0 8px,transparent 8px 16px);opacity:0;transition:opacity .4s}\n#tcd .tryd[open]~.stage .fx{transform:rotate(36deg)}\n#tcd .tryd[open]~.stage .jt{opacity:1;animation:tflow .45s linear infinite}\n@keyframes tflow{to{background-position:0 16px}}\n#tcd .bs{left:50%;bottom:14px;width:250px;height:6px;margin-left:-125px;border-radius:3px;background:rgba(0,0,0,.12)}\n\/* strainer *\/\n#tcd .bw{left:50%;top:104px;width:140px;height:70px;margin-left:-70px;border:3px solid var(--ink);border-top:0;border-radius:0 0 70px 70px;background-color:#fff;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.35) 0 1px,transparent 1px 8px),repeating-linear-gradient(90deg,rgba(0,0,0,.35) 0 1px,transparent 1px 8px)}\n#tcd .rm{left:50%;top:100px;width:158px;height:8px;margin-left:-79px;border-radius:4px;background:var(--ink)}\n#tcd .hl{left:50%;top:99px;width:84px;height:12px;margin-left:79px;border:3px solid var(--ink);border-radius:6px;background:#c4c8cc}\n#tcd .vg i{width:16px;height:16px;border-radius:50%;border:2px solid var(--ink);top:86px;opacity:0}\n#tcd .tryd[open]~.stage .vg i{animation:tdrp .65s cubic-bezier(.3,1.4,.5,1) both;animation-delay:var(--d)}\n@keyframes tdrp{from{transform:translateY(-90px);opacity:0}to{transform:none;opacity:1}}\n#tcd .wt b{width:5px;height:11px;border-radius:50%;background:#5aa2e0;top:30px;opacity:0}\n#tcd .tryd[open]~.stage .wt b{animation:tfal 1s ease-in infinite;animation-delay:var(--d)}\n@keyframes tfal{0%{transform:translateY(0);opacity:.95}100%{transform:translateY(165px);opacity:0}}\n#tcd .gr{left:50%;bottom:14px;width:250px;height:6px;margin-left:-125px;border-radius:3px;background:rgba(0,0,0,.12)}\n\/* sealer *\/\n#tcd .bg{left:50%;top:78px;width:164px;height:122px;margin-left:-82px;border:3px solid var(--ink);border-radius:4px 4px 18px 18px;background:#fff}\n#tcd .bg i{width:20px;height:20px;border-radius:50%;background:#e3bf4a}\n#tcd .rf{left:50%;top:62px;width:172px;height:0;margin-left:-86px;border-top:4px dashed var(--ink);transition:opacity .6s .5s}\n#tcd .tryd[open]~.stage .rf{opacity:.15}\n#tcd .sl{left:50%;top:76px;width:0;height:6px;margin-left:-80px;border-radius:3px;background:var(--ink);transition:width 1.4s cubic-bezier(.45,.1,.3,1)}\n#tcd .tryd[open]~.stage .sl{width:160px}\n#tcd .pl{left:50%;top:52px;width:74px;height:32px;margin-left:-96px;border-radius:16px;background:#1d3558;border:3px solid var(--ink);transition:transform 1.4s cubic-bezier(.45,.1,.3,1);z-index:2}\n#tcd .pl::before,#tcd .pl::after{content:\"\";position:absolute;top:8px;width:11px;height:11px;border-radius:50%;background:var(--ink)}\n#tcd .pl::before{left:12px}#tcd .pl::after{left:30px}\n#tcd .tryd[open]~.stage .pl{transform:translateX(124px)}\n\/* scroll-in animation: only where supported, otherwise everything is simply visible *\/\n@supports (animation-timeline:view()){\n  #tcd .r{animation:trise linear both;animation-timeline:view();animation-range:entry 0% entry 45%}\n  @keyframes trise{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}\n}\n@media(max-width:560px){#tcd .grid{grid-template-columns:1fr}#tcd .stats{grid-template-columns:1fr 1fr}#tcd section{padding:34px 0}}\n@media(hover:none){#tcd .card:hover,#tcd .stat:hover{transform:none;box-shadow:none;border-color:#c9ccd6;background:var(--soft)}}\n@media(prefers-reduced-motion:reduce){#tcd *{animation:none!important;transition:none!important}}\n\u003c\/style\u003e\n\n\u003cdiv id=\"tcd\"\u003e\n\n\u003csection class=\"hero\"\u003e\n  \u003cdiv class=\"k r\"\u003eTucasa™ · For your kitchen\u003c\/div\u003e\n  \u003ch2 class=\"r\"\u003eReseal it. Store it. \u003cem\u003eSave the rest.\u003c\/em\u003e ♻️\u003c\/h2\u003e\n  \u003cp class=\"r\"\u003eEnjoy your snacks now and tuck the rest away for later. The Tucasa™ Mini Bag Sealer helps you reseal compatible bags after opening, without transferring everything into another container.\u003c\/p\u003e\n  \u003cdiv class=\"tags r\"\u003e\n\u003cspan class=\"tag\"\u003eBlue or white\u003c\/span\u003e\u003cspan class=\"tag\"\u003e9.5 cm\u003c\/span\u003e\u003cspan class=\"tag\"\u003eUSB-C\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003csection\u003e\n  \u003cdiv class=\"k r\"\u003eTry it\u003c\/div\u003e\n  \u003cdiv class=\"demo r\"\u003e\n    \u003cdetails class=\"tryd\"\u003e\u003csummary\u003e\u003cspan class=\"a\"\u003eTap to reseal\u003c\/span\u003e\u003cspan class=\"b\"\u003eTry again\u003c\/span\u003e\u003c\/summary\u003e\u003c\/details\u003e\n    \u003cdiv class=\"stage\"\u003e\n\u003cdiv class=\"bg\"\u003e\n\u003ci style=\"left:22px;top:48px\"\u003e\u003c\/i\u003e\u003ci style=\"left:62px;top:70px\"\u003e\u003c\/i\u003e\u003ci style=\"left:104px;top:44px\"\u003e\u003c\/i\u003e\u003ci style=\"left:120px;top:78px\"\u003e\u003c\/i\u003e\u003ci style=\"left:84px;top:22px\"\u003e\u003c\/i\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"rf\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"sl\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"pl\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n    \u003cp class=\"cap\"\u003e\u003cspan class=\"a\"\u003eTap the button to see it in action.\u003c\/span\u003e\u003cspan class=\"b\"\u003eResealed ✓ Snacks tucked away for later.\u003c\/span\u003e\u003c\/p\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003csection\u003e\n  \u003cdiv class=\"k r\"\u003eWhy you’ll love it\u003c\/div\u003e\n  \u003ch2 class=\"r\"\u003eA tidier pantry, \u003cem\u003eone bag at a time.\u003c\/em\u003e ✨\u003c\/h2\u003e\n  \u003cdiv class=\"grid\"\u003e\n    \u003cdiv class=\"card r\"\u003e\n\u003cdiv class=\"ic\"\u003e🔒\u003c\/div\u003e\n\u003cb\u003eReseal in a moment\u003c\/b\u003e\u003cspan\u003eClose compatible bags again after opening.\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"card r\"\u003e\n\u003cdiv class=\"ic\"\u003e📦\u003c\/div\u003e\n\u003cb\u003eKeep the original pack\u003c\/b\u003e\u003cspan\u003eNo transferring into containers, and fewer to wash.\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"card r\"\u003e\n\u003cdiv class=\"ic\"\u003e🗄️\u003c\/div\u003e\n\u003cb\u003eDrawer-sized\u003c\/b\u003e\u003cspan\u003eAt just 9.5 cm long, it’s ready when you need it.\u003c\/span\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"card r\"\u003e\n\u003cdiv class=\"ic\"\u003e🔋\u003c\/div\u003e\n\u003cb\u003eRecharge and reuse\u003c\/b\u003e\u003cspan\u003eUSB-C charging, with a cable included.\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003csection\u003e\n  \u003cdiv class=\"k r\"\u003eAt a glance\u003c\/div\u003e\n  \u003cdiv class=\"stats\"\u003e\n    \u003cdiv class=\"stat r\"\u003e\n\u003cdiv class=\"num\"\u003e9.5\u003csmall\u003ecm\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"lab\"\u003eLength\u003c\/div\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"stat r\"\u003e\n\u003cdiv class=\"num\"\u003e150\u003csmall\u003emAh\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"lab\"\u003eBattery\u003c\/div\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"stat r\"\u003e\n\u003cdiv class=\"num\"\u003e5\u003csmall\u003eW\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"lab\"\u003ePower\u003c\/div\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"stat r\"\u003e\n\u003cdiv class=\"num\"\u003eUSB-C\u003csmall\u003e\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"lab\"\u003eCharging\u003c\/div\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"specs r\"\u003e\n    \u003cdiv class=\"row\"\u003e\n\u003cspan\u003eDimensions\u003c\/span\u003e\u003cb\u003e9.5 × 4.5 × 3.3 cm\u003c\/b\u003e\n\u003c\/div\u003e\n    \u003cdiv class=\"row\"\u003e\n\u003cspan\u003eColours\u003c\/span\u003e\u003cb\u003eBlue or white\u003c\/b\u003e\n\u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n\n\u003csection\u003e\n  \u003cdiv class=\"k r\"\u003eWhat’s included\u003c\/div\u003e\n  \u003cdiv class=\"box\"\u003e\n    \u003cdiv class=\"bx r\"\u003e\n\u003cem\u003e1 ×\u003c\/em\u003eMini Bag Sealer in your selected colour\u003c\/div\u003e\n    \u003cdiv class=\"bx r\"\u003e\n\u003cem\u003e1 ×\u003c\/em\u003eUSB-C charging cable\u003c\/div\u003e\n    \u003cdiv class=\"bx r\"\u003e\n\u003cem\u003e1 ×\u003c\/em\u003eQuick instruction guide\u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/section\u003e\n  \u003cp class=\"note r\"\u003eOne sealer per order. Check the included instructions for suitable bag materials and correct use.\u003c\/p\u003e\n\n\u003c\/div\u003e","brand":"tucasa","offers":[{"title":"White","offer_id":50749764141314,"sku":null,"price":549.0,"currency_code":"ZAR","in_stock":true},{"title":"Blue","offer_id":50749764174082,"sku":null,"price":549.0,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0843\/9496\/7298\/files\/miniseal-and-tucasa-packaging-on-a-white-background.png?v=1791963621","url":"https:\/\/www.tucasa.co.za\/products\/tucasa%e2%84%a2-snack-saver-resealer","provider":"tucasa","version":"1.0","type":"link"}