#main .wp-block-woocommerce-cart, #main .wp-block-woocommerce-checkout, .woocommerce-dashboard .woocommerce, .woocommerce-account .woocommerce, .woocommerce-order-received .woocommerce {
	padding-top: calc(105px + 40px);
	width: auto;
    max-width: 100% !important;
	padding-bottom: 3rem;
}
.u-columns {row-gap: 2rem;}
.woocommerce .col2-set .col-1, .woocommerce .col2-set .col-2 {
	-ms-flex: 100%;
    flex: 100%;
    max-width: 100%;
    width: 100%;
    padding: 0;
    float: none !important;
    width: 100% !important;
}
.woocommerce .col2-set .col-1 {margin-bottom: 2rem;}
.woocommerce-account .addresses .title .edit {float: left !important;}

.woocommerce-account .woocommerce form .password-input, .woocommerce-account .woocommerce-page form .password-input {
	display: block;
	width: 100%;
}
fieldset:has(.password-input) {margin-top: 3rem;}

.woocommerce-account .woocommerce-info, .woocommerce-account .woocommerce-message {
	background-color: var(--bg);
    color: var(--text);
	border: 1px solid var(--text) !important;
    border-top: 3px solid var(--text) !important;
}
.woocommerce-account .woocommerce-info::before {color: var(--text);}

.wc-block-components-totals-shipping .wc-block-components-totals-item__value {display: none !important;}

h2.category-title {
	text-align: center;
	margin: 4rem 15px 1.5rem 15px;
}
.category-products .product-container {margin-bottom: 30px;}
.category-products li.product, .category-products li.product img {-webkit-transition: all .3s linear;}
.category-products .products {
	width: 100%;
    padding: 0;
    list-style: none;
	text-align: center;
}
.category-products img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
    width: 100%;
    height: auto;
	border-radius: var(--product-corners);
	background: var(--product-img-bg);
}
.category-products img.woocommerce-placeholder.wp-post-image, .category-products img.woocommerce-placeholder.wp-post-image, .woocommerce-product-gallery__image {background: var(--product-img-bg);}
.category-products li.product {
    text-align: center;
	background: var(--product-bg);
}
li.product::marker {content: none;}

li.product:before {content: none !important;}
h2.woocommerce-loop-product__title, h3.category-title {
	color: var(--product-title);
	background: var(--product-title-bg);
	padding: 1rem;
	border-radius: var(--product-corners);
	font-weight: var(--bold);
	font-size: 1rem;
	z-index: 999;
	position: relative;
	white-space: normal;
}
a:has(h2.woocommerce-loop-product__title), a:has(h3.category-title), .product-container li:not(.menu-item) a {text-decoration: none !important;}
img.woocommerce-placeholder.wp-post-image {
    width: 100%;
    height: auto;
	border-radius: var(--product-corners);
}

.shop .product_type_simple, .shop .price, .shop .product_type_variable.add_to_cart_button {display: none;}

.product-page img.wp-post-image {
    width: 100%;
	height: auto;
	border-radius: var(--product-corners);
}
.product-page .product_meta {margin-top: 3rem;}
.product-page .product_meta a {color: var(--yellow);}

.product-page .breadcrumb, nav.rank-math-breadcrumb {margin-bottom: 0;}
.product-page h1 {
	font-size: 3rem;
	margin-bottom: 0;
	color: var(--product-p-h1);
}
.product-page .product-weight {
	font-style: italic;
}
.product-page .product-price {
    font-size: 1.5rem;
	margin-bottom: 1rem;
    font-weight: var(--light);
}
.product-page .quantity input.input-text, .variations select {
	border-radius: var(--product-corners);
    border: none;
    text-align: center;
    padding: .5rem;
}
.variations select {
	background: var(--product-p-alt-bg);
	color: var(--product-p-alt-text);
}
.product-page .quantity input.input-text {
	width: 90px;
	background: var(--product-p-nr-bg);
	color: var(--product-p-nr-text);
}
.variations {
	margin-top: 1rem;
	margin-bottom: 2rem;
}
.woocommerce-variation-price span {
	font-weight: var(--bold);
    margin-top: .2rem;
    display: inline-block;
}
.woocommerce-variation.single_variation {
	margin-top: -2rem;
	margin-bottom: 2rem;
}
.single_variation_wrap {padding-top: .1rem;}
.variations label {
	margin-bottom: 0;
    margin-right: .25rem;
}
a.reset_variations {margin-left: .5rem;}
.woocommerce-variation-add-to-cart, form.cart:not(.variations_form) {
    display: flex;
    align-items: center;
    gap: 10px;
	margin-top: .5rem;
	margin-bottom: 1rem;
}
.product-add-to-basket .quantity {margin: 0;}

.product-add-to-basket .single_add_to_cart_button {
    flex-shrink: 0;
    height: 40px;
    padding: 0 20px;
	border: none;
}
.product-add-to-basket .single_add_to_cart_button.disabled {
	opacity: .2;
	pointer-events: none;
}

a.view-cart-button {
	margin-top: 1rem;
	display: inline-block;
}

ol.flex-control-thumbs {
    padding-inline-start: 0;
    list-style: none;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    margin-top: .5rem;
    -webkit-overflow-scrolling: touch;
}
ol.flex-control-thumbs::-webkit-scrollbar {display: none;}
ol.flex-control-thumbs {scrollbar-width: none;}
ol.flex-control-thumbs li {
	background: var(--product-img-bg);
    display: inline-block;
	padding-bottom: 0;
	margin-right: .5rem;
}
ol.flex-control-thumbs li:last-child {margin-right: 0;}

