/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Typography
# Colors
# Forms
# Woocommerce
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/

.woocommerce ul.products li.product .button,
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-message .button {
	font-size: 12px;
}

.edit-account span em {
	font-size: 13px;
	font-size: 0.8125rem;
}

.woocommerce .cart .button,
.woocommerce .cart input.button,
.product_meta,
.woocommerce a.added_to_cart {
	font-size: 14px;
	font-size: 0.875rem;
}

.single-product h2 {
	font-size: 22px;
	font-size: 1.5rem;
}

/*--------------------------------------------------------------
# Colors
--------------------------------------------------------------*/

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: #000;
}

.woocommerce-error:before,
.woocommerce-info:before,
.woocommerce-message:before {
	color: #515151;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: #000;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-color: #000;
}

.woocommerce table.shop_table,
.woocommerce table.shop_attributes,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border-color: #000;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

.woocommerce .quantity .qty,
.select2-container--default .select2-selection--single .select2-selection__rendered {
	border: 1px solid #000;
}

.woocommerce .quantity .qty {
	height: 50px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    min-height: 50px;
}

.single_add_to_cart_button {
	width: 50%;
}

.wc-block-attribute-filter .wc-block-attribute-filter-list li input {
	display: none;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	padding-left: 1.2em;
	padding-right: 1.2em;
}

.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
	width: 240px;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
    padding-left: 15px;
    padding-right: 15px;
}

.woocommerce .woocommerce-form-coupon .form-row-first {
	width: auto;
}

.woocommerce .woocommerce-form-coupon .form-row-first {
	float: left;
}

.woocommerce .woocommerce-form-coupon .form-row-last {
	float: left;
}

.select2-container .select2-choice,
.select2-container .select2-selection--single {
	border-radius: 0;
	border: none;
	height: auto;
}

.select2-container .select2-selection--single {
	position: relative;
	background: transparent;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-top: 7px;
    padding-bottom: 7px;
    padding-left: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 10px;
	right: 6px;
}

.woocommerce ul.order_details {
    margin-bottom: 2em;
}

.woocommerce .shop_table th:last-child,
.woocommerce .shop_table td:last-child {
	border-right: none;
}

.woocommerce .woocommerce-customer-details address {
    background: #ebe9eb;
	border: none;
	border-radius: 0;
	padding: 14px 22px;
}

/*--------------------------------------------------------------
# Woocommerce
--------------------------------------------------------------*/

.wc-block-featured-category .wc-block-featured-category__description,
.wc-block-featured-category .wc-block-featured-category__link,
.wc-block-featured-category .wc-block-featured-category__price,
.wc-block-featured-category .wc-block-featured-category__title,
.wc-block-featured-product .wc-block-featured-product__description,
.wc-block-featured-product .wc-block-featured-product__link,
.wc-block-featured-product .wc-block-featured-product__price,
.wc-block-featured-product .wc-block-featured-product__title,
.wc-block-featured-product .wc-block-featured-product__variation {
	position: relative;
}

.wc-block-featured-category,
.wc-block-featured-product,
.wc-block-featured-product .wc-block-featured-product__wrapper {
	display: flex;
}

.woocommerce ul.products li.product .button {
	margin-top: 0;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
	padding-bottom: 2px;
}

.woocommerce span.onsale {
	background: #000;
	border-radius: 0;
	font-size: 10px;
	line-height: 16px;
	min-height: inherit;
	padding-left: 8px;
	padding-right: 8px;
	text-transform: uppercase;
	z-index: 2;
}

.woocommerce ul.products li.product .onsale {
	margin: 0;
}

.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
	top: 10px;
	left: 10px;
	right: auto;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	border: none;
}

.woocommerce nav.woocommerce-pagination ul li:not(:last-child) {
	margin-right: 2px;
}

.woocommerce div.product div.images {
	margin-bottom: 4em;
}

