Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
1 / 10
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
Men's Casual Cotton Linen Pocket Shirt (Sold Out)
mysite

Men's Casual Cotton Linen Pocket Shirt (Sold Out)

$27.99 $65.99
0 sold
Color
Size
Qty 1000 in stock

Buy 2 Get Extra 10% OFF & FREE SHIPPING

Buy 4 Get Extra 15% OFF & FREE SHIPPING

Refresh Your Look And Stay In Fashion!

Applicable Scene: Daily

Sleeve Length: Short

Material: Cotton And Linen

Applicable Season: Four Seasons

Collar: Lapel

Item Type: Tops

Tops Type: Shirts

Sleeve Style: regular

Pattern Type: No

Size: S, M, L, XL, 2XL, 3XL, 4XL, 5XL

Style: Sport,Fashion,Casual

Batch time to market: 2024

The perfect combination of fashion and comfort, bringing you an unprecedented wearing experience.

This shirt has a business-casual style element and is made from cotton And Linen, which is extremely breathable. Crafted from natural cotton and linen fabric, this shirt is comfortable and breathable, making it a great choice for summer! It fulfills your gentleman style requirements. The collar adds a casual style and increases its wearability. Whether for outdoor sports, leisure activities or social gatherings, this shirt will keep you elegant and gentlemanly for a long time.

Experience the perfect combination of comfort and elegance with our meticulously crafted shirts.

Immerse yourself in a world of gentlemanly luxury and perfect your every move.

What you see is what you get, and we "Seeing is believing" (the motto of Crazyours)

 

 

Size Chat

Tag
Size
ReferenceReferenceReferenceLengthChestShoulderSleeve
USUKEURcm | inchcm | inchcm | inchcm | inch
S34-3634-3644-4673cm | 28.74''110cm | 43.31''47.5cm | 18.70''64cm | 25.20''
M38-4038-4048-5074cm | 29.13''115cm | 45.28''49.0cm | 19.29''65cm | 25.59''
L42425275cm | 29.53''120cm | 47.24''50.5cm | 19.88''66cm | 25.98''
XL44445476cm | 29.92''125cm | 49.21''52.0cm | 20.47''67cm | 26.38''
2XL46465677cm | 30.31''130cm | 51.18''53.5cm | 21.06''68cm | 26.77''
3XL48485878cm | 30.71''135cm | 53.15''55.0cm | 21.65''69cm | 27.17''
4XL5050 6079cm | 31.10''140cm | 55.12''56.5cm | 22.24'' 70cm | 27.56''
5XL5252 6280cm | 31.50''145cm | 57.09''58.0cm | 22.83'' 71cm | 27.95''

   * This data was obtained from manually measuring the product, it may be off by 0-0.2cm.

   Item sizes are true to the size chart. Refer to the size chart to find your size.
   If you're between sizes, we recommend the larger option for a better fit.

You May Also Like Don't Like These?
const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT = 99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING = `${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static deferredMount() { return false; } /** @param {!SpzElement} element */ constructor(element) { super(element); /** @private {!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win); /** @private {Object} */ this.data_ = null; /** @private {Element} */ this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ = true; /** @private {number} */ this.timerId_ = null; /** @private {number} */ this.animationExecutionCount_ = 0; /** @private {boolean} */ this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ = 5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string} */ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() { this.productAvailable_ = this.element.hasAttribute('product-available'); this.selectedVariantAvailable_ = this.element.hasAttribute('selected-variant-available'); } /** @override */ mountCallback() { this.render_(); } /** @private */ render_() { if (!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data) { return; } this.data_ = data; this.animationClass_ = `painter-${data.animation_name}-animation`; this.iterationCount_ = data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT : data.animation_iteration_count; const animationDuration = 1; const animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration + animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param {JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try { return JSON.parse(data); } catch (e) { return null; } } /** * @return {Promise} * @private */ fetch_() { return this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data || !data.enabled) { return null; } return this.parseJson_(data.detail); }); } /** @private */ getAddToCartButton_() { this.addToCartButton_ = SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"] [role="addToCart"], [data-section-type="product_detail"] [role="addToCart"], [data-section-type="product_detail"] [data-click="addToCart"], [data-section-type="product"] [data-click="addToCart"]' ); } /** @private */ restartAnimation_() { this.addToCartButton_.classList.remove(this.animationClass_); this.addToCartButton_./* OK */ offsetWidth; this.addToCartButton_.classList.add(this.animationClass_); this.animationExecutionCount_++; } /** @private */ clearTimer_() { this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */ setupTimer_() { this.timerId_ = this.win.setInterval(() => { this.restartAnimation_(); if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } }, this.delay_); } /** @private */ restartTimer_() { if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */ listenVariantChange_() { SPZUtils.Event.listen(self.document, 'dj.variantChange', (e) => { const selectedVariant = e.detail && e.detail.selected; if (!selectedVariant) { return; } const {available} = selectedVariant; if (this.selectedVariantAvailable_ !== available) { this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) { this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() { this.win.setTimeout(() => { this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /** @private */ handleButtonEffect_() { this.getAddToCartButton_(); if (!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) { ++this.animationExecutionCount_; this.addToCartButton_.classList.add(this.animationClass_); if (this.iterationCount_ === 1) { this.removeAnimationClass_(); return; } this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG, SpzCustomPainterButtonAnimation);