/* common */
.woocommerce-form {

}

.u-column1.col-1,
.u-column2.col-2 {
	padding-left: 0; padding-right: 0;
	max-width: none;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	color: #FFFFFF;
	background: #313646;
	border-radius: 0;
	font-weight: normal;
	line-height: 1.5em;
	font-size: 0.9rem;
	transition: all 0.2s ease-in-out;
	text-transform: uppercase;
	letter-spacing: .1em;
	padding: .6em 1.5em;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background-color: #1e222f;
	color: #FFFFFF;
}

.woocommerce-form {

}
	.woocommerce-form .form-row {
		display: block;
	}


.woocommerce nav.woocommerce-pagination ul {
	border: none;
}
	.woocommerce nav.woocommerce-pagination ul li {
		border: none;
	}
	.woocommerce nav.woocommerce-pagination ul li a:focus, .woocommerce nav.woocommerce-pagination ul li a:hover, .woocommerce nav.woocommerce-pagination ul li span.current {
		background: transparent;
	}


.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	border: 1px solid #eaeaea;
	border-radius: 0;
}

.woocommerce-form-login__submit {
	background-color: #677192 !important;
}
.woocommerce-form-register .woocommerce-Button {
	background-color: #313646 !important;
}


.woocommerce-EditAccountForm fieldset {
	margin-top: 2em;
}



/* alert */
.woocommerce-info::before {
	color: #313646;
}
.woocommerce-info {
	border-color: #313646;
}



/* account */
html .woocommerce-account .woocommerce-MyAccount-navigation {
	float: none;
	width: auto;
}
	.woocommerce-MyAccount-navigation ul {
		display: flex;
		justify-content: center;
		list-style-type: none;
		margin: 0 0 3em;
		padding: 0;
	}
		.woocommerce-MyAccount-navigation ul li {
			line-height: .7em;
		}
		/*.woocommerce-MyAccount-navigation ul li:not(:last-child) {
			border-right: 1px solid #b5b5b5;
		}*/
			.woocommerce-MyAccount-navigation ul li a {
				color: #b5b5b5;
				font-weight: normal;
				padding: 0 .8em;
				text-transform: uppercase;
				transition: all .3s ease;
				white-space: nowrap;
			}
			.woocommerce-MyAccount-navigation ul li a:hover,
			.woocommerce-MyAccount-navigation ul li a:focus,
			.woocommerce-MyAccount-navigation ul li.is-active a {
				color: #313646;
			}
html .woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
}





/* archive */
.term-description {
	margin-bottom: 4em;
	text-align: center;
}

html ul.products {
	display: flex;
	flex-wrap: wrap;
}


.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	border: 1px solid #dddddd;
	display: block;
	text-align: center;
}
	.woocommerce ul.products li.product > a:first-of-type,
	.woocommerce-page ul.products li.product > a:first-of-type {
		color: inherit;
		display: block;
		margin: -1px -1px 0;
		padding: 0 1.5em 2em;
	}
	.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	.woocommerce-page ul.products li.product > a.woocommerce-loop-product__link {
		padding-bottom: 0;
	}
	.woocommerce ul.products li.product a img {
		border: 1px solid #dddddd; border-bottom: 0;
		width: 100%;
		height: 100%;
		margin: 0;
		position: absolute;
		top: 0;
	}
	.woocommerce ul.products li.product a .archive-image-wrap {
		position: relative;
		overflow-y: hidden;
		width: calc(100% + 3em);
		margin: 0 -1.5em;
	}
	.woocommerce ul.products li.product a .archive-image-wrap::after {
		padding-bottom: 100%;
		content: ' ';
		display: block;
	}
	.woocommerce ul.products li.product.sale a .archive-image-wrap {
		overflow-y: visible;
	}
	.woocommerce .up-sells .archive-image-wrap::after, .woocommerce .related.products .archive-image-wrap::after {
		padding-bottom: 66% !important;
	}
	.woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
		font-size: 1.4em;
		margin-top: 1rem;
		height: 6rem;
	}
	.woocommerce ul.products li.product .button {
		margin-bottom: 1.9em;
	}
	.woocommerce ul.products li.product .price {
		color: #313646;
		font-size: 1.2em;
		/*margin: -1em 0 1em;*/
	}

.woocommerce span.onsale {
	letter-spacing: .1em;
	padding-top: 0; padding-bottom: 0;
	text-transform: uppercase;
}



/* single */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	display: flex;
	flex-wrap: wrap;
	margin: -.4em -.4em;
}
	.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
		display: block;
		padding: .4em;
	}
	.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-child {
		width: 100%;
	}

.woocommerce div.product form.cart div.quantity {
	display: inline-block;
	float: none;
}
.woocommerce div.product form.cart .button {
	display: inline-block;
	float: none;
}

.related.products,
.upsells.products {
	clear: both;
	text-align: center;
}
	.related.products > h2,
	.upsells.products > h2,
	.related-hints > h2 {
		margin: 0 0 1.5em;
	}

