{"product_id":"men-s-striped-western-snap-shirt-short-sleeve-workwear","title":"Men’s Striped Western Snap Shirt – Short Sleeve Workwear","description":"\u003cstyle\u003e\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Oswald:wght@500;600;700\u0026family=Inter:wght@400;500;600\u0026display=swap');\n\n.bwc-page{background:#fff;font-family:'Inter',Arial,Helvetica,sans-serif;color:#141414;padding:0;margin:0;-webkit-font-smoothing:antialiased}\n.bwc-page *{box-sizing:border-box}\n.bwc-page .bwc-container{max-width:100%;width:100%;margin:0;padding:0}\n.bwc-page .bwc-card{background:#fff;border:none;padding:0;overflow:hidden}\n\n.bwc-page .bwc-teeth{display:block!important;height:16px!important;width:100%!important;background:\n  linear-gradient(135deg,#141414 25%,transparent 25%) 0 0\/16px 16px,\n  linear-gradient(225deg,#141414 25%,transparent 25%) 0 0\/16px 16px,\n  #fff!important;}\n.bwc-page .bwc-teeth.inv{background:\n  linear-gradient(135deg,#fff 25%,transparent 25%) 0 0\/16px 16px,\n  linear-gradient(225deg,#fff 25%,transparent 25%) 0 0\/16px 16px,\n  #141414!important;}\n\n.bwc-page .bwc-top{padding:26px 26px 0}\n.bwc-page .bwc-eyebrow{font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#6b6b6b;text-align:center;margin:0 0 8px}\n.bwc-page .bwc-h1{font-family:'Oswald',sans-serif;font-weight:700;font-size:32px;text-align:center;color:#111;margin:0 0 18px;line-height:1.14;letter-spacing:-.2px;text-transform:uppercase}\n\n.bwc-page .bwc-hero{background:#141414;color:#fff;padding:28px 24px;margin:0;position:relative}\n.bwc-page .bwc-hero h2{font-family:'Oswald',sans-serif;margin:0 0 10px;font-size:22px;line-height:1.25;font-weight:600;letter-spacing:.01em;color:#fff!important}\n.bwc-page .bwc-hero p{margin:0;opacity:.88;line-height:1.7;font-size:15px;color:#fff!important}\n.bwc-page .bwc-hero strong{color:#fff!important;border-bottom:2px solid #fff}\n\n.bwc-page .bwc-img-wrap{width:100%;margin:0;overflow:hidden;background:#f4f4f4}\n.bwc-page .bwc-img-wrap img{width:100%;height:auto;display:block;margin:0}\n\n.bwc-page .bwc-body{padding:0 26px}\n\n.bwc-page .bwc-section-title{font-family:'Oswald',sans-serif;font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.02em;color:#111;margin:38px 0 6px;padding-bottom:12px;border-bottom:3px solid #141414;line-height:1.2}\n.bwc-page .bwc-lead{font-size:15px;line-height:1.75;color:#3d3d3d;margin:0 0 18px}\n\n.bwc-page .bwc-carousel{position:relative;margin:22px 0 30px}\n.bwc-page .bwc-carousel-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 4px 14px;scrollbar-width:none;-ms-overflow-style:none}\n.bwc-page .bwc-carousel-track::-webkit-scrollbar{display:none}\n.bwc-page .bwc-carousel-slide{flex:0 0 100%;max-width:100%;scroll-snap-align:start;background:#fff;display:flex;flex-direction:column}\n.bwc-page .bwc-carousel-imgs{display:flex}\n.bwc-page .bwc-carousel-imgs img{flex:1 1 0;width:100%;height:auto;display:block;aspect-ratio:1\/1;object-fit:cover;min-width:0}\n.bwc-page .bwc-carousel-text{padding:18px;flex:1}\n.bwc-page .bwc-carousel-num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#141414;color:#fff;font-family:'Oswald',sans-serif;font-size:12px;font-weight:600;margin-bottom:10px}\n.bwc-page .bwc-carousel-text h3{margin:0 0 6px;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.01em;font-size:15px;color:#111;font-weight:600;line-height:1.3}\n.bwc-page .bwc-carousel-text p{margin:0;color:#4a4a4a;font-size:13px;line-height:1.6}\n.bwc-page .bwc-carousel-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:12px}\n.bwc-page .bwc-carousel-arrow{width:36px;height:36px;border:2px solid #141414;background:#fff;color:#141414;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:17px;flex-shrink:0;padding:0;line-height:1}\n.bwc-page .bwc-carousel-arrow:hover{background:#141414;color:#fff}\n.bwc-page .bwc-carousel-dots{display:flex;gap:8px}\n.bwc-page .bwc-carousel-dot{width:8px;height:8px;border-radius:50%;background:#d4d4d4;cursor:pointer;transition:background .2s;padding:0;border:0}\n.bwc-page .bwc-carousel-dot.active{background:#141414}\n\n.bwc-page .bwc-review-title{font-family:'Oswald',sans-serif;font-size:14.5px;font-weight:600;text-transform:uppercase;letter-spacing:.01em;color:#111;margin:0 0 6px}\n.bwc-page .bwc-review-quote{font-size:13px;line-height:1.6;color:#4a4a4a;margin:0 0 8px;font-style:italic}\n.bwc-page .bwc-review-name{font-family:'Oswald',sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#111;font-weight:600}\n\n.bwc-page .bwc-review-carousel-slide{flex:0 0 100%;max-width:100%;scroll-snap-align:start;display:grid;grid-template-columns:1fr 1fr;gap:14px}\n.bwc-page .bwc-review-mini{padding:14px;background:#fff;border:1px solid #eee;}\n.bwc-page .bwc-review-mini .bwc-review-quote{font-size:12.5px;line-height:1.55;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}\n.bwc-page .bwc-review-mini .bwc-review-name{font-size:11px}\n\n.bwc-page .bwc-media-block{margin:22px 0 6px;overflow:hidden;background:#f4f4f4}\n.bwc-page .bwc-media-block img,.bwc-page .bwc-media-block video{width:100%;height:auto;display:block}\n.bwc-page .bwc-media-caption{padding:11px 16px;font-size:12px;color:#6b6b6b;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.05em;background:#fff}\n\n.bwc-page .bwc-spec{margin-top:36px;background:#141414;padding:0}\n.bwc-page .bwc-spec h2{color:#fff;margin:0;padding:20px 24px;font-size:19px;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #3a3a3a}\n.bwc-page .bwc-table{width:100%;border-collapse:collapse;background:#fff}\n.bwc-page .bwc-table td{padding:14px 20px;border-bottom:1px solid #e4e4e4;vertical-align:top;line-height:1.5;font-size:14.5px;color:#222}\n.bwc-page .bwc-table tr:last-child td{border-bottom:0}\n.bwc-page .bwc-table td:first-child{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:#111;width:34%;background:#f5f5f5;font-size:12.5px}\n\n.bwc-page .bwc-faq{margin-top:36px}\n.bwc-page .bwc-faq-item{border-bottom:1px solid #e4e4e4;padding:16px 2px}\n.bwc-page .bwc-faq-item:first-child{padding-top:0}\n.bwc-page .bwc-faq-q{font-family:'Oswald',sans-serif;font-size:14.5px;text-transform:uppercase;letter-spacing:.01em;color:#111;font-weight:600;margin:0;display:flex;align-items:center;gap:10px;width:100%;background:none;border:0;padding:0;cursor:pointer;text-align:left}\n.bwc-page .bwc-faq-q .qmark{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#141414;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;font-family:'Oswald',sans-serif}\n.bwc-page .bwc-faq-q .qtext{flex:1}\n.bwc-page .bwc-faq-q .bwc-faq-toggle{flex:0 0 auto;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:#141414;transition:transform .2s}\n.bwc-page .bwc-faq-item.open .bwc-faq-q .bwc-faq-toggle{transform:rotate(45deg)}\n.bwc-page .bwc-faq-a{font-size:14px;line-height:1.65;color:#4a4a4a;margin:8px 0 0;padding-left:32px;display:none}\n.bwc-page .bwc-faq-item.open .bwc-faq-a{display:block}\n\n.bwc-page .bwc-cta{margin-top:36px;background:#141414;color:#fff;padding:40px 24px;text-align:center}\n.bwc-page .bwc-cta h2{margin:0 0 12px;font-size:24px;line-height:1.25;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.02em;font-weight:700;color:#fff!important}\n.bwc-page .bwc-cta p{margin:0 auto 22px;line-height:1.65;max-width:560px;opacity:.85;font-size:14.5px;color:#fff!important}\n.bwc-page .bwc-btn{display:inline-block;background:#fff;color:#111!important;padding:15px 40px;font-family:'Oswald',sans-serif;font-size:15px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:2px solid #fff;cursor:pointer}\n.bwc-page .bwc-cta-form{margin:0;display:inline-block}\n\n.bwc-page .bwc-bottom-pad{height:26px}\n\n@media(max-width:768px){\n.bwc-page .bwc-container{padding:0}\n.bwc-page .bwc-top{padding:20px 16px 0}\n.bwc-page .bwc-body{padding:0 16px}\n.bwc-page .bwc-h1{font-size:24px}\n.bwc-page .bwc-hero{padding:20px 16px}\n.bwc-page .bwc-hero h2{font-size:19px}\n.bwc-page .bwc-section-title{font-size:19px;margin-top:30px}\n.bwc-page .bwc-carousel-slide{flex:0 0 100%;max-width:100%}\n.bwc-page .bwc-carousel-track{gap:0}\n.bwc-page .bwc-table td{display:block;width:100%;padding:10px 16px}\n.bwc-page .bwc-table td:first-child{width:100%;border-bottom:0;padding-bottom:2px}\n.bwc-page .bwc-faq-a{padding-left:0;margin-top:6px}\n.bwc-page .bwc-btn{display:block;width:100%;text-align:center}\n.bwc-page .bwc-review-carousel-slide{grid-template-columns:1fr;}\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"bwc-page\"\u003e\n\u003cdiv class=\"bwc-container\"\u003e\n\u003cdiv class=\"bwc-card\"\u003e\n\n\u003c!-- ① TITLE --\u003e\n\u003cdiv class=\"bwc-top\"\u003e\n  \u003cp class=\"bwc-eyebrow\"\u003eClassic Western Style for Warm Days\u003c\/p\u003e\n  \u003ch1 class=\"bwc-h1\"\u003eThe Short-Sleeve Western Shirt That Works Anywhere\u003c\/h1\u003e\n\u003c\/div\u003e\n\n\u003c!-- ② HERO --\u003e\n\u003cdiv class=\"bwc-hero\"\u003e\n  \u003ch2\u003eClassic Western Detail Without the Heavy Layers\u003c\/h2\u003e\n  \u003cp\u003eTraditional striped styling meets an easy short-sleeve build for warm-weather comfort. \u003cstrong\u003eWestern yokes, pearlized snaps and two functional chest pockets\u003c\/strong\u003e give this shirt a clean, dependable look for workdays, weekends and casual nights out.\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003cdiv class=\"bwc-teeth\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\n\u003c!-- ③ MAIN IMAGE --\u003e\n\u003cdiv class=\"bwc-img-wrap\"\u003e\n  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0731\/4633\/5322\/files\/t53657-st67863-i0_2630a960-6cd3-4846-b431-9a30614c4c37.jpg?v=1785401983\" alt=\"Men wearing a short-sleeve striped Western snap shirt at an outdoor barbecue\" loading=\"eager\"\u003e\n\u003c\/div\u003e\n\n\u003c!-- ④ FEATURE INTRO --\u003e\n\u003ch2 class=\"bwc-section-title\" style=\"margin-left:26px;margin-right:26px;\"\u003eWhy You'll Love It\u003c\/h2\u003e\n\u003cp class=\"bwc-lead\" style=\"margin-left:26px;margin-right:26px;\"\u003eBuilt for men who want recognizable Western character, practical details and an easy shirt for warmer days.\u003c\/p\u003e\n\u003cp class=\"bwc-lead\" style=\"margin-left:26px;margin-right:26px;\"\u003e\n  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0731\/4633\/5322\/files\/t53685-st67907-i0.jpg?v=1785401466\" alt=\"Four available striped Western snap shirt colors with easy-care fabric benefits\" loading=\"lazy\"\u003e\n\u003c\/p\u003e\n\n\u003c!-- ⑤ WORKING FEATURE CAROUSEL --\u003e\n\u003cdiv class=\"bwc-carousel\" data-carousel data-autoplay=\"2000\" aria-label=\"Product benefits\"\u003e\n  \u003cdiv class=\"bwc-carousel-track\" data-track\u003e\n    \u003cdiv class=\"bwc-carousel-slide\"\u003e\n      \u003cdiv class=\"bwc-carousel-text\"\u003e\n        \u003cspan class=\"bwc-carousel-num\"\u003e1\u003c\/span\u003e\n        \u003ch3\u003eAuthentic Western Construction\u003c\/h3\u003e\n        \u003cp\u003ePointed front and back yokes, striped pattern matching and pearlized snap closures deliver the classic Western look without making the shirt feel overly dressy.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"bwc-carousel-slide\"\u003e\n      \u003cdiv class=\"bwc-carousel-text\"\u003e\n        \u003cspan class=\"bwc-carousel-num\"\u003e2\u003c\/span\u003e\n        \u003ch3\u003ePractical Pockets \u0026amp; Easy-Care Fabric\u003c\/h3\u003e\n        \u003cp\u003eTwo snap-flap chest pockets keep small essentials close, while the pencil slot adds work-ready function. The polyester-cotton blend is designed for straightforward everyday care.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bwc-carousel-nav\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-carousel-arrow\" data-prev aria-label=\"Previous product benefit\"\u003e‹\u003c\/button\u003e\n    \u003cdiv class=\"bwc-carousel-dots\" data-dots aria-label=\"Product benefit navigation\"\u003e\u003c\/div\u003e\n    \u003cbutton type=\"button\" class=\"bwc-carousel-arrow\" data-next aria-label=\"Next product benefit\"\u003e›\u003c\/button\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cdiv class=\"bwc-teeth\" style=\"margin-top:8px;\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\n\u003c!-- ⑥ SIZE GUIDE --\u003e\n\u003ch2 class=\"bwc-section-title\"\u003eSize Guide\u003c\/h2\u003e\n\u003cp class=\"bwc-lead\"\u003eFor the best fit, measure around the fullest part of your chest and compare it with the store size chart. Choose the larger size when between measurements or when you prefer extra room through the body.\u003c\/p\u003e\n\u003cdiv class=\"bwc-media-block\"\u003e\n  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0731\/4633\/5322\/files\/t53826-st68082-i0.jpg?v=1785404511\" alt=\"Men's Western short-sleeve shirt size guide\" loading=\"lazy\"\u003e\n\u003c\/div\u003e\n\n\u003cdiv class=\"bwc-body\"\u003e\n\n\u003c!-- ⑦ PERFECT FOR --\u003e\n\u003ch2 class=\"bwc-section-title\"\u003ePerfect For\u003c\/h2\u003e\n\u003cp class=\"bwc-lead\"\u003eOne Shirt. Workday Function. Weekend Style.\u003c\/p\u003e\n\u003cp class=\"bwc-lead\" style=\"margin-top:-6px;\"\u003eWear it with jeans and boots for a traditional Western outfit, or pair it with chinos and casual shoes for a cleaner everyday look. It works well for ranch days, casual jobs, outdoor gatherings, country concerts, travel, barbecues and relaxed weekends.\u003c\/p\u003e\n\u003cdiv class=\"bwc-media-block\"\u003e\n  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0731\/4633\/5322\/files\/t53655-st67859-i0_a5a8744e-2601-49cd-96cf-fb55e105dd34.jpg?v=1785401983\" alt=\"Men styling striped short-sleeve Western shirts for ranch and casual wear\" loading=\"lazy\"\u003e\n\u003c\/div\u003e\n\n\u003c!-- ⑧ SPECIFICATIONS --\u003e\n\u003cdiv class=\"bwc-spec\"\u003e\n  \u003ch2\u003eProduct Specifications\u003c\/h2\u003e\n  \u003ctable class=\"bwc-table\"\u003e\n    \u003ctbody\u003e\n      \u003ctr\u003e\n\u003ctd\u003eProduct Type\u003c\/td\u003e\n\u003ctd\u003eMen's Short-Sleeve Striped Western Snap Shirt\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eStyle\u003c\/td\u003e\n\u003ctd\u003eClassic Western, Ranch, Workwear And Casual\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eMaterial\u003c\/td\u003e\n\u003ctd\u003e65% Polyester, 35% Cotton\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eSleeve Type\u003c\/td\u003e\n\u003ctd\u003eShort Sleeve\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eClosure\u003c\/td\u003e\n\u003ctd\u003ePearlized Snap Front\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003ePockets\u003c\/td\u003e\n\u003ctd\u003eTwo Western Snap-Flap Chest Pockets\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eExtra Detail\u003c\/td\u003e\n\u003ctd\u003eFunctional Pocket Pencil Slot\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eYoke Design\u003c\/td\u003e\n\u003ctd\u003eTraditional Western Front And Back Yokes\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003ePattern\u003c\/td\u003e\n\u003ctd\u003eVertical Stripes With Directional Yoke And Pocket Panels\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eFit\u003c\/td\u003e\n\u003ctd\u003eClassic Everyday Fit\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eAvailable Colors\u003c\/td\u003e\n\u003ctd\u003eNavy Stripe, Light Multi-Stripe, Charcoal Stripe And Light Blue Stripe\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eAvailable Sizes\u003c\/td\u003e\n\u003ctd\u003eSee The Product Size Selector For Current Availability\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eBest For\u003c\/td\u003e\n\u003ctd\u003eWork, Ranch Wear, Weekends, Outdoor Events, Country Concerts And Casual Outings\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003ctr\u003e\n\u003ctd\u003eCare Instructions\u003c\/td\u003e\n\u003ctd\u003eMachine Wash Cold With Similar Colors. Use A Gentle Cycle, Do Not Bleach And Tumble Dry Low Or Hang Dry.\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003c\/tbody\u003e\n  \u003c\/table\u003e\n\u003c\/div\u003e\n\n\u003c!-- ⑨ WORKING REVIEW CAROUSEL --\u003e\n\u003ch2 class=\"bwc-section-title\"\u003eCustomer Reviews\u003c\/h2\u003e\n\u003cp class=\"bwc-lead\"\u003eUse the arrows or dots to browse all four reviews.\u003c\/p\u003e\n\n\u003cdiv class=\"bwc-carousel\" data-carousel data-autoplay=\"0\" aria-label=\"Customer reviews\"\u003e\n  \u003cdiv class=\"bwc-carousel-track\" data-track\u003e\n    \u003cdiv class=\"bwc-carousel-slide bwc-review-carousel-slide\"\u003e\n      \u003cdiv class=\"bwc-review-mini\"\u003e\n        \u003cp class=\"bwc-review-title\"\u003eM. R., 56\u003c\/p\u003e\n        \u003cp class=\"bwc-review-quote\"\u003e“The Western details look sharp without feeling like a costume. The short sleeves make it much easier to wear in warm weather.”\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"bwc-review-mini\"\u003e\n        \u003cp class=\"bwc-review-title\"\u003eD. H., 63\u003c\/p\u003e\n        \u003cp class=\"bwc-review-quote\"\u003e“I like the snap buttons and useful pockets. It looks good with jeans and is comfortable enough for a full day out.”\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"bwc-carousel-slide bwc-review-carousel-slide\"\u003e\n      \u003cdiv class=\"bwc-review-mini\"\u003e\n        \u003cp class=\"bwc-review-title\"\u003eR. C., 49\u003c\/p\u003e\n        \u003cp class=\"bwc-review-quote\"\u003e“The stripe layout across the shoulders and pockets gives it a more finished look than a regular button-up shirt.”\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"bwc-review-mini\"\u003e\n        \u003cp class=\"bwc-review-title\"\u003eJ. T., 67\u003c\/p\u003e\n        \u003cp class=\"bwc-review-quote\"\u003e“Easy to wash, easy to wear and dressy enough for dinner after working outside. I would buy another color.”\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bwc-carousel-nav\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-carousel-arrow\" data-prev aria-label=\"Previous reviews\"\u003e‹\u003c\/button\u003e\n    \u003cdiv class=\"bwc-carousel-dots\" data-dots aria-label=\"Review navigation\"\u003e\u003c\/div\u003e\n    \u003cbutton type=\"button\" class=\"bwc-carousel-arrow\" data-next aria-label=\"Next reviews\"\u003e›\u003c\/button\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c!-- ⑩ WORKING FAQ ACCORDION --\u003e\n\u003cdiv class=\"bwc-faq\" data-accordion\u003e\n  \u003ch2 class=\"bwc-section-title\"\u003eFrequently Asked Questions\u003c\/h2\u003e\n\n  \u003cdiv class=\"bwc-faq-item\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-faq-q\" aria-expanded=\"false\"\u003e\n      \u003cspan class=\"qmark\"\u003eQ\u003c\/span\u003e\n      \u003cspan class=\"qtext\"\u003eWhat size should I order?\u003c\/span\u003e\n      \u003cspan class=\"bwc-faq-toggle\"\u003e+\u003c\/span\u003e\n    \u003c\/button\u003e\n    \u003cp class=\"bwc-faq-a\"\u003eMeasure around the fullest part of your chest and compare that number with the store size chart. When between sizes, choose the larger option for a more relaxed fit.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bwc-faq-item\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-faq-q\" aria-expanded=\"false\"\u003e\n      \u003cspan class=\"qmark\"\u003eQ\u003c\/span\u003e\n      \u003cspan class=\"qtext\"\u003eIs this shirt suitable for hot weather?\u003c\/span\u003e\n      \u003cspan class=\"bwc-faq-toggle\"\u003e+\u003c\/span\u003e\n    \u003c\/button\u003e\n    \u003cp class=\"bwc-faq-a\"\u003eThe short-sleeve design is intended for warmer days. The 65% polyester and 35% cotton fabric balances easy care with comfortable everyday wear.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bwc-faq-item\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-faq-q\" aria-expanded=\"false\"\u003e\n      \u003cspan class=\"qmark\"\u003eQ\u003c\/span\u003e\n      \u003cspan class=\"qtext\"\u003eAre the chest pockets functional?\u003c\/span\u003e\n      \u003cspan class=\"bwc-faq-toggle\"\u003e+\u003c\/span\u003e\n    \u003c\/button\u003e\n    \u003cp class=\"bwc-faq-a\"\u003eYes. The shirt includes two functional Western chest pockets with snap flaps, plus a convenient pencil slot on one pocket.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bwc-faq-item\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-faq-q\" aria-expanded=\"false\"\u003e\n      \u003cspan class=\"qmark\"\u003eQ\u003c\/span\u003e\n      \u003cspan class=\"qtext\"\u003eHow should I style it?\u003c\/span\u003e\n      \u003cspan class=\"bwc-faq-toggle\"\u003e+\u003c\/span\u003e\n    \u003c\/button\u003e\n    \u003cp class=\"bwc-faq-a\"\u003ePair it with denim and boots for a traditional Western outfit. For a cleaner casual look, wear it with khaki pants, dark jeans or casual trousers.\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"bwc-faq-item\"\u003e\n    \u003cbutton type=\"button\" class=\"bwc-faq-q\" aria-expanded=\"false\"\u003e\n      \u003cspan class=\"qmark\"\u003eQ\u003c\/span\u003e\n      \u003cspan class=\"qtext\"\u003eHow should I wash it?\u003c\/span\u003e\n      \u003cspan class=\"bwc-faq-toggle\"\u003e+\u003c\/span\u003e\n    \u003c\/button\u003e\n    \u003cp class=\"bwc-faq-a\"\u003eMachine wash cold with similar colors on a gentle cycle. Do not bleach. Tumble dry low or hang dry to help preserve the shirt's shape, stripe pattern and snap details.\u003c\/p\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\u003c!-- \/.bwc-body --\u003e\n\n\u003cdiv class=\"bwc-teeth inv\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"bwc-bottom-pad\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\n\u003c!-- ⑪ CTA --\u003e\n\u003cdiv class=\"bwc-cta\"\u003e\n  \u003ch2\u003eClassic Western Style, Ready for Warm Weather\u003c\/h2\u003e\n  \u003cp\u003e\n    \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0731\/4633\/5322\/files\/t53683-st67903-i0_f7c0bee0-021f-405a-be43-9a72bc25d6f0.jpg?v=1785401983\" alt=\"Four color options of the men's striped Western snap shirt\" loading=\"lazy\"\u003e\n  \u003c\/p\u003e\n  \u003cp\u003eChoose your favorite stripe and add an easy Western staple to your rotation.\u003cbr\u003eFrom workdays and outdoor gatherings to casual dinners and weekend plans, this snap-front shirt keeps traditional details comfortable and practical.\u003c\/p\u003e\n  \u003cbutton type=\"button\" class=\"bwc-btn bwc-add-to-cart\" data-fallback-variant=\"VARIANT_ID\"\u003e\n    Shop The Western Snap Shirt\n  \u003c\/button\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n(function(){\n  var carousels = document.querySelectorAll('.bwc-page [data-carousel]');\n\n  carousels.forEach(function(carousel){\n    if (carousel.getAttribute('data-bwc-initialized') === 'true') return;\n    carousel.setAttribute('data-bwc-initialized', 'true');\n\n    var track = carousel.querySelector('[data-track]');\n    var slides = track ? track.querySelectorAll('.bwc-carousel-slide') : [];\n    var dotsWrap = carousel.querySelector('[data-dots]');\n    var prevBtn = carousel.querySelector('[data-prev]');\n    var nextBtn = carousel.querySelector('[data-next]');\n\n    if (!track || !slides.length || !dotsWrap || !prevBtn || !nextBtn) return;\n\n    var activeIndex = 0;\n    var delay = parseInt(carousel.getAttribute('data-autoplay'), 10) || 0;\n    var autoplayTimer = null;\n    var carouselInView = false;\n\n    dotsWrap.innerHTML = '';\n\n    slides.forEach(function(slide, index){\n      var dot = document.createElement('button');\n      dot.type = 'button';\n      dot.className = 'bwc-carousel-dot' + (index === 0 ? ' active' : '');\n      dot.setAttribute('aria-label', 'Go to slide ' + (index + 1));\n      dot.setAttribute('aria-current', index === 0 ? 'true' : 'false');\n      dot.addEventListener('click', function(){\n        goToSlide(index);\n        restartAutoplay();\n      });\n      dotsWrap.appendChild(dot);\n    });\n\n    var dots = dotsWrap.querySelectorAll('.bwc-carousel-dot');\n\n    function goToSlide(index){\n      if (index \u003c 0) index = slides.length - 1;\n      if (index \u003e= slides.length) index = 0;\n\n      activeIndex = index;\n      var left = slides[index].offsetLeft;\n\n      if (typeof track.scrollTo === 'function') {\n        track.scrollTo({ left: left, behavior: 'smooth' });\n      } else {\n        track.scrollLeft = left;\n      }\n\n      updateDots(index);\n    }\n\n    function updateDots(index){\n      dots.forEach(function(dot, dotIndex){\n        var active = dotIndex === index;\n        dot.classList.toggle('active', active);\n        dot.setAttribute('aria-current', active ? 'true' : 'false');\n      });\n    }\n\n    function updateActiveFromScroll(){\n      var trackLeft = track.getBoundingClientRect().left;\n      var closestIndex = 0;\n      var closestDistance = Infinity;\n\n      slides.forEach(function(slide, index){\n        var distance = Math.abs(slide.getBoundingClientRect().left - trackLeft);\n        if (distance \u003c closestDistance) {\n          closestDistance = distance;\n          closestIndex = index;\n        }\n      });\n\n      activeIndex = closestIndex;\n      updateDots(activeIndex);\n    }\n\n    var scrollTimer;\n    track.addEventListener('scroll', function(){\n      clearTimeout(scrollTimer);\n      scrollTimer = setTimeout(updateActiveFromScroll, 80);\n    }, { passive: true });\n\n    prevBtn.addEventListener('click', function(){\n      goToSlide(activeIndex - 1);\n      restartAutoplay();\n    });\n\n    nextBtn.addEventListener('click', function(){\n      goToSlide(activeIndex + 1);\n      restartAutoplay();\n    });\n\n    function stopAutoplay(){\n      if (autoplayTimer) {\n        clearInterval(autoplayTimer);\n        autoplayTimer = null;\n      }\n    }\n\n    function startAutoplay(){\n      stopAutoplay();\n      if (delay \u003c= 0 || !carouselInView || slides.length \u003c 2) return;\n      autoplayTimer = setInterval(function(){\n        goToSlide(activeIndex + 1);\n      }, delay);\n    }\n\n    function restartAutoplay(){\n      stopAutoplay();\n      startAutoplay();\n    }\n\n    track.addEventListener('pointerdown', stopAutoplay);\n    track.addEventListener('touchstart', stopAutoplay, { passive: true });\n    track.addEventListener('pointerup', restartAutoplay);\n    track.addEventListener('touchend', restartAutoplay, { passive: true });\n    carousel.addEventListener('mouseenter', stopAutoplay);\n    carousel.addEventListener('mouseleave', restartAutoplay);\n\n    if ('IntersectionObserver' in window) {\n      var observer = new IntersectionObserver(function(entries){\n        entries.forEach(function(entry){\n          carouselInView = entry.isIntersecting;\n          if (carouselInView) startAutoplay();\n          else stopAutoplay();\n        });\n      }, { threshold: 0.35 });\n\n      observer.observe(carousel);\n    } else {\n      carouselInView = true;\n      startAutoplay();\n    }\n\n    updateDots(0);\n  });\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n(function(){\n  var accordions = document.querySelectorAll('.bwc-page [data-accordion]');\n\n  accordions.forEach(function(accordion){\n    if (accordion.getAttribute('data-bwc-initialized') === 'true') return;\n    accordion.setAttribute('data-bwc-initialized', 'true');\n\n    accordion.querySelectorAll('.bwc-faq-q').forEach(function(button){\n      button.addEventListener('click', function(){\n        var item = button.closest('.bwc-faq-item');\n        if (!item) return;\n\n        var shouldOpen = !item.classList.contains('open');\n        item.classList.toggle('open', shouldOpen);\n        button.setAttribute('aria-expanded', shouldOpen ? 'true' : 'false');\n      });\n    });\n  });\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n(function(){\n  function isUsableButton(button){\n    if (!button) return false;\n    if (button.disabled) return false;\n    if (button.getAttribute('aria-disabled') === 'true') return false;\n    return true;\n  }\n\n  function findProductForm(){\n    var forms = document.querySelectorAll('form[action*=\"\/cart\/add\"]');\n\n    for (var i = 0; i \u003c forms.length; i++) {\n      if (!forms[i].closest('.bwc-page')) return forms[i];\n    }\n\n    return forms.length ? forms[0] : null;\n  }\n\n  function findThemeAddButton(form){\n    var shrineButton = document.querySelector('button.main-product-atc[name=\"add\"]');\n    if (shrineButton \u0026\u0026 !shrineButton.classList.contains('bwc-add-to-cart')) {\n      return shrineButton;\n    }\n\n    if (form) {\n      var formButton = form.querySelector(\n        'button[name=\"add\"], button[type=\"submit\"], input[type=\"submit\"]'\n      );\n      if (formButton \u0026\u0026 !formButton.classList.contains('bwc-add-to-cart')) {\n        return formButton;\n      }\n    }\n\n    var buttons = document.querySelectorAll(\n      'button[name=\"add\"], button[type=\"submit\"], input[type=\"submit\"]'\n    );\n\n    for (var i = 0; i \u003c buttons.length; i++) {\n      if (buttons[i].classList.contains('bwc-add-to-cart')) continue;\n\n      var text = (buttons[i].textContent || buttons[i].value || '')\n        .trim()\n        .toLowerCase();\n\n      if (\n        text === 'add to cart' ||\n        text === 'add to bag' ||\n        text.indexOf('add to cart') !== -1\n      ) {\n        return buttons[i];\n      }\n    }\n\n    return null;\n  }\n\n  function getVariantId(form, fallbackId){\n    if (form) {\n      var checked = form.querySelector('input[name=\"id\"]:checked');\n      if (checked \u0026\u0026 checked.value) return checked.value;\n\n      var select = form.querySelector('select[name=\"id\"]');\n      if (select \u0026\u0026 select.value) return select.value;\n\n      var input = form.querySelector('input[name=\"id\"]');\n      if (input \u0026\u0026 input.value) return input.value;\n    }\n\n    if (fallbackId \u0026\u0026 fallbackId !== 'VARIANT_ID') return fallbackId;\n    return '';\n  }\n\n  function addVariantDirectly(variantId, button){\n    button.disabled = true;\n    button.setAttribute('aria-busy', 'true');\n\n    var originalText = button.textContent;\n    button.textContent = 'Adding...';\n\n    fetch('\/cart\/add.js', {\n      method: 'POST',\n      headers: {\n        'Content-Type': 'application\/json',\n        'Accept': 'application\/json'\n      },\n      body: JSON.stringify({\n        id: variantId,\n        quantity: 1\n      })\n    })\n    .then(function(response){\n      if (!response.ok) {\n        return response.json().catch(function(){ return {}; }).then(function(data){\n          throw new Error(data.description || data.message || 'Unable to add this item.');\n        });\n      }\n      return response.json();\n    })\n    .then(function(){\n      window.location.href = '\/cart';\n    })\n    .catch(function(error){\n      alert(error.message || 'Unable to add this item. Please select an available color and size above.');\n      button.disabled = false;\n      button.removeAttribute('aria-busy');\n      button.textContent = originalText;\n    });\n  }\n\n  document.addEventListener('click', function(event){\n    var button = event.target.closest('.bwc-add-to-cart');\n    if (!button) return;\n\n    event.preventDefault();\n\n    var form = findProductForm();\n    var themeButton = findThemeAddButton(form);\n\n    if (themeButton) {\n      if (!isUsableButton(themeButton)) {\n        alert('Please select an available color and size above before adding this item.');\n        if (form \u0026\u0026 typeof form.scrollIntoView === 'function') {\n          form.scrollIntoView({ behavior: 'smooth', block: 'center' });\n        }\n        return;\n      }\n\n      themeButton.click();\n      return;\n    }\n\n    var variantId = getVariantId(\n      form,\n      button.getAttribute('data-fallback-variant')\n    );\n\n    if (!variantId) {\n      alert('Please select an available color and size above before adding this item.');\n      if (form \u0026\u0026 typeof form.scrollIntoView === 'function') {\n        form.scrollIntoView({ behavior: 'smooth', block: 'center' });\n      }\n      return;\n    }\n\n    addVariantDirectly(variantId, button);\n  });\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e\n\u003c!-- \/.bwc-card --\u003e\n\u003c\/div\u003e\n\u003c!-- \/.bwc-container --\u003e\n\u003c\/div\u003e\u003c!-- \/.bwc-page --\u003e","brand":"tjx","offers":[{"title":"Navy Stripe \/ S","offer_id":43763416858714,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-S","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ M","offer_id":43763416891482,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-M","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ L","offer_id":43763416924250,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-L","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ XL","offer_id":43763416957018,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ XXL","offer_id":43763416989786,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-XXL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ 3XL","offer_id":43763417022554,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-3XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ 4XL","offer_id":43763417055322,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-4XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ 5XL","offer_id":43763417088090,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-5XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Navy Stripe \/ 6XL","offer_id":43763417120858,"sku":"NC02292607304460-纽扣衬衫-藏蓝色条纹-6XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ S","offer_id":43763417153626,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-S","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ M","offer_id":43763417186394,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-M","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ L","offer_id":43763417219162,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-L","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ XL","offer_id":43763417251930,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ XXL","offer_id":43763417284698,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-XXL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ 3XL","offer_id":43763417317466,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-3XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ 4XL","offer_id":43763417350234,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-4XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ 5XL","offer_id":43763417383002,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-5XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Multi-Stripe \/ 6XL","offer_id":43763417415770,"sku":"NC02292607304460-纽扣衬衫-浅色多条纹-6XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ S","offer_id":43763417448538,"sku":"NC02292607304460-纽扣衬衫-炭条纹-S","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ M","offer_id":43763417481306,"sku":"NC02292607304460-纽扣衬衫-炭条纹-M","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ L","offer_id":43763417514074,"sku":"NC02292607304460-纽扣衬衫-炭条纹-L","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ XL","offer_id":43763417546842,"sku":"NC02292607304460-纽扣衬衫-炭条纹-XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ XXL","offer_id":43763417579610,"sku":"NC02292607304460-纽扣衬衫-炭条纹-XXL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ 3XL","offer_id":43763417612378,"sku":"NC02292607304460-纽扣衬衫-炭条纹-3XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ 4XL","offer_id":43763417645146,"sku":"NC02292607304460-纽扣衬衫-炭条纹-4XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ 5XL","offer_id":43763417677914,"sku":"NC02292607304460-纽扣衬衫-炭条纹-5XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Charcoal Stripe \/ 6XL","offer_id":43763417710682,"sku":"NC02292607304460-纽扣衬衫-炭条纹-6XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ S","offer_id":43763417743450,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-S","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ M","offer_id":43763417776218,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-M","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ L","offer_id":43763417808986,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-L","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ XL","offer_id":43763417841754,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ XXL","offer_id":43763417874522,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-XXL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ 3XL","offer_id":43763417907290,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-3XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ 4XL","offer_id":43763417940058,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-4XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ 5XL","offer_id":43763417972826,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-5XL","price":31.98,"currency_code":"USD","in_stock":true},{"title":"Light Blue Stripe \/ 6XL","offer_id":43763418005594,"sku":"NC02292607304460-纽扣衬衫-蓝色条纹-6XL","price":31.98,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0731\/4633\/5322\/files\/5_5bf234f1-828b-4b93-be1e-26524767c084.png?v=1785402759","url":"https:\/\/sthael.com\/products\/men-s-striped-western-snap-shirt-short-sleeve-workwear","provider":"Sthael","version":"1.0","type":"link"}