window.onload = () => { _waEmbed(wa_btnSetting, wa_widgetSetting); }; Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
6 / 7
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
Gentleman's Lapel Knit Soft Blazer (Sold Out)
mysite

Gentleman's Lapel Knit Soft Blazer (Sold Out)

$54.99 $119.99
0 sold
Color
Size
Qty 1000 in stock

Buy 2 Get Extra 10% OFF

Buy 4 Get Extra 15% OFF & FREE SHIPPING

Refresh Your Look And Stay In Fashion!

Wearing occasion: work/daily/leisure

Material:Cashmere

Sleeve Length: Long Sleeve

Style: Fashion Casual

Style Type: Pure

Season: Autumn/Winter/Spring

Pattern Type: NO 

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

Place of origin: United Kingdom

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

Details :

 

Size Chat

Tag
Size
ReferenceReferenceReferenceLengthChestShoulderSleeve
USUKEURcm | inchcm | inchcm | inchcm | inch
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);