.woocommerce div.product .woocommerce-tabs .panel {
	margin-bottom: 4.2em;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	margin-bottom: 4em;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background-color: transparent;
	border-width: 0 0 1px 0;
	border-radius: 0;
	margin: 0 20px 0 0;
	padding-left: 5px;
	padding-right: 5px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before {
	display: none;
}

.woocommerce table.shop_attributes td p {
	padding-left: 8px;
	padding-right: 8px;
}

.woocommerce table.shop_table,
.woocommerce table.shop_attributes {
	border-style: solid;
	border-width: 1px;
}

.woocommerce table.shop_table {
	border-radius: 0;
}

.cart_totals h2 {
	margin-top: 30px;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	border-top: 0;
}

#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
	width: 60px;
}

.woocommerce a.remove {
	line-height: 0.85;
	text-align: left;
	padding-left: 0.22em;
}

.woocommerce table.shop_table .product-remove {
	text-align: center;
	width: 50px;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	padding-left: 1.2em;
	padding-right: 1.2em;
}

.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
	width: 240px;
}

.woocommerce-error:before,
.woocommerce-info:before,
.woocommerce-message:before {
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods,
#add_payment_method #payment div.form-row,
.woocommerce-cart #payment div.form-row,
.woocommerce-checkout #payment div.form-row {
	padding-left: 2em;
	padding-right: 2em;
}

#add_payment_method #payment div.form-row,
.woocommerce-cart #payment div.form-row,
.woocommerce-checkout #payment div.form-row {
	padding-top: 2em;
	padding-bottom: 2em;
}

.wc_payment_method input[type="radio"] + label:before {
	top: 1px;
}

.payment_method_paypal input[type="radio"] + label:before {
	top: 1.1em;
}

.woocommerce-checkout #payment ul.payment_methods li img {
	margin-right: 16px;
}

.woocommerce-checkout #payment .payment_method_paypal .about_paypal,
.woocommerce-account .addresses .title .edit {
	border: none;
}

.woocommerce-terms-and-conditions-wrapper {
	float: left;
	max-width: 800px;
	width: calc(100% - 200px);
}

.woocommerce-privacy-policy-text p {
	margin-bottom: 0;
}

.woocommerce-account .addresses .title h3 {
	margin-top: 0;
	margin-bottom: 0.5em;
}

.woocommerce-MyAccount-content form > h3 {
    margin-top: 0;
}

.woocommerce .woocommerce-address-fields button.button,
.edit-account button.button {
	margin-top: 1.2em;
	padding-left: 2em;
	padding-right: 2em;
}

.woocommerce form.login {
	max-width: 680px;
}

.woocommerce .woocommerce-ordering {
    margin-bottom: 2.6em;
}

.woocommerce div.product form.cart .variations {
	margin-top: 0;
    margin-bottom: 4vw;
}

.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th {
	padding: 6px 6px 6px 0;
    vertical-align: middle;
}

.woocommerce div.product form.cart .variations td.label {
	width: 1%;
}

.woocommerce div.product form.cart .variations label {
    margin-bottom: 0;
}

.woocommerce div.product form.cart .variations select {
    padding-left: 15px;
}

@media only screen and (min-width: 768px){

	.woocommerce a.added_to_cart {
		float: right;
		padding-top: 0;
	}

}

@media only screen and (min-width: 992px){

	.woocommerce-terms-and-conditions-wrapper {
		float: left;
		max-width: 800px;
		width: calc(100% - 210px);
	}

	.woocommerce-order-details,
	.woocommerce-customer-details {
		width: 48%;
	}

	.woocommerce-order-details {
		float: left;
	}

	.woocommerce-customer-details {
		float: right;
	}

}

@media only screen and (min-width: 1025px){

	/* Hover states */
	.woocommerce #respond input#submit.alt:hover,
	.woocommerce a.button.alt:hover,
	.woocommerce button.button.alt:hover,
	.woocommerce input.button.alt:hover {
		background-color: #dfdcde;
	}

}

@media only screen and (max-width: 991px){

	.woocommerce #payment #place_order,
	.woocommerce-page #payment #place_order {
		margin-top: 1em;
		margin-bottom: 0;
	}

}

@media only screen and (max-width: 767px){

	.woocommerce a.added_to_cart {
		display: block;
	}

	.checkout_coupon button {
		white-space: nowrap;
	}

}