{"product_id":"violet-ruched-tankini-with-floral-shorts","title":"Violet | Ruched Tankini with Floral Shorts","description":"\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003ch2 class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eThe Swimsuit That Lets You Actually Enjoy the Water\u003c\/strong\u003e\u003c\/span\u003e\u003c\/h2\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eTired of dreading swimsuit season because nothing feels right?\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eYou know the struggle. The bikinis that dig in and create rolls where there weren't any. The one-pieces that somehow make you feel more self-conscious, not less. The endless dressing room mirrors and that sinking feeling of \"nothing looks good.\"\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eWhat if you could find a swimsuit that actually makes you feel confident instead of worried?\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eThis is the swimwear you've been looking for.\u003c\/strong\u003e\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eCarefully curated by yours truly who understand that a day at the beach shouldn't come with anxiety. \u003cstrong\u003eEvery piece chosen with real bodies in mind\u003c\/strong\u003e, not the airbrushed magazine version, but bodies that have lived, changed, and \u003cstrong\u003edeserve to feel beautiful.\u003c\/strong\u003e\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003ch3 class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eWhy women love these:\u003c\/strong\u003e\u003c\/span\u003e\u003c\/h3\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cul class=\"li_\u0026amp;:mb-0 li_\u0026amp;:mt-1 li_\u0026amp;:gap-1 \u0026amp;:not(:last-child)_ul:pb-1 \u0026amp;:not(:last-child)_ol:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3\"\u003e\n\u003cli style=\"color: rgb(0, 0, 0);\" class=\"whitespace-normal break-words pl-2\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eTummy coverage that actually flatters\u003c\/strong\u003e – ruched designs and high-waisted styles that smooth without squeezing\u003c\/span\u003e\u003c\/li\u003e\n\u003cli style=\"color: rgb(0, 0, 0);\" class=\"whitespace-normal break-words pl-2\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eSupportive without being restrictive\u003c\/strong\u003e – built-in support where you need it, comfortable stretch everywhere else\u003c\/span\u003e\u003c\/li\u003e\n\u003cli style=\"color: rgb(0, 0, 0);\" class=\"whitespace-normal break-words pl-2\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eCoverage options for every comfort level\u003c\/strong\u003e – tankinis, swim dresses, one-pieces, high-waisted bikinis — choose what feels right for you\u003c\/span\u003e\u003c\/li\u003e\n\u003cli style=\"color: rgb(0, 0, 0);\" class=\"whitespace-normal break-words pl-2\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePatterns that work with you\u003c\/strong\u003e – prints and details strategically placed to flatter, not emphasize\u003c\/span\u003e\u003c\/li\u003e\n\u003cli style=\"color: rgb(0, 0, 0);\" class=\"whitespace-normal break-words pl-2\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eActually stays in place\u003c\/strong\u003e – secure straps and well-constructed fits so you can swim, play, relax without constant adjusting\u003c\/span\u003e\u003c\/li\u003e\n\u003cli style=\"color: rgb(0, 0, 0);\" class=\"whitespace-normal break-words pl-2\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eFunctional details\u003c\/strong\u003e – pockets, adjustable straps, removable padding — thoughtful design that makes sense\u003c\/span\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003ch3 class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eThis isn't fast fashion that falls apart after two wears.\u003c\/strong\u003e\u003c\/span\u003e\u003c\/h3\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eWe have spent 25+ years finding pieces that deliver both \u003cstrong\u003estyle and confidence.\u003c\/strong\u003e The kind of swimwear that becomes your go-to, not your regret.\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eFit guide:\u003c\/strong\u003e Most styles run true to size. High-waisted and tankini styles offer the most tummy coverage. Ruched designs are the most forgiving and flattering for most body types. When in doubt, size up for more comfortable coverage.\u003c\/span\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cstrong\u003eLimited availability\u003c\/strong\u003e, this Anniversary Sale won't last forever. \u003cstrong\u003eOnce these pieces sell out, they won't be restocked.\u003c\/strong\u003e\u003c\/p\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv class=\"standard-markdown grid-cols-1 grid \u0026amp;_\u0026gt;_*:min-w-0 gap-3\"\u003e\n\u003cp class=\"font-claude-response-body break-words whitespace-normal leading-1.7\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cem\u003eFinally, swimwear that lets you focus on the fun, not your insecurities.\u003c\/em\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003ch3 data-section-id=\"b2lztt\" data-start=\"0\" data-end=\"27\"\u003eSize Guide — Violet\u003c\/h3\u003e\n\u003cdiv class=\"TyagGW_tableContainer\"\u003e\u003cdiv class=\"group TyagGW_tableWrapper flex flex-col-reverse w-fit\" tabindex=\"-1\"\u003e\u003ctable data-start=\"29\" data-end=\"422\" class=\"w-fit min-w-(--thread-content-width)\"\u003e\n\u003cthead data-start=\"29\" data-end=\"108\"\u003e\u003ctr data-start=\"29\" data-end=\"108\"\u003e\n\u003cth data-start=\"29\" data-end=\"36\" data-col-size=\"sm\" class=\"last:pe-10\"\u003eSize\u003c\/th\u003e\n\u003cth data-start=\"36\" data-end=\"52\" data-col-size=\"sm\" class=\"last:pe-10\"\u003eBust (inches)\u003c\/th\u003e\n\u003cth data-start=\"52\" data-end=\"69\" data-col-size=\"sm\" class=\"last:pe-10\"\u003eWaist (inches)\u003c\/th\u003e\n\u003cth data-start=\"69\" data-end=\"85\" data-col-size=\"sm\" class=\"last:pe-10\"\u003eHips (inches)\u003c\/th\u003e\n\u003cth data-start=\"85\" data-end=\"108\" data-col-size=\"sm\" class=\"last:pe-10\"\u003eUnder Bust (inches)\u003c\/th\u003e\n\u003c\/tr\u003e\u003c\/thead\u003e\n\u003ctbody data-start=\"166\" data-end=\"422\"\u003e\n\u003ctr data-start=\"166\" data-end=\"207\"\u003e\n\u003ctd data-start=\"166\" data-end=\"170\" data-col-size=\"sm\"\u003eS\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"170\" data-end=\"179\"\u003e34.65\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"179\" data-end=\"188\"\u003e28.74\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"188\" data-end=\"197\"\u003e37.80\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"197\" data-end=\"207\"\u003e28.74\"\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-start=\"208\" data-end=\"249\"\u003e\n\u003ctd data-start=\"208\" data-end=\"212\" data-col-size=\"sm\"\u003eM\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"212\" data-end=\"221\"\u003e36.22\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"221\" data-end=\"230\"\u003e30.31\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"230\" data-end=\"239\"\u003e39.37\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"239\" data-end=\"249\"\u003e30.31\"\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-start=\"250\" data-end=\"291\"\u003e\n\u003ctd data-start=\"250\" data-end=\"254\" data-col-size=\"sm\"\u003eL\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"254\" data-end=\"263\"\u003e37.80\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"263\" data-end=\"272\"\u003e31.89\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"272\" data-end=\"281\"\u003e40.94\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"281\" data-end=\"291\"\u003e31.89\"\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-start=\"292\" data-end=\"334\"\u003e\n\u003ctd data-start=\"292\" data-end=\"297\" data-col-size=\"sm\"\u003eXL\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"297\" data-end=\"306\"\u003e39.37\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"306\" data-end=\"315\"\u003e33.46\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"315\" data-end=\"324\"\u003e42.52\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"324\" data-end=\"334\"\u003e33.46\"\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-start=\"335\" data-end=\"378\"\u003e\n\u003ctd data-start=\"335\" data-end=\"341\" data-col-size=\"sm\"\u003e2XL\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"341\" data-end=\"350\"\u003e40.94\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"350\" data-end=\"359\"\u003e35.04\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"359\" data-end=\"368\"\u003e44.09\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"368\" data-end=\"378\"\u003e35.04\"\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-start=\"379\" data-end=\"422\"\u003e\n\u003ctd data-start=\"379\" data-end=\"385\" data-col-size=\"sm\"\u003e3XL\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"385\" data-end=\"394\"\u003e42.52\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"394\" data-end=\"403\"\u003e36.61\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"403\" data-end=\"412\"\u003e45.67\"\u003c\/td\u003e\n\u003ctd data-col-size=\"sm\" data-start=\"412\" data-end=\"422\"\u003e36.61\"\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003c\/div\u003e","brand":"Hallie \u0026 Rose","offers":[{"title":"Blue \/ S","offer_id":57950756569420,"sku":"ZC1783029217350481012","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Blue \/ M","offer_id":57950756602188,"sku":"IQ1783029217350561239","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Blue \/ L","offer_id":57950756634956,"sku":"hI1783029217350640069","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Blue \/ XL","offer_id":57950756667724,"sku":"kb1783029217350719504","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Blue \/ 2XL","offer_id":57950756700492,"sku":"qs1783029217350798555","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Blue \/ 3XL","offer_id":57950756733260,"sku":"fV1783029217350877784","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Grey \/ S","offer_id":57950756766028,"sku":"eg1783029217350956933","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Grey \/ M","offer_id":57950756798796,"sku":"mu1783029217351036112","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Grey \/ L","offer_id":57950756831564,"sku":"bO1783029217351115869","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Grey \/ XL","offer_id":57950756864332,"sku":"hA1783029217351214292","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Grey \/ 2XL","offer_id":57950756897100,"sku":"Tc1783029217351296656","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Grey \/ 3XL","offer_id":57950756929868,"sku":"iP1783029217351377239","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Pink \/ S","offer_id":57950756962636,"sku":"BA1783029217351456232","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Pink \/ M","offer_id":57950756995404,"sku":"BS1783029217351536793","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Pink \/ L","offer_id":57950757028172,"sku":"oD1783029217351616191","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Pink \/ XL","offer_id":57950757060940,"sku":"sI1783029217351696104","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Pink \/ 2XL","offer_id":57950757093708,"sku":"RZ1783029217351775664","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Pink \/ 3XL","offer_id":57950757126476,"sku":"nS1783029217351855356","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Purple \/ S","offer_id":57950757159244,"sku":"VA1783029217351934699","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Purple \/ M","offer_id":57950757192012,"sku":"ss1783029217352014724","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Purple \/ L","offer_id":57950757224780,"sku":"NN1783029217352094779","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Purple \/ XL","offer_id":57950757257548,"sku":"hJ1783029217352174731","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Purple \/ 2XL","offer_id":57950757290316,"sku":"tQ1783029217352263376","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Purple \/ 3XL","offer_id":57950757323084,"sku":"kP1783029217352343557","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Yellow \/ S","offer_id":57950757355852,"sku":"jP1783029217352422854","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Yellow \/ M","offer_id":57950757388620,"sku":"gM1783029217352501988","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Yellow \/ L","offer_id":57950757421388,"sku":"gn1783029217352581893","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Yellow \/ XL","offer_id":57950757454156,"sku":"DV1783029217352661731","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Yellow \/ 2XL","offer_id":57950757486924,"sku":"Ll1783029217352741567","price":49.95,"currency_code":"USD","in_stock":true},{"title":"Yellow \/ 3XL","offer_id":57950757519692,"sku":"GW1783029217352820385","price":49.95,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1060\/6995\/0796\/files\/Violet___Ruched_Tankini_with_Floral_Shorts_0.jpg?v=1783029639","url":"https:\/\/hallieandrose.com\/products\/violet-ruched-tankini-with-floral-shorts","provider":"Hallie \u0026 Rose","version":"1.0","type":"link"}