.wc-block-components-order-summary .wc-block-components-order-summary-item__image>img {background: var(--product-img-bg);}

.wp-block-woocommerce-checkout-order-summary-coupon-form-block, 
.wp-block-woocommerce-cart-order-summary-coupon-form-block, 
.wc-block-checkout__shipping-option--free, 
.related-products .price, .related-products .add_to_cart_button, .related-products .product_type_simple {display: none;}

.wp-block-woocommerce-cart .wc-block-cart__submit-button {width: 100%;}
.wp-block-woocommerce-cart .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	border: none;
    box-shadow: none;
}

.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
	border: none;
    padding-top: .05rem;
    border-radius: var(--checkout-sum-corners);
    background: var(--checkout-sum-bg);
    color: var(--checkout-sum-text);
}
#main .wc-block-components-totals-wrapper {border-top: none;}
.wp-block-woocommerce-checkout .is-large .wc-block-checkout__sidebar {top: 100px;}
@media only screen and (max-width:778px) {
	.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {padding: 1rem;}
	.is-medium .wp-block-woocommerce-checkout-order-summary-block.checkout-order-summary-block-fill-wrapper {padding-top: 1rem !important;}
}

.wc-block-components-validation-error, .wc-block-components-form .wc-block-components-text-input.has-error label, .wc-block-components-text-input.has-error label {
	color: var(--checkout-error) !important;
}
.wc-block-components-validation-error svg {
	fill: var(--checkout-error) !important;
}
.wc-block-components-form .wc-block-components-text-input.has-error input, .wc-block-components-form .wc-block-components-text-input.has-error input:active, .wc-block-components-form .wc-block-components-text-input.has-error input:focus, .wc-block-components-form .wc-block-components-text-input.has-error input:hover, .wc-block-components-text-input.has-error input, .wc-block-components-text-input.has-error input:active, .wc-block-components-text-input.has-error input:focus, .wc-block-components-text-input.has-error input:hover {
	border-color: var(--checkout-error) !important;
}

.related-products {
	background: var(--product-p-other-bg);
	color: var(--product-p-other-text);
}
.related-products .product_type_variable, .related-products .add_to_cart_button, 
.product-container .product_type_variable, .product-container .add_to_cart_button, a.button.product_type_simple {display: none !important;}

.product-short-description {padding-bottom: .1rem;}

.product-title-overlap h2.woocommerce-loop-product__title {
	margin: -2rem 1rem 0 1rem;
}
.product-title-under .product-title { /* under styles */ }

/* Add Default Address */
span.woocommerce-input-wrapper {
    width: 100%;
}
.woocommerce-account .woocommerce button.button {
	margin-top: 1rem !important;
}
.woocommerce-account .col-1.woocommerce-Address {display: none !important;}
.woocommerce-account .woocommerce-Address-title a.edit {
	margin-bottom: 1rem;
	font-weight: var(--bold);
}

.woocommerce-order-received .woocommerce ul.order_details {padding-left: 0;}
.woocommerce-account .woocommerce .woocommerce-column--billing-address, .woocommerce-order-received .woocommerce .woocommerce-column--billing-address, 
.wp-block-woocommerce-checkout-billing-address-block.wc-block-components-checkout-step, 
.wc-block-components-checkbox.wc-block-checkout__use-address-for-billing {
	display: none;
}

@media only screen and (min-width: 768px) {
    .wp-block-columns, .wp-block-woocommerce-cart, #main .wp-block-woocommerce-checkout, .woocommerce-dashboard .woocommerce, .woocommerce-account .woocommerce, .woocommerce-order-received .woocommerce {
        margin-left: 5vw;
        margin-right: 5vw;
		padding-left: 15px;
        padding-right: 15px;
    }
	.category-products li.product {
		padding: 1rem;
		border-radius: var(--product-corners);
		height: 100%;
	}
	.category-products li.product:hover, .category-products li.product:focus {
		background: var(--product-bg-hover);
		-moz-box-shadow: var(--moz-box-shadow-lg);
		-webkit-box-shadow: var(--webkit-box-shadow-lg);
		box-shadow: var(--box-shadow-lg);
	}
	.category-products li.product:hover img, .category-products li.product:focus img {transform: scale(1.05);}
	.category-products img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail, img.woocommerce-placeholder.wp-post-image {margin-bottom: 1rem;}
}
@media only screen and (max-width: 767px) {
	h2.woocommerce-loop-product__title, h3.category-title {margin: -1rem 15px 0 15px;}
	.product-page h1 {font-size: 2rem;}
	#main .wp-block-woocommerce-cart, #main .wp-block-woocommerce-checkout, .woocommerce-dashboard .woocommerce, .woocommerce-account .woocommerce, .woocommerce-order-received .woocommerce {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
		margin-top: 0 !important;
	}
	.wc-block-components-totals-wrapper {
		padding-bottom: 0 !important;
	}
	.wp-block-woocommerce-checkout-order-summary-block .wp-block-woocommerce-checkout-order-summary-cart-items-block.wc-block-components-totals-wrapper {
		padding-top: 1.5rem !important;
	}
}
@media only screen and (min-width: 1600px) {
    .wp-block-columns, .wp-block-woocommerce-cart, #main .wp-block-woocommerce-checkout, .woocommerce-dashboard .woocommerce, .woocommerce-account .woocommerce, .woocommerce-order-received .woocommerce {
        margin-left: 10vw;
        margin-right: 10vw;
    }
}