#product_children .purchase-option {
	padding: 0.75rem 0;
}
	#product_children .purchase-option:not(:last-of-type) {
		border-bottom: 1px solid #d8d8d8;
	}
	#product_children .purchase-option__title {
		font-weight: bolder;
	}

	#product_children .purchase-option__price {
		margin-bottom: 0;
	}
	#product_children .purchase-option__price .sale-price {
		color: #c00;
	}

	#product_children .purchase-option__quantity-inc {
		border-radius: 50%;
		width: 1.75rem;
		height: 1.75rem;
		padding: .2rem;
		margin: 0.1rem;
		transition: box-shadow 0.4s ease-in-out,
					transform 0.2s ease-in-out,
					background-color 0.2s ease-in-out;
	}

	#product_children .purchase-option__quantity-inc:hover {
		transform: translateY(-2px);
		background-color: #21244b;
		box-shadow: 0 2px 10px rgba(0,0,0,0.3);
	}

	#product_children .purchase-option__quantity-input {
		margin: auto 5px 0;
		width: 3.3rem;
	}

	#product_children .purchase-option__quantity-input.invalid {
		border-color: red;
		box-shadow: 0 0 4px red;
	}

	#product_children .show-calculator-button {
		text-align: right;
		cursor: pointer;
		display: inline-block;
		font-size: .9rem;
	}

	#product_children .add-to-cart,
	#product_children .add-to-wishlist,
	.woocommerce div.product form.cart .button {
		width: 100%;
		margin: .5rem 0;
	}
	#product_children .add-to-wishlist {
		background-color: #eee;
		color: #313646;
	}
		#product_children .add-to-wishlist img {
			filter: none;
		}
	.product_meta .posted_in {
		display: none;
	}

.foam-calculator {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: rgba(0,0,0,0.2);
}
	.foam-calculator__content {
		background-color: white;
		padding: 2em;
		max-height: 80%;
		overflow-y: auto;
		box-shadow: 0 0 3em rgba(0,0,0,0.5);
		overscroll-behavior: contain;
		position: relative;
	}
	.foam-calculator__close {
		position: sticky;
		top: .5em;
		right: 0;
		padding: .5em;
		float: right;
		z-index: 9999;
	}
	.foam-calculator__button-group {
		margin-left: -.25em;
		margin-right: -.25em;
	}
	.foam-calculator__step-header {
		margin: 2em 0 .5em 0;
	}

	.foam-calculator__button img {
		width: 2.5em !important;
		height: auto !important;
		filter: none;
	}

	.foam-calculator__button.active {
		background-color: white;
		color: #313646;
		outline: 1px solid #313646;
	}

	.foam-calculator__button.active::before {
		content: '✓';
	}

	.foam-calculator__shape {
		position: relative;
		display: none;
	}

	.foam-calculator__shape.active {
		display: block;
	}

	.foam-calculator__shape input {
		position: absolute;
		background-color: transparent;
		padding: .2em .1em;
		width: 3.8rem;
		font-size: 1rem;
	}

.foam-calculator__shape img {
		width: 100%;
		padding: 4rem;
		display: block;
	}


html .woocommerce .col2-set {
	display: flex;
	margin-right: -15px; margin-left: -15px;
	margin-bottom: 3em;
}
	html .woocommerce .col2-set .col-1 {
		flex: none;
		float: none;
		padding: 0 15px;
		width: 50%; max-width: none;
	}
	html .woocommerce .col2-set .col-2 {
		flex: none;
		float: none;
		padding: 0;
		width: 50%; max-width: none;
	}

form[class*="woocommerce"] {

}
	.woocommerce-input-wrapper {
		display: block;
		width: 100%;
	}
	form[class*="woocommerce"] input[type="text"],
	form[class*="woocommerce"] input[type="number"],
	form[class*="woocommerce"] input[type="email"],
	form[class*="woocommerce"] input[type="search"],
	form[class*="woocommerce"] input[type="password"],
	form[class*="woocommerce"] input[type="submit"],
	form[class*="woocommerce"] input[type="tel"],
	form[class*="woocommerce"] .select-style,
	form[class*="woocommerce"] textarea {
		display: block;
		width: 100%;
	}


/* tabs */
html .wc-tabs {
	border-bottom: 0;
}
	html .woocommerce div.product .woocommerce-tabs ul.tabs li {
		background: transparent;
		border-radius: .5em .5em 0 0;
		margin: 0 -1px 0 0 !important;
		padding: 0 !important;
	}
	html .woocommerce div.product .woocommerce-tabs ul.tabs li.active {
		border-bottom-color: #d3ced2;
	}
	html .woocommerce div.product .woocommerce-tabs ul.tabs li:not(.active) {
		color: #bababa !important;
	}
		html .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
		html .woocommerce div.product .woocommerce-tabs ul.tabs li::after {
			display: none;
		}
		html .woocommerce div.product .woocommerce-tabs ul.tabs li a {
			color: inherit;
			font-size: 1em;
			font-weight: normal;
			padding: .4em 1em !important;
		}



/* cart customisation */
button[name="update_cart"][disabled] {
	visibility: hidden;
}

/* yith loyalty points customisation */
.ywpar-button-message {
	display: none;
}
.ywpar_apply_discounts_container {
	display: block !important;
}
.ywpar_apply_discounts_container .form-row-first {
	display: none;
}
.ywpar_apply_discounts_container .form-row-last {
	position: absolute;
	top: 10px;
	right: 0;
}


.woocommerce-cart .tax_label, .woocommerce-cart .includes_tax { display: none; }
.woocommerce-checkout .tax_label, .woocommerce-checkout .includes_tax { display: none; }