{"product_id":"moroccan-berber-patchwork-rug-hand-knotted-wool-25-42-in","title":"Moroccan Berber Patchwork Rug – Hand-Knotted Wool – 25 × 42 in","description":"\u003cstyle\u003e\n  .tr-story {\n    --tr-bg: #faf7f2;\n    --tr-bg-warm: #E6E6E6;\n    --tr-bg-deep: #d9d9d9;\n    --tr-ink: #2b2520;\n    --tr-ink-soft: #6b5f56;\n    --tr-line: #cfcfcf;\n    --tr-terracotta: #b85940;\n    --tr-indigo: #4a7ba8;\n    --tr-indigo-deep: #2d4a6b;\n    --tr-ochre: #c89846;\n    --tr-green: #5a7a4e;\n    --tr-red: #a8312a;\n    --tr-serif: 'Cormorant Garamond', Georgia, serif;\n    --tr-sans: 'Inter', system-ui, sans-serif;\n    background: var(--tr-bg-warm);\n    padding: 80px 40px;\n    position: relative;\n    overflow: hidden;\n    font-family: var(--tr-sans);\n    color: var(--tr-ink);\n    line-height: 1.6;\n    font-size: 15px;\n    margin: 30px 0;\n    box-sizing: border-box;\n  }\n  .tr-story *, .tr-story *::before, .tr-story *::after { box-sizing: border-box; }\n  .tr-story::before { content: \"\"; position: absolute; top: 50px; right: -40px; width: 180px; height: 180px; background: var(--tr-indigo); opacity: 0.04; transform: rotate(45deg); pointer-events: none; }\n  .tr-story::after  { content: \"\"; position: absolute; bottom: 60px; left: -50px; width: 140px; height: 140px; background: var(--tr-red); opacity: 0.03; transform: rotate(45deg); pointer-events: none; }\n  .tr-inner { max-width: 900px; margin: 0 auto; position: relative; z-index: 1; }\n  .tr-header { text-align: center; margin-bottom: 40px; }\n  .tr-eyebrow { font-size: 11px; letter-spacing: 3px; text-transform: uppercase; color: var(--tr-terracotta); margin-bottom: 16px; font-weight: 500; display: inline-block; }\n  .tr-eyebrow::before, .tr-eyebrow::after { content: \"—\"; margin: 0 10px; color: var(--tr-terracotta); opacity: 0.5; }\n  .tr-title { font-family: var(--tr-serif); font-size: 38px; font-weight: 400; line-height: 1.2; letter-spacing: -0.4px; margin-bottom: 18px; max-width: 680px; margin-left: auto; margin-right: auto; color: var(--tr-ink); }\n  .tr-lede { font-family: var(--tr-serif); font-size: 18px; font-style: italic; color: var(--tr-ink-soft); max-width: 600px; margin: 0 auto; line-height: 1.55; }\n  .tr-opening { max-width: 680px; margin: 0 auto 36px; }\n  .tr-opening p { font-size: 16px; line-height: 1.85; color: var(--tr-ink); margin-bottom: 20px; }\n  .tr-opening p strong { font-weight: 500; color: var(--tr-ink); background: linear-gradient(transparent 70%, rgba(74,123,168,0.20) 70%); padding: 0 2px; }\n  .tr-opening \u003e p:first-child::first-letter { font-family: var(--tr-serif); font-size: 56px; float: left; line-height: 0.9; margin: 5px 10px 0 0; color: var(--tr-terracotta); font-weight: 500; }\n  .tr-accordion { max-width: 680px; margin: 0 auto 40px; border-top: 1px solid var(--tr-line); }\n  .tr-acc-item { border-bottom: 1px solid var(--tr-line); }\n  .tr-acc-summary { list-style: none; cursor: pointer; padding: 20px 0; display: flex; justify-content: space-between; align-items: center; gap: 14px; font-family: var(--tr-serif); font-size: 21px; font-weight: 500; color: var(--tr-ink); transition: color 0.2s; }\n  .tr-acc-summary:hover { color: var(--tr-terracotta); }\n  .tr-acc-summary::-webkit-details-marker { display: none; }\n  .tr-acc-summary::after { content: \"+\"; font-size: 26px; color: var(--tr-terracotta); transition: transform 0.3s ease; line-height: 1; flex-shrink: 0; font-weight: 300; }\n  .tr-acc-item[open] .tr-acc-summary::after { transform: rotate(45deg); }\n  .tr-acc-content { padding: 0 0 24px; animation: trFadeIn 0.4s ease; }\n  @keyframes trFadeIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }\n  .tr-acc-content p { font-size: 15px; line-height: 1.85; color: var(--tr-ink-soft); margin-bottom: 14px; }\n  .tr-acc-content p strong { color: var(--tr-ink); font-weight: 500; }\n  .tr-quote { font-family: var(--tr-serif); font-style: italic; font-size: 20px; line-height: 1.5; color: var(--tr-ink); text-align: center; margin: 40px auto; max-width: 660px; padding: 28px 18px; border-top: 1px solid var(--tr-line); border-bottom: 1px solid var(--tr-line); position: relative; }\n  .tr-quote::before { content: \"✦\"; position: absolute; top: -11px; left: 50%; transform: translateX(-50%); background: var(--tr-bg-warm); color: var(--tr-terracotta); padding: 0 12px; font-size: 16px; }\n  .tr-quote-attr { font-family: var(--tr-sans); font-style: normal; font-size: 11px; letter-spacing: 2.5px; text-transform: uppercase; color: var(--tr-ink-soft); margin-top: 14px; display: block; }\n  .tr-dye-cat { font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--tr-terracotta); font-weight: 600; margin-bottom: 14px; padding-top: 10px; }\n  .tr-dye-cat:first-child { padding-top: 0; }\n  .tr-dyes-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-bottom: 24px; }\n  .tr-dye { text-align: center; }\n  .tr-dye-swatch { width: 56px; height: 56px; border-radius: 50%; margin: 0 auto 10px; box-shadow: inset 0 0 0 3px var(--tr-bg-warm), 0 0 0 1px var(--tr-line); }\n  .tr-dye-name { font-family: var(--tr-serif); font-size: 15px; font-weight: 500; margin-bottom: 2px; color: var(--tr-ink); }\n  .tr-dye-source { font-size: 11px; color: var(--tr-ink-soft); letter-spacing: 0.2px; line-height: 1.4; }\n  .tr-dye-divider { height: 1px; background: var(--tr-line); margin: 10px 0 20px; }\n  .tr-spaces-grid { display: flex; flex-direction: column; gap: 14px; margin-top: 18px; }\n  .tr-space-card { display: grid; grid-template-columns: 100px 1fr; gap: 22px; align-items: center; background: var(--tr-bg); border: 1px solid var(--tr-line); border-radius: 4px; padding: 20px; transition: border-color 0.3s ease, transform 0.3s ease; }\n  .tr-space-card:hover { border-color: var(--tr-terracotta); transform: translateY(-2px); }\n  .tr-space-visual { width: 100px; height: 100px; background: var(--tr-bg-warm); border-radius: 3px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }\n  .tr-space-visual svg { width: 80%; height: 80%; }\n  .tr-space-name { font-family: var(--tr-serif); font-size: 22px; font-weight: 500; color: var(--tr-ink); margin-bottom: 6px; line-height: 1.2; }\n  .tr-space-text p { font-size: 14px; color: var(--tr-ink-soft); line-height: 1.55; margin: 0; }\n  .tr-motifs-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 18px; }\n  .tr-motif { background: var(--tr-bg); padding: 22px 12px; text-align: center; border-radius: 4px; border: 1px solid var(--tr-line); transition: transform 0.3s ease, border-color 0.3s ease; }\n  .tr-motif:hover { transform: translateY(-3px); border-color: var(--tr-terracotta); }\n  .tr-motif-icon { width: 40px; height: 40px; margin: 0 auto 10px; }\n  .tr-motif-name { font-family: var(--tr-serif); font-size: 15px; font-weight: 500; margin-bottom: 4px; color: var(--tr-ink); }\n  .tr-motif-meaning { font-size: 11px; color: var(--tr-ink-soft); line-height: 1.5; }\n  .tr-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; background: var(--tr-ink); color: var(--tr-bg); border-radius: 4px; overflow: hidden; max-width: 680px; margin: 0 auto; }\n  .tr-stat { padding: 26px 12px; text-align: center; border-right: 1px solid rgba(255,255,255,0.08); }\n  .tr-stat:last-child { border-right: none; }\n  .tr-stat-number { font-family: var(--tr-serif); font-size: 32px; font-weight: 500; color: var(--tr-ochre); margin-bottom: 4px; line-height: 1; }\n  .tr-stat-label { font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,0.7); line-height: 1.4; }\n  @media (max-width: 767px) {\n    .tr-story { padding: 60px 24px; }\n    .tr-title { font-size: 28px; line-height: 1.25; }\n    .tr-lede { font-size: 16px; }\n    .tr-opening \u003e p:first-child::first-letter { font-size: 48px; }\n    .tr-opening p { font-size: 15px; }\n    .tr-acc-summary { font-size: 18px; padding: 18px 0; }\n    .tr-quote { font-size: 17px; padding: 24px 14px; }\n    .tr-dyes-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }\n    .tr-motifs-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }\n    .tr-stats { grid-template-columns: repeat(2, 1fr); }\n    .tr-stat { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.08); }\n    .tr-stat:nth-last-child(-n+2) { border-bottom: none; }\n    .tr-stat-number { font-size: 28px; }\n    .tr-space-card { grid-template-columns: 80px 1fr; gap: 16px; padding: 16px; }\n    .tr-space-visual { width: 80px; height: 80px; }\n    .tr-space-name { font-size: 18px; }\n  }\n  @media (max-width: 479px) {\n    .tr-story { padding: 50px 16px; }\n    .tr-title { font-size: 24px; }\n    .tr-space-card { grid-template-columns: 64px 1fr; gap: 14px; padding: 14px; }\n    .tr-space-visual { width: 64px; height: 64px; }\n  }\n\u003c\/style\u003e\n\u003csection aria-labelledby=\"tr-story-title-1\" class=\"tr-story\"\u003e\n\u003cdiv class=\"tr-inner\"\u003e\n\u003cdiv class=\"tr-header\"\u003e\n\u003cdiv class=\"tr-eyebrow\"\u003eThe Story of This Rug\u003c\/div\u003e\n\u003ch2 id=\"tr-story-title-1\" class=\"tr-title\"\u003eFour panels. Four worlds. One rug that holds them all together.\u003c\/h2\u003e\n\u003cp class=\"tr-lede\"\u003e5 weeks of work. One artisan. One loom. One rug — never to be repeated.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-opening\"\u003e\n\u003cp\u003eThis \u003cstrong\u003ehand-knotted Moroccan patchwork rug\u003c\/strong\u003e was made in Taznakht, in the foothills of the Anti-Atlas Mountains, on a vertical loom by a single artisan from the Iznaguen Women's Cooperative. Each of its four panels is its own composition — a universe of symbols in a different field colour — joined by a hand-woven saffron-orange border into one bold, unified whole. Made entirely from \u003cstrong\u003e100% Atlas Mountain sheep's wool\u003c\/strong\u003e, hand-spun and naturally dyed, it is the only one of its kind in the world.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-accordion\"\u003e\n\u003cdetails open=\"\" class=\"tr-acc-item\"\u003e\n\u003csummary class=\"tr-acc-summary\"\u003eMeaning \u0026amp; Symbolism\u003c\/summary\u003e\n\u003cdiv class=\"tr-acc-content\"\u003e\n\u003cp\u003eThe four-panel structure is a deliberate act of storytelling. Each panel speaks its own dialect of the Amazigh visual language, and each field colour carries its own weight: \u003cstrong\u003enavy for the sky and protection\u003c\/strong\u003e, \u003cstrong\u003edeep red for life force and courage\u003c\/strong\u003e, \u003cstrong\u003eforest green for fertility and renewal\u003c\/strong\u003e. The saffron-orange border that holds them all is the colour of celebration — a frame that says this object is something worth marking.\u003c\/p\u003e\n\u003cp\u003eIn the top-left panel, a \u003cstrong\u003elarge lozenge with bird-like figures\u003c\/strong\u003e spreads across the navy ground — the guardian of the home, watching from the four directions. The top-right panel is built entirely from \u003cstrong\u003evertical stripe columns\u003c\/strong\u003e, a weaving tradition that represents the rains that feed the Anti-Atlas valley, each stripe a prayer for abundance. The red centre panel holds two \u003cstrong\u003emirrored X-arrow motifs\u003c\/strong\u003e, symmetrical and deliberate — the symbol of the crossroads, of two paths that meet and go forward together. The bottom-right green panel centres a \u003cstrong\u003ecross medallion with a rosette heart\u003c\/strong\u003e, one of the most complete protection symbols in the Amazigh vocabulary. The bottom-left panel fills its field with a \u003cstrong\u003emulti-directional starburst\u003c\/strong\u003e in every colour present in the rug — the weaver's signature, scattered like light.\u003c\/p\u003e\n\u003cp\u003eTogether, the five compositions read as one complete Amazigh blessing: sky, rain, road, protection, light.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"tr-acc-item\"\u003e\n\u003csummary class=\"tr-acc-summary\"\u003eThe Symbols on This Rug\u003c\/summary\u003e\n\u003cdiv class=\"tr-acc-content\"\u003e\n\u003cp\u003eEach motif holds a meaning that has been woven by Amazigh women for generations.\u003c\/p\u003e\n\u003cdiv class=\"tr-motifs-grid\"\u003e\n\u003cdiv class=\"tr-motif\"\u003e\n\u003csvg fill=\"none\" viewbox=\"0 0 50 50\" class=\"tr-motif-icon\"\u003e\n              \u003cpolygon stroke-width=\"2.2\" stroke=\"#a8312a\" fill=\"none\" points=\"25,5 45,25 25,45 5,25\"\u003e\u003c\/polygon\u003e\n              \u003cpolygon opacity=\"0.5\" fill=\"#c89846\" points=\"25,14 35,25 25,36 15,25\"\u003e\u003c\/polygon\u003e\n              \u003crect fill=\"#a8312a\" height=\"6\" width=\"6\" y=\"22\" x=\"22\"\u003e\u003c\/rect\u003e\n            \u003c\/svg\u003e\n\u003cdiv class=\"tr-motif-name\"\u003eGuardian Lozenge\u003c\/div\u003e\n\u003cdiv class=\"tr-motif-meaning\"\u003eProtection \u0026amp; the watchful eye\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-motif\"\u003e\n\u003csvg fill=\"none\" viewbox=\"0 0 50 50\" class=\"tr-motif-icon\"\u003e\n              \u003cline stroke-width=\"3\" stroke=\"#4a7ba8\" y2=\"45\" x2=\"10\" y1=\"5\" x1=\"10\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"3\" stroke=\"#a8312a\" y2=\"45\" x2=\"20\" y1=\"5\" x1=\"20\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"3\" stroke=\"#c89846\" y2=\"45\" x2=\"30\" y1=\"5\" x1=\"30\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"3\" stroke=\"#5a7a4e\" y2=\"45\" x2=\"40\" y1=\"5\" x1=\"40\"\u003e\u003c\/line\u003e\n            \u003c\/svg\u003e\n\u003cdiv class=\"tr-motif-name\"\u003eRain Stripes\u003c\/div\u003e\n\u003cdiv class=\"tr-motif-meaning\"\u003ePrayer for rain \u0026amp; abundance\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-motif\"\u003e\n\u003csvg fill=\"none\" viewbox=\"0 0 50 50\" class=\"tr-motif-icon\"\u003e\n              \u003cline stroke-width=\"2.4\" stroke=\"#a8312a\" y2=\"42\" x2=\"42\" y1=\"8\" x1=\"8\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"2.4\" stroke=\"#a8312a\" y2=\"42\" x2=\"8\" y1=\"8\" x1=\"42\"\u003e\u003c\/line\u003e\n              \u003cpolyline fill=\"none\" stroke-width=\"1.8\" stroke=\"#c89846\" points=\"14,8 25,19 36,8\"\u003e\u003c\/polyline\u003e\n              \u003cpolyline fill=\"none\" stroke-width=\"1.8\" stroke=\"#c89846\" points=\"14,42 25,31 36,42\"\u003e\u003c\/polyline\u003e\n            \u003c\/svg\u003e\n\u003cdiv class=\"tr-motif-name\"\u003eX-Arrow Cross\u003c\/div\u003e\n\u003cdiv class=\"tr-motif-meaning\"\u003eTwo paths meeting — forward motion\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-motif\"\u003e\n\u003csvg fill=\"none\" viewbox=\"0 0 50 50\" class=\"tr-motif-icon\"\u003e\n              \u003crect fill=\"#a8312a\" height=\"10\" width=\"10\" y=\"5\" x=\"20\"\u003e\u003c\/rect\u003e\n              \u003crect fill=\"#a8312a\" height=\"10\" width=\"10\" y=\"35\" x=\"20\"\u003e\u003c\/rect\u003e\n              \u003crect fill=\"#a8312a\" height=\"10\" width=\"10\" y=\"20\" x=\"5\"\u003e\u003c\/rect\u003e\n              \u003crect fill=\"#a8312a\" height=\"10\" width=\"10\" y=\"20\" x=\"35\"\u003e\u003c\/rect\u003e\n              \u003crect fill=\"#c89846\" height=\"10\" width=\"10\" y=\"20\" x=\"20\"\u003e\u003c\/rect\u003e\n              \u003crect fill=\"#faf7f2\" height=\"4\" width=\"4\" y=\"23\" x=\"23\"\u003e\u003c\/rect\u003e\n            \u003c\/svg\u003e\n\u003cdiv class=\"tr-motif-name\"\u003eCross Medallion\u003c\/div\u003e\n\u003cdiv class=\"tr-motif-meaning\"\u003eComplete protection — all directions\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-motif\"\u003e\n\u003csvg fill=\"none\" viewbox=\"0 0 50 50\" class=\"tr-motif-icon\"\u003e\n              \u003cline stroke-width=\"2\" stroke=\"#a8312a\" y2=\"45\" x2=\"25\" y1=\"5\" x1=\"25\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"2\" stroke=\"#4a7ba8\" y2=\"25\" x2=\"45\" y1=\"25\" x1=\"5\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"2\" stroke=\"#c89846\" y2=\"40\" x2=\"40\" y1=\"10\" x1=\"10\"\u003e\u003c\/line\u003e\n              \u003cline stroke-width=\"2\" stroke=\"#5a7a4e\" y2=\"40\" x2=\"10\" y1=\"10\" x1=\"40\"\u003e\u003c\/line\u003e\n              \u003ccircle opacity=\"0.3\" fill=\"#a8312a\" r=\"5\" cy=\"25\" cx=\"25\"\u003e\u003c\/circle\u003e\n              \u003ccircle fill=\"#a8312a\" r=\"2.5\" cy=\"25\" cx=\"25\"\u003e\u003c\/circle\u003e\n            \u003c\/svg\u003e\n\u003cdiv class=\"tr-motif-name\"\u003eStarburst\u003c\/div\u003e\n\u003cdiv class=\"tr-motif-meaning\"\u003eThe weaver's light — joy in all directions\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-motif\"\u003e\n\u003csvg fill=\"none\" viewbox=\"0 0 50 50\" class=\"tr-motif-icon\"\u003e\n              \u003cpolyline stroke-linejoin=\"round\" stroke-width=\"2.4\" stroke=\"#a8312a\" points=\"5,38 25,14 45,38\"\u003e\u003c\/polyline\u003e\n              \u003cpolyline stroke-linejoin=\"round\" stroke-width=\"1.8\" stroke=\"#4a7ba8\" points=\"5,44 25,20 45,44\"\u003e\u003c\/polyline\u003e\n            \u003c\/svg\u003e\n\u003cdiv class=\"tr-motif-name\"\u003eMountain Chevron\u003c\/div\u003e\n\u003cdiv class=\"tr-motif-meaning\"\u003eThe home that does not move\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"tr-acc-item\"\u003e\n\u003csummary class=\"tr-acc-summary\"\u003eColour \u0026amp; Its Meaning\u003c\/summary\u003e\n\u003cdiv class=\"tr-acc-content\"\u003e\n\u003cp\u003eIn Amazigh culture, each field colour is a choice, not a coincidence. This rug holds four separate fields, each carrying its own meaning in the woven tradition of the Anti-Atlas Mountains.\u003c\/p\u003e\n\u003cdiv class=\"tr-dye-cat\"\u003eThe four fields\u003c\/div\u003e\n\u003cdiv style=\"grid-template-columns: repeat(2,1fr); max-width: 380px;\" class=\"tr-dyes-grid\"\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #3a5a8a, #2d4a6b);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eDeep Navy\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003eSky \u0026amp; spirit — guards the home\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #c4332a, #a8312a);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eDeep Red\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003eLife force — wards off the evil eye\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #3a7048, #2a5a38);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eForest Green\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003eFertility — the return of life\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #e08830, #c06820);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eSaffron Orange\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003eCelebration — the border of joy\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-divider\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-cat\"\u003eThe woven symbols\u003c\/div\u003e\n\u003cdiv style=\"grid-template-columns: repeat(3,1fr);\" class=\"tr-dyes-grid\"\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #e4b65c, #c89846);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eSaffron \/ Gold\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003eHarvest \u0026amp; abundance\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #faf0e0, #ede8d5); box-shadow: inset 0 0 0 3px var(--tr-bg-warm), 0 0 0 1px var(--tr-line);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eIvory\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003ePurity — outlines hope\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-dye\"\u003e\n\u003cdiv style=\"background: linear-gradient(135deg, #2a2520, #1a1612);\" class=\"tr-dye-swatch\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-name\"\u003eNatural Black\u003c\/div\u003e\n\u003cdiv class=\"tr-dye-source\"\u003eDepth — the unseen made visible\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"tr-acc-item\"\u003e\n\u003csummary class=\"tr-acc-summary\"\u003ePerfect Spaces\u003c\/summary\u003e\n\u003cdiv class=\"tr-acc-content\"\u003e\n\u003cp\u003eThis compact, bold rug fills a small space with the energy of four compositions. It works best where colour and story are welcome.\u003c\/p\u003e\n\u003cdiv class=\"tr-spaces-grid\"\u003e\n\u003cdiv class=\"tr-space-card\"\u003e\n\u003cdiv class=\"tr-space-visual\"\u003e\u003csvg aria-hidden=\"true\" fill=\"none\" viewbox=\"0 0 100 100\"\u003e\n                \u003crect stroke-width=\"1.2\" stroke=\"#6b5f56\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ede9e2\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ccc5bb\" height=\"22\" width=\"88\" y=\"72\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#b0a99e\" rx=\"3\" height=\"26\" width=\"72\" y=\"44\" x=\"14\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ccc5bb\" rx=\"2\" height=\"12\" width=\"72\" y=\"38\" x=\"14\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#b0a99e\" rx=\"2\" height=\"32\" width=\"10\" y=\"38\" x=\"14\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#b0a99e\" rx=\"2\" height=\"32\" width=\"10\" y=\"38\" x=\"76\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#c06820\" rx=\"1\" height=\"8\" width=\"64\" y=\"70\" x=\"18\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#2d4a6b\" rx=\"0.5\" height=\"6\" width=\"14\" y=\"71\" x=\"22\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#a8312a\" rx=\"0.5\" height=\"6\" width=\"14\" y=\"71\" x=\"38\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#2a5a38\" rx=\"0.5\" height=\"6\" width=\"14\" y=\"71\" x=\"54\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#c89846\" rx=\"0.5\" height=\"6\" width=\"6\" y=\"71\" x=\"70\"\u003e\u003c\/rect\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-space-text\"\u003e\n\u003cdiv class=\"tr-space-name\"\u003eLiving room\u003c\/div\u003e\n\u003cp\u003eThe four-panel composition holds its own in front of a sofa — bold enough to anchor the room, specific enough to reward a closer look.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-space-card\"\u003e\n\u003cdiv class=\"tr-space-visual\"\u003e\u003csvg aria-hidden=\"true\" fill=\"none\" viewbox=\"0 0 100 100\"\u003e\n                \u003crect stroke-width=\"1.2\" stroke=\"#6b5f56\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ede9e2\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ccc5bb\" height=\"26\" width=\"88\" y=\"68\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#b0a99e\" rx=\"1\" height=\"50\" width=\"36\" y=\"18\" x=\"32\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ede9e2\" height=\"44\" width=\"30\" y=\"21\" x=\"35\"\u003e\u003c\/rect\u003e\n                \u003ccircle fill=\"#8e8279\" r=\"2\" cy=\"44\" cx=\"60\"\u003e\u003c\/circle\u003e\n                \u003crect fill=\"#c06820\" rx=\"1\" height=\"10\" width=\"60\" y=\"72\" x=\"20\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#2d4a6b\" height=\"6\" width=\"12\" y=\"74\" x=\"24\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#a8312a\" height=\"6\" width=\"12\" y=\"74\" x=\"38\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#2a5a38\" height=\"6\" width=\"12\" y=\"74\" x=\"52\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#c89846\" height=\"6\" width=\"10\" y=\"74\" x=\"66\"\u003e\u003c\/rect\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-space-text\"\u003e\n\u003cdiv class=\"tr-space-name\"\u003eEntryway\u003c\/div\u003e\n\u003cp\u003eFour protective fields greet every person who crosses the threshold — the first and last thing the day touches.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-space-card\"\u003e\n\u003cdiv class=\"tr-space-visual\"\u003e\u003csvg aria-hidden=\"true\" fill=\"none\" viewbox=\"0 0 100 100\"\u003e\n                \u003crect stroke-width=\"1.2\" stroke=\"#6b5f56\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ede9e2\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ccc5bb\" height=\"22\" width=\"88\" y=\"72\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#c06820\" rx=\"1\" height=\"46\" width=\"56\" y=\"16\" x=\"22\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#2d4a6b\" height=\"22\" width=\"26\" y=\"16\" x=\"22\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#a8312a\" height=\"22\" width=\"26\" y=\"16\" x=\"52\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#c89846\" height=\"22\" width=\"26\" y=\"40\" x=\"22\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#2a5a38\" height=\"22\" width=\"26\" y=\"40\" x=\"52\"\u003e\u003c\/rect\u003e\n                \u003ccircle fill=\"#6b5f56\" r=\"2\" cy=\"16\" cx=\"30\"\u003e\u003c\/circle\u003e\n                \u003ccircle fill=\"#6b5f56\" r=\"2\" cy=\"16\" cx=\"70\"\u003e\u003c\/circle\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-space-text\"\u003e\n\u003cdiv class=\"tr-space-name\"\u003eWall décor\u003c\/div\u003e\n\u003cp\u003eHung flat, the four panels read as a single graphic artwork — a Moroccan colour field that needs no frame.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-space-card\"\u003e\n\u003cdiv class=\"tr-space-visual\"\u003e\u003csvg aria-hidden=\"true\" fill=\"none\" viewbox=\"0 0 100 100\"\u003e\n                \u003crect stroke-width=\"1.2\" stroke=\"#6b5f56\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ede9e2\" height=\"88\" width=\"88\" y=\"6\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ccc5bb\" height=\"22\" width=\"88\" y=\"72\" x=\"6\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#ccc5bb\" rx=\"2\" height=\"42\" width=\"72\" y=\"30\" x=\"14\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#b0a99e\" rx=\"2\" height=\"14\" width=\"72\" y=\"24\" x=\"14\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#f5f0e8\" rx=\"2\" height=\"14\" width=\"22\" y=\"32\" x=\"20\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#f5f0e8\" rx=\"2\" height=\"14\" width=\"22\" y=\"32\" x=\"58\"\u003e\u003c\/rect\u003e\n                \u003crect stroke-width=\"0.6\" stroke=\"#b0a99e\" fill=\"#ede9e2\" rx=\"1\" height=\"26\" width=\"72\" y=\"46\" x=\"14\"\u003e\u003c\/rect\u003e\n                \u003crect fill=\"#c06820\" rx=\"1\" height=\"8\" width=\"22\" y=\"70\" x=\"8\"\u003e\u003c\/rect\u003e\n                \u003cline stroke-width=\"1.5\" stroke=\"#2d4a6b\" y2=\"76\" x2=\"12\" y1=\"72\" x1=\"12\"\u003e\u003c\/line\u003e\n                \u003cline stroke-width=\"1.5\" stroke=\"#a8312a\" y2=\"76\" x2=\"16\" y1=\"72\" x1=\"16\"\u003e\u003c\/line\u003e\n                \u003cline stroke-width=\"1.5\" stroke=\"#2a5a38\" y2=\"76\" x2=\"20\" y1=\"72\" x1=\"20\"\u003e\u003c\/line\u003e\n                \u003cline stroke-width=\"1.5\" stroke=\"#c89846\" y2=\"76\" x2=\"24\" y1=\"72\" x1=\"24\"\u003e\u003c\/line\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv class=\"tr-space-text\"\u003e\n\u003cdiv class=\"tr-space-name\"\u003eBedroom\u003c\/div\u003e\n\u003cp\u003eA warm first step in the morning — the four protective fields carry their blessings into the start and end of every day.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/div\u003e\n\u003cblockquote class=\"tr-quote\"\u003e\"May the navy sky watch over your roof. May the red ground give you courage. May the green earth keep your family growing. And may the orange border remind you — every day — that life is worth celebrating.\" \u003cspan class=\"tr-quote-attr\"\u003e— The Artisan's Blessing\u003c\/span\u003e\n\u003c\/blockquote\u003e\n\u003cdiv class=\"tr-stats\"\u003e\n\u003cdiv class=\"tr-stat\"\u003e\n\u003cdiv class=\"tr-stat-number\"\u003e1\u003c\/div\u003e\n\u003cdiv class=\"tr-stat-label\"\u003eOf its kind\u003cbr\u003ein the world\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-stat\"\u003e\n\u003cdiv class=\"tr-stat-number\"\u003e5\u003c\/div\u003e\n\u003cdiv class=\"tr-stat-label\"\u003eWeeks at\u003cbr\u003ethe loom\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-stat\"\u003e\n\u003cdiv class=\"tr-stat-number\"\u003e4\u003c\/div\u003e\n\u003cdiv class=\"tr-stat-label\"\u003ePanels, each its\u003cbr\u003eown composition\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tr-stat\"\u003e\n\u003cdiv class=\"tr-stat-number\"\u003e100%\u003c\/div\u003e\n\u003cdiv class=\"tr-stat-label\"\u003eNatural wool\u003cbr\u003ehand-dyed\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e","brand":"TazRugs","offers":[{"title":"Default Title","offer_id":62543015149898,"sku":null,"price":432.0,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0923\/4507\/3994\/files\/Moroccan_Berber_Patchwork_Rug_Hand-Knotted_Wool_25_42_in.jpg?v=1782478405","url":"https:\/\/www.tazrugs.com\/products\/moroccan-berber-patchwork-rug-hand-knotted-wool-25-42-in","provider":"TazRugs","version":"1.0","type":"link"}