{"title":"Denim","description":"\u003cp\u003eCotton denim cut to order by the half yard, in weights from midweight to heavyweight.\u003c\/p\u003e\n\u003cp\u003eDenim is a warp-dyed cotton twill, which is what gives it a coloured face, a pale back, and the particular way it fades and softens with wear. It is one of the most forgiving fabrics to work with once you match the weight to the project, and one of the most durable things you can sew.\u003c\/p\u003e\n\u003cp\u003eOur denim comes from a mix of sources. Some of it is deadstock mill cloth from Canadian workwear manufacturers, bought for production runs and never cut. Some is stocked material we carry continuously.\u003c\/p\u003e","products":[{"product_id":"11-5-oz-indigo-denim-fabric-deep-blue-66-wide","title":"11.5 oz Indigo Denim Fabric, Deep Blue, 66\" Wide","description":"\u003cp\u003eA deep indigo cotton denim in a classic 3x1 right-hand twill, woven at 385 gsm (11.35 oz\/yd²) and an unusually generous 66\" wide.\u003c\/p\u003e\n\u003cp\u003eThis is leftover mill stock from a Canadian workwear manufacturer, cloth specified for production and never cut. That is a useful thing to know about a fabric. Workwear makers buy for garments that get worn hard every day and are expected to survive it, so the cloth has to hold up to a standard no one applies to fabric sold by the metre. This is the denim that met it.\u003c\/p\u003e\n\u003cp\u003eThe face is a rich, fully saturated blue with fine vertical slub running through the warp, giving the cloth a subtle irregular texture rather than a flat machine finish. The back is the pale grey weft-faced twill you'd expect from proper denim construction. It has body and structure without being stiff, and it will soften and develop character with wear and washing.\u003c\/p\u003e\n\u003cp\u003eAt 11.5 oz this sits in the sweet spot: heavy enough for outerwear and hard-use projects, light enough to handle on a domestic machine. The 66\" width is worth noting too, since denim is usually sold at 58\" or 60\". A half yard here gives you roughly 14% more usable cloth than the same cut from a standard 58\" bolt, which matters on wide pattern pieces like jacket backs and apron bodies.\u003c\/p\u003e\n\u003cp\u003eBest for chore coats, work jackets, aprons, tool rolls, jeans, overalls, totes, duffels, and bag panels. Sold by the half yard with a one yard minimum, cut continuously from the roll.\u003c\/p\u003e\n\u003ch4 class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\"\u003e\u003cstrong\u003eConstruction\u003c\/strong\u003e\u003c\/h4\u003e\n\u003cdiv dir=\"ltr\" class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\"\u003e\n\u003ctable class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003eElement\u003c\/th\u003e\n\u003cth scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003eDetail\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeave\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e3x1 right-hand twill\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eFace\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eIndigo-dyed cotton warp\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eBack\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eUndyed weft, pale grey twill\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eYarn character\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eSlub warp, fine vertical texture\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003ch4 class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\"\u003e\u003cstrong\u003eSpecifications\u003c\/strong\u003e\u003c\/h4\u003e\n\u003cdiv dir=\"ltr\" class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\"\u003e\n\u003ctable style=\"width: 100.089%; height: 168.75px;\" class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003cth style=\"width: 37.4%; height: 19.5938px;\" scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003eSpec\u003c\/th\u003e\n\u003cth style=\"width: 59.6641%; height: 19.5938px;\" scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003eDetail\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eContent\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eCotton\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeight\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e385 gsm (11.35 oz\/yd²)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWidth\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e168 cm (66\")\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeight per linear metre\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e645 g\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 31.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 31.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eSold by\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 31.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e1\/2 yard, cut continuously from the roll\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eColours\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eDeep Blue\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 37.4%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eOrigin\u003c\/td\u003e\n\u003ctd style=\"width: 59.6641%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e\u003cbr\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003ch4 class=\"font-claude-response-body break-words whitespace-normal\" dir=\"ltr\"\u003e\u003cstrong\u003ePerformance\u003c\/strong\u003e\u003c\/h4\u003e\n\u003cdiv dir=\"ltr\" class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\"\u003e\n\u003ctable style=\"width: 100.089%; height: 117.563px;\" class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003cth style=\"width: 24.095%; height: 19.5938px;\" scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003eTest\u003c\/th\u003e\n\u003cth style=\"width: 72.969%; height: 19.5938px;\" scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003eResult\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 24.095%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eColour fastness\u003c\/td\u003e\n\u003ctd style=\"width: 72.969%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eIndigo will crock when new and fade with wear\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 24.095%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eStretch\u003c\/td\u003e\n\u003ctd style=\"width: 72.969%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eN\/A\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 24.095%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eNeedle\u003c\/td\u003e\n\u003ctd style=\"width: 72.969%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e90\/14 or 100\/16 denim\/jeans\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 24.095%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eThread\u003c\/td\u003e\n\u003ctd style=\"width: 72.969%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eTex 40 to Tex 70 bonded or spun polyester\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 24.095%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eBest for\u003c\/td\u003e\n\u003ctd style=\"width: 72.969%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eChore coats, aprons, jeans, bags, tool rolls\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003ch4 dir=\"ltr\" class=\"text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold\"\u003eCare\u003c\/h4\u003e\n\u003cp\u003eMachine wash cool, tumble dry low. Do not bleach. Iron medium.\u003c\/p\u003e\n\u003cp\u003eIndigo will transfer onto lighter fabrics for the first several washes, so wash separately to begin with and expect some colour on your hands and machine while sewing.\u003c\/p\u003e\n\u003cp\u003eWe recommend pre-washing your fabric the same way you plan to launder the finished piece, and doing it before you cut. This settles any shrinkage while it can still be measured into your pattern rather than after your seams are sewn.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"Tough Duck","offers":[{"title":"1\/2 yard","offer_id":43198811111633,"sku":"2311-TDFABRIC","price":10.45,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0600\/4414\/8945\/files\/11.5oz-Indigo-Denim-Fabric-Deep-Blue-385gsm_2.jpg?v=1785170304"},{"product_id":"15-oz-heavyweight-indigo-denim-fabric-deep-blue-60-wide","title":"15 oz Heavyweight Indigo Denim Fabric, Mill Blue, 60\" Wide","description":"\u003cp\u003eA deep, near-navy indigo cotton denim in a 3x1 right-hand twill, woven at 502 gsm (14.81 oz\/yd²). This is proper heavyweight cloth.\u003c\/p\u003e\n\u003cp\u003eLike the rest of this denim, it is leftover mill stock from a Canadian workwear manufacturer, specified for production and never cut. Weight like this is a deliberate choice on a production line. It costs more per garment, it is slower to sew, and a manufacturer only accepts both when the finished piece has to survive daily wear for years. That is the standard this cloth was bought to meet.\u003c\/p\u003e\n\u003cp\u003eThe face is a dark saturated indigo with a fine, tight weave, and the back shows a pronounced pale grey twill line, crisper and more defined than you see on lighter denims. It has real structure and stands up on its own. This is the weight range used for rigid jeans, work jackets, and industrial workwear, the kind of cloth that breaks in over months rather than washes.\u003c\/p\u003e\n\u003cp\u003eAt 15 oz you should plan for it. You'll want a 100\/16 or 110\/18 jeans needle, a walking foot if you have one, and patience at seam intersections where four or more layers stack up. Flat-felled seams and heavy topstitching suit it well.\u003c\/p\u003e\n\u003cp\u003eBest for jeans, chore coats, work jackets, overalls, heavy-duty aprons, tool rolls, and bags that need to hold their shape. Sold by the half yard with a one yard minimum, cut continuously from the roll.\u003c\/p\u003e\n\u003ch4 dir=\"ltr\" class=\"font-claude-response-body break-words whitespace-normal\"\u003e\u003cstrong\u003eConstruction\u003c\/strong\u003e\u003c\/h4\u003e\n\u003cdiv class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\" dir=\"ltr\"\u003e\n\u003ctable class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr\u003e\n\u003cth class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\"\u003e\u003c\/th\u003e\n\u003cth class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\"\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeave\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e3x1 right-hand twill\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eFace\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eIndigo-dyed cotton warp\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eBack\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eUndyed weft, pale grey twill, pronounced line\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eYarn character\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eTight, dense, heavy yarn count\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003cp dir=\"ltr\" class=\"font-claude-response-body break-words whitespace-normal\"\u003e\u003cstrong\u003eSpecifications\u003c\/strong\u003e\u003c\/p\u003e\n\u003cdiv class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\" dir=\"ltr\"\u003e\n\u003ctable class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr\u003e\n\u003cth class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\"\u003e\u003c\/th\u003e\n\u003cth class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\"\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eContent\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eCotton\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeight\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e502 gsm (14.81 oz\/yd²)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWidth\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e152 cm (60\")\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeight per half yard\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e350 g\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eSold by\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eHalf yard, one yard minimum\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eColours\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eMill Blue\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eOrigin\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e\u003cbr\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003ch4 dir=\"ltr\" class=\"font-claude-response-body break-words whitespace-normal\"\u003e\u003cstrong\u003ePerformance\u003c\/strong\u003e\u003c\/h4\u003e\n\u003cdiv class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\" dir=\"ltr\"\u003e\n\u003ctable class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\" style=\"width: 100.089%; height: 97.969px;\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr style=\"height: 0px;\"\u003e\n\u003cth class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\" style=\"width: 21.9424%; height: 0px;\"\u003e\u003c\/th\u003e\n\u003cth class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\" scope=\"col\" style=\"width: 77.6978%; height: 0px;\"\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 21.9424%; height: 19.5938px;\"\u003eColour fastness\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 77.6978%; height: 19.5938px;\"\u003eIndigo will crock when new and fade with wear\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 21.9424%; height: 19.5938px;\"\u003eStretch\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 77.6978%; height: 19.5938px;\"\u003eN\/A\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 21.9424%; height: 19.5938px;\"\u003eNeedle\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 77.6978%; height: 19.5938px;\"\u003e100\/16 or 110\/18 denim\/jeans\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 21.9424%; height: 19.5938px;\"\u003eThread\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 77.6978%; height: 19.5938px;\"\u003eTex 70 bonded or spun polyester\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 21.9424%; height: 19.5938px;\"\u003eBest for\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\" style=\"width: 77.6978%; height: 19.5938px;\"\u003eJeans, chore coats, overalls, workwear, structured bags\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003ch4 dir=\"ltr\" class=\"text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold\"\u003eCare\u003c\/h4\u003e\n\u003cp\u003eMachine wash cool, tumble dry low. Do not bleach. Iron medium.\u003c\/p\u003e\n\u003cp\u003eIndigo will transfer onto lighter fabrics for the first several washes, so wash separately to begin with and expect some colour on your hands and machine while sewing.\u003c\/p\u003e\n\u003cp\u003eWe recommend pre-washing your fabric the same way you plan to launder the finished piece, and doing it before you cut. This settles any shrinkage while it can still be measured into your pattern rather than after your seams are sewn.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"Tough Duck","offers":[{"title":"1\/2 yard","offer_id":43198811144401,"sku":"2311-TDFABRIC","price":12.45,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0600\/4414\/8945\/files\/15oz-heavyweight-cotton-denim-deep-blue-502gsm.jpg?v=1785171747"},{"product_id":"13-5-oz-indigo-denim-fabric-work-blue-58-wide","title":"13.5 oz Indigo Denim Fabric, Work Blue, 58\" Wide","description":"\u003cp\u003eA dark indigo cotton denim in a 3x1 right-hand twill, woven at 460 gsm (13.57 oz\/yd²).\u003c\/p\u003e\n\u003cp\u003eLike the rest of this denim, it is leftover mill stock from a Canadian workwear manufacturer, specified for production and never cut. What stands out on this one is how even it is. A production line cuts hundreds of identical garments from a single roll and cannot tolerate a face that shifts partway through, so consistency is something a workwear buyer pays for and inspects. You can see it here in the uniformity of the weave.\u003c\/p\u003e\n\u003cp\u003eThe face is a deep, near-navy indigo with a notably clean, tight surface and very little slub. The back is a grey-blue twill. It has real structure and holds a crease, but the fine grain keeps it looking more refined than rugged, which suits pieces you want to wear well beyond the workshop.\u003c\/p\u003e\n\u003cp\u003eAt 13.5 oz this is solidly heavyweight and still workable on a domestic machine. A 100\/16 jeans needle and a slower pass at seam intersections will get you through it. Flat-felled seams and topstitching in tonal indigo, black, or contrast gold all suit it.\u003c\/p\u003e\n\u003cp\u003eBest for jeans, chore coats, work jackets, overalls, aprons, tool rolls, and structured bags. Sold by the half yard with a one yard minimum, cut continuously from the roll.\u003c\/p\u003e\n\u003cp\u003ePart of a three-weight range from the same Canadian workwear source: 11.5 oz Deep Blue at 66\" wide for aprons, bags, and lighter garments, this 13.5 oz Work Blue for jeans and chore coats, and 15 oz Mill Blue for maximum rigidity and structure.\u003c\/p\u003e\n\u003ch4 dir=\"ltr\" class=\"text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold\"\u003eConstruction\u003c\/h4\u003e\n\u003cdiv dir=\"ltr\" class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\"\u003e\n\u003ctable style=\"width: 100.089%; height: 117.563px;\" class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr style=\"height: 0px;\"\u003e\n\u003cth style=\"width: 25.9091%; height: 0px;\" scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003e\u003c\/th\u003e\n\u003cth style=\"width: 71.155%; height: 0px;\" scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 25.9091%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeave\u003c\/td\u003e\n\u003ctd style=\"width: 71.155%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e3x1 right-hand twill\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 25.9091%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eFace\u003c\/td\u003e\n\u003ctd style=\"width: 71.155%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eIndigo-dyed cotton warp\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 25.9091%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eBack\u003c\/td\u003e\n\u003ctd style=\"width: 71.155%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eUndyed weft, grey-blue twill\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 25.9091%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eYarn character\u003c\/td\u003e\n\u003ctd style=\"width: 71.155%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eFine, tight, clean face with minimal slub\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 25.9091%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eEdge\u003c\/td\u003e\n\u003ctd style=\"width: 71.155%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWide-loom mill edge, not selvedge\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 19.5938px;\"\u003e\n\u003ctd style=\"width: 25.9091%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eFinish\u003c\/td\u003e\n\u003ctd style=\"width: 71.155%; height: 19.5938px;\" class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003ch4 dir=\"ltr\" class=\"text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold\"\u003eSpecifications\u003c\/h4\u003e\n\u003cdiv dir=\"ltr\" class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\"\u003e\n\u003ctable class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003e\u003c\/th\u003e\n\u003cth scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eContent\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eCotton\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeight\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e460 gsm (13.57 oz\/yd²)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWidth\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e147 cm (58\")\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWeight per half yard\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e310 g\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eSold by\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eHalf yard, one yard minimum\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eColour\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eWork Blue\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eSource\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eDeadstock, Canadian workwear manufacturer\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003ch4 dir=\"ltr\" class=\"text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold\"\u003ePerformance\u003c\/h4\u003e\n\u003cdiv dir=\"ltr\" class=\"overflow-x-auto w-full px-2 mb-6 print:overflow-x-visible\"\u003e\n\u003ctable class=\"min-w-full border-collapse text-sm leading-[1.7] whitespace-normal\"\u003e\n\u003cthead class=\"text-left\"\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003e\u003c\/th\u003e\n\u003cth scope=\"col\" class=\"text-text-100 border-b-0.5 border-[hsl(var(--border-300)\/0.6)] py-2 pr-4 align-top font-bold\"\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eColour fastness\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eIndigo will crock when new and fade with wear\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eStretch\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eN\/A\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eNeedle\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003e100\/16 denim\/jeans\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eThread\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eTex 70 bonded or spun polyester\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eBest for\u003c\/td\u003e\n\u003ctd class=\"border-b-0.5 border-[hsl(var(--border-300)\/0.3)] py-2 pr-4 align-top\"\u003eJeans, chore coats, overalls, aprons, structured bags\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003ch4 dir=\"ltr\" class=\"text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold\"\u003eCare\u003c\/h4\u003e\n\u003cp\u003eMachine wash cool, tumble dry low. Do not bleach. Iron medium.\u003c\/p\u003e\n\u003cp\u003eIndigo will transfer onto lighter fabrics for the first several washes, so wash separately to begin with and expect some colour on your hands and machine while sewing.\u003c\/p\u003e\n\u003cp\u003eWe recommend pre-washing your fabric the same way you plan to launder the finished piece, and doing it before you cut. This settles any shrinkage while it can still be measured into your pattern rather than after your seams are sewn.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"Tough Duck","offers":[{"title":"1\/2 yard","offer_id":43198811177169,"sku":"2311-TDFABRIC","price":11.45,"currency_code":"CAD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0600\/4414\/8945\/files\/indigo-denim-13-5oz-work-blue-58-inch_2.jpg?v=1785172456"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0600\/4414\/8945\/collections\/15oz-heavyweight-cotton-denim-deep-blue-502gsm.jpg?v=1785173094","url":"https:\/\/refasten.ca\/collections\/denim.oembed","provider":"ReFasten","version":"1.0","type":"link"}