{"product_id":"polka-dot-satin-cami","title":"POLKA DOT SATIN CAMI","description":"\u003cp class=\"product-tagline\"\u003eBlack satin crop cami with a fine polka dot print.\u003c\/p\u003e\n\n\u003cp\u003eA black satin crop cami scattered with fine white polka dots, cut with a deep surplice V-neckline that crosses low at the front. The satin catches light across every fold and the tiny dot print keeps it playful rather than precious, a piece that reads equal parts vintage lingerie and downtown night out. The back ties at the neck and leaves the shoulders and upper back open.\u003c\/p\u003e\n\n\u003cp\u003eDeep surplice V-neckline with a crossed front. Halter neck fastening with self-tie straps. Open back. Cropped body with a straight hem sitting above the natural waist. Fine allover polka dot print on a satin ground.\u003c\/p\u003e\n\n\u003cp\u003eCrafted from a smooth satin woven with a fluid liquid drape and minimal stretch. Fits true to Asian sizing which runs small. Size up one or two sizes from your usual European or US fit, especially across the bust.\u003c\/p\u003e\n\n\u003cdiv class=\"size-guide-block\"\u003e\n\n  \u003cinput type=\"radio\" id=\"cm-polkasatincami\" name=\"polkasatincami-unit\" checked\u003e\n  \u003cinput type=\"radio\" id=\"in-polkasatincami\" name=\"polkasatincami-unit\"\u003e\n\n  \u003cdiv class=\"size-guide-top\"\u003e\n    \u003cspan class=\"size-guide-label\"\u003eSize Guide\u003c\/span\u003e\n    \u003cdiv class=\"unit-toggle\"\u003e\n      \u003clabel for=\"cm-polkasatincami\"\u003eCM\u003c\/label\u003e\n      \u003clabel for=\"in-polkasatincami\"\u003eIN\u003c\/label\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003ctable\u003e\n    \u003cthead\u003e\n      \u003ctr\u003e\n        \u003cth\u003eSize\u003c\/th\u003e\n        \u003cth\u003eBust\u003c\/th\u003e\n        \u003cth\u003eLength\u003c\/th\u003e\n      \u003c\/tr\u003e\n    \u003c\/thead\u003e\n    \u003ctbody\u003e\n      \u003ctr\u003e\n        \u003ctd\u003e\n\u003cspan class=\"size-main\"\u003eS\u003c\/span\u003e\u003cspan class=\"size-sub\"\u003eUS 4\u003c\/span\u003e\n\u003c\/td\u003e\n        \u003ctd\u003e\n\u003cspan class=\"cm\"\u003e72\u003c\/span\u003e\u003cspan class=\"in\"\u003e28.3\u003c\/span\u003e\n\u003c\/td\u003e\n        \u003ctd\u003e\n\u003cspan class=\"cm\"\u003e39\u003c\/span\u003e\u003cspan class=\"in\"\u003e15.4\u003c\/span\u003e\n\u003c\/td\u003e\n      \u003c\/tr\u003e\n      \u003ctr\u003e\n        \u003ctd\u003e\n\u003cspan class=\"size-main\"\u003eM\u003c\/span\u003e\u003cspan class=\"size-sub\"\u003eUS 6\u003c\/span\u003e\n\u003c\/td\u003e\n        \u003ctd\u003e\n\u003cspan class=\"cm\"\u003e76\u003c\/span\u003e\u003cspan class=\"in\"\u003e29.9\u003c\/span\u003e\n\u003c\/td\u003e\n        \u003ctd\u003e\n\u003cspan class=\"cm\"\u003e40\u003c\/span\u003e\u003cspan class=\"in\"\u003e15.8\u003c\/span\u003e\n\u003c\/td\u003e\n      \u003c\/tr\u003e\n      \u003ctr\u003e\n        \u003ctd\u003e\n\u003cspan class=\"size-main\"\u003eL\u003c\/span\u003e\u003cspan class=\"size-sub\"\u003eUS 8\/10\u003c\/span\u003e\n\u003c\/td\u003e\n        \u003ctd\u003e\n\u003cspan class=\"cm\"\u003e80\u003c\/span\u003e\u003cspan class=\"in\"\u003e31.5\u003c\/span\u003e\n\u003c\/td\u003e\n        \u003ctd\u003e\n\u003cspan class=\"cm\"\u003e41\u003c\/span\u003e\u003cspan class=\"in\"\u003e16.1\u003c\/span\u003e\n\u003c\/td\u003e\n      \u003c\/tr\u003e\n    \u003c\/tbody\u003e\n  \u003c\/table\u003e\n\n  \u003cp class=\"size-note\"\u003eMeasurements taken manually. May vary by 2 to 3 cm. Woven satin with minimal stretch, measured flat.\u003c\/p\u003e\n\n  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1040\/5154\/0232\/files\/top_size-chart.png?v=1781067459\" alt=\"Size chart measurement guide\" class=\"size-chart-img\"\u003e\n\n\u003c\/div\u003e\n\n\u003cp\u003ePair with low-rise baggy jeans or a leather mini with platform boots, and throw a cropped moto jacket over the shoulders when the open back needs a counterweight. Jewellery shown on the model is not included.\u003c\/p\u003e\n\n\u003cstyle\u003e\n.product-tagline {\n  font-size: 13px;\n  letter-spacing: 0.05em;\n  color: #888;\n  font-style: italic;\n  margin-bottom: 24px;\n}\n\n.size-guide-block {\n  margin: 40px 0;\n}\n\n.size-guide-block input {\n  position: absolute;\n  opacity: 0;\n  pointer-events: none;\n}\n\n.size-guide-top {\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding-bottom: 14px;\n}\n\n.size-guide-label {\n  font-size: 11px;\n  font-weight: 500;\n  letter-spacing: 0.14em;\n  text-transform: uppercase;\n  color: #1a1a1a;\n}\n\n.unit-toggle {\n  display: inline-flex;\n  border: 1px solid #1a1a1a;\n  border-radius: 2px;\n  overflow: hidden;\n}\n\n.unit-toggle label {\n  padding: 6px 14px;\n  font-size: 10px;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  cursor: pointer;\n  color: #1a1a1a;\n  background: #fff;\n  transition: all 0.2s ease;\n}\n\n.size-guide-block:has(#cm-polkasatincami:checked) .unit-toggle label[for=\"cm-polkasatincami\"],\n.size-guide-block:has(#in-polkasatincami:checked) .unit-toggle label[for=\"in-polkasatincami\"] {\n  background: #1a1a1a;\n  color: #fff;\n}\n\n.size-guide-block table {\n  width: 100%;\n  border-collapse: collapse;\n  font-size: 13px;\n  color: #1a1a1a;\n}\n\n.size-guide-block th {\n  font-size: 10px;\n  font-weight: 500;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #888;\n  text-align: left;\n  padding: 14px 8px;\n  border-top: 1px solid #1a1a1a;\n  border-bottom: 1px solid #1a1a1a;\n}\n\n.size-guide-block td {\n  padding: 18px 8px;\n  border-bottom: 1px solid #eee;\n  text-align: left;\n  vertical-align: middle;\n}\n\n.size-guide-block tbody tr:last-child td {\n  border-bottom: none;\n}\n\n.size-main {\n  display: block;\n  font-weight: 500;\n  font-size: 14px;\n  line-height: 1.2;\n}\n\n.size-sub {\n  display: block;\n  font-size: 10px;\n  color: #888;\n  letter-spacing: 0.05em;\n  margin-top: 2px;\n}\n\n.size-guide-block .in {\n  display: none;\n}\n\n.size-guide-block:has(#in-polkasatincami:checked) .cm {\n  display: none;\n}\n\n.size-guide-block:has(#in-polkasatincami:checked) .in {\n  display: inline;\n}\n\n.size-guide-block:has(#cm-polkasatincami:checked) .cm {\n  display: inline;\n}\n\n.size-guide-block:has(#cm-polkasatincami:checked) .in {\n  display: none;\n}\n\n.size-note {\n  font-size: 11px;\n  color: #888;\n  margin: 14px 0 24px 0;\n  letter-spacing: 0.02em;\n}\n\n.size-chart-img {\n  display: block;\n  width: 100%;\n  height: auto;\n  margin: 0;\n}\n\u003c\/style\u003e","brand":"Soft Blades | Y2K Streetwear","offers":[{"title":"S","offer_id":58355543965960,"sku":null,"price":32.0,"currency_code":"USD","in_stock":true},{"title":"M","offer_id":58355543998728,"sku":null,"price":32.0,"currency_code":"USD","in_stock":true},{"title":"L","offer_id":58355544031496,"sku":null,"price":32.0,"currency_code":"USD","in_stock":true},{"title":"XL","offer_id":58355544064264,"sku":null,"price":32.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1040\/5154\/0232\/files\/T-16_0.png?v=1785822702","url":"https:\/\/soft-blades.com\/products\/polka-dot-satin-cami","provider":"Soft Blades","version":"1.0","type":"link"}