
/* WooCommerce CSS for the Magnolia theme */

/* Table of Contents

    - Global
    - Product Archive Pages
    - Product Widgets & Blocks
    - Single Product Pages
        - Reviews
    - Cart Page
    - Checkout Page
    - Login Page
    - My Account Page

*/

/* Global
--------------------------------------------- */
.woocommerce .woocommerce-message, .woocommerce .woocommerce-error, .woocommerce .woocommerce-info {
	background: var(--global-palette9);
	border: 1px solid #eeeae8 !important;
}

.woocommerce .woocommerce-message, .woocommerce .woocommerce-info {
	border-left-color: var(--global-palette9);
}

/* Product Archive Pages
--------------------------------------------- */
.woocommerce .primary-sidebar {
	position: sticky;
	top: 180px;
	max-height: calc(100vh - 180px);
	align-self: start;
	margin-bottom: 4rem;
}

.content-style-boxed.woocommerce.archive .content-area {
	margin-top: 0;
}

.woocommerce-page.has-sidebar.has-sidebar .content-container {
	grid-template-columns: 1fr 22%;
	grid-column-gap: 3.5rem;
}

.woocommerce-page.has-sidebar.has-left-sidebar .content-container {
	grid-template-columns: 22% 1fr;
	grid-column-gap: 3.5rem;
}

select.orderby {
	font-weight: normal !important;
}

.woocommerce .wp-block-woocommerce-product-categories .wc-block-product-categories-list .wc-block-product-categories-list-item a:hover {
	color: var(--global-palette2);
	text-decoration: none !important;
}

.woocommerce ul.products:not(.woo-archive-btn-button) .button, .wc-block-grid__product:not(.woo-archive-btn-button) .wc-block-grid__product-add-to-cart .wp-block-button__link {
	font-size: 11px !important;
	letter-spacing: .15em !important;
	font-weight: normal !important;
}

.woocommerce ul.products.products-list-view li.product .woocommerce-loop-product__title {
	font-size: 32px !important;
}

.woocommerce ul.products.products-list-view li.product {
	padding: 1rem 2.5rem;
}

.woocommerce ul.products:not(.woo-archive-btn-button) .wc-block-grid__product-price, .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-price {
	margin-bottom: .5em;
}

.wc-block-product-categories-list-item a:hover {
	color: var(--global-palette-highlight-alt);
}

.product-excerpt {
	text-align: left !important;
}

.wc-block-product-categories ul {
	padding-left: 0 !important;
	list-style: none;
	margin: 0;
}

.wc-block-components-price-slider__range-input-wrapper .wc-block-components-price-slider__range-input {
	z-index: 9 !important;
}

.wc-block-product-categories ul li {
	padding-bottom: 3px;
}

.sidebar-slug-sidebar-secondary h4 {
	border-bottom: 1px solid;
	border-color: #eeeae8;
	padding-bottom: 6px;
}

body .wc-block-components-product-rating__stars {
	height: auto;
	margin-top: -2px;
}

body .wc-block-components-product-rating__stars::before {
	position: relative;
}

.shop-accordion .wp-block-kadence-pane:last-child .kt-accordion-header-wrap .kt-blocks-accordion-header {
	border: 0 !important;
}

.wc-block-components-checkbox {
	margin-top: 0 !important;
}

.wc-block-components-price-slider__controls .wc-block-components-price-slider__amount {
	padding: 8px !important;
	font-size: 12px;
}

.wc-block-components-price-slider--is-input-inline .wc-block-components-price-slider__controls .wc-block-components-price-slider__amount {
	max-width: 68px;
}

.woocommerce nav.woocommerce-pagination {
	text-align: center;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	border-color: var(--global-palette-btn-bg-hover) !important;
	background: var(--global-palette-btn-bg-hover);
	color: var(--global-palette-btn-hover);
}

.woocommerce nav.woocommerce-pagination ul li .page-numbers {
	font-family: var(--global-primary-nav-font-family);
	font-size: 11px;
	border: 1px solid #eeeae8 !important;
	border-radius: 0 !important;
	padding: 9px 16px !important;
	-webkit-font-smoothing: subpixel-antialiased;
}

.woocommerce nav.woocommerce-pagination ul li .page-numbers:hover {
	border-color: var(--global-palette-btn-bg-hover) !important;
	background: var(--global-palette-btn-bg-hover);
	color: var(--global-palette-btn-hover);
}

.woocommerce.content-style-boxed nav.woocommerce-pagination ul li .page-numbers {
	border: 0 !important;
	background: #fff;
}

.woocommerce.content-style-boxed nav.woocommerce-pagination ul li .page-numbers:hover, .woocommerce.content-style-boxed nav.woocommerce-pagination ul li span.current {
	background: var(--global-palette-btn-bg-hover);
	color: var(--global-palette-btn-hover);
}

.woocommerce ul.products li.product a, .woocommerce ul.products li.product .woocommerce-loop-product__title a, form.woocommerce-product-search .kadence-search-icon-wrap {
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}

.woocommerce ul.products li.product a:hover {
	color: var(--global-palette-highlight);
}

/* Product Widgets & Blocks
--------------------------------------------- */
.woocommerce.widget_product_categories > ul li a {
	border: 0;
}

.woocommerce.widget_price_filter .price_slider_amount .button {
	font-size: 13px;
	padding: 10px 12px 8px;
}

.wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale {
	padding: 8px 10px 7px;
	margin: 3px;
	letter-spacing: 1px;
	font-family: var(--global-primary-nav-font-family);
	font-size: 12px;
	border-radius: 0;
}

.price_label {
	font-weight: normal;
}

.woocommerce ul.products li.product .star-rating ~ .price {
	padding-right: 0 !important;
}

.wc-block-grid__product-rating, .woocommerce ul.products li.product .star-rating {
	display: none !important;
}

.wc-block-grid__product .wc-block-grid__product-rating ~ .wc-block-grid__product-price {
	padding: 0;
}

.wc-block-grid .entry {
	background-color: var(--global-palette9) !important;
}

/* Single Product Pages
--------------------------------------------- */
.woocommerce-product-gallery {
	height: auto !important;
}

.woocommerce.single-product .entry {
	padding-top: 2em !important;
	box-shadow: none;
}

.woocommerce div.product .button.single_add_to_cart_button {
	padding: 0 18px;
	-webkit-font-smoothing: subpixel-antialiased;
}

.woocommerce .woocommerce-product-rating .star-rating {
	float: none;
	margin: 15px auto 0;
}

.woocommerce div.product .woocommerce-product-rating {
	text-align: center;
}

.woocommerce div.product .woocommerce-product-rating a {
	text-decoration: none !important;
	font-size: 85%;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-family: var(--global-primary-nav-font-family);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-size: 12px;
	-webkit-font-smoothing: subpixel-antialiased;
}

.woocommerce .quantity .qty {
	font-size: inherit;
}

.woocommerce table.shop_attributes {
	margin-top: 24px;
}

.woocommerce section.products > h2 {
	text-align: center;
	font-size: 36px;
	margin-bottom: 0;
}

.product-details, .woocommerce div.product .product_title, .woocommerce div.product .price {
	text-align: center;
}

.woocommerce .up-sells.products, .woocommerce .related.products {
	border: 1px solid #eeeae8;
	padding: 50px 50px 20px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	border-bottom: 1px solid #eeeae8;
}

.woocommerce div.product span.price, .woocommerce div.product p.price {
	font-size: 16px;
}

/* Reviews */
.woocommerce #reviews #comments h2 {
	font-weight: 200;
	font-size: 36px;
}

.woocommerce #reviews .comment-reply-title {
	font-weight: 200;
	font-family: var(--global-heading-font-family);
	display: block;
	margin-bottom: 20px;
	font-size: 30px;
	line-height: 1.2;
}

.woocommerce div.product .product_meta > span {
	font-weight: normal;
	font-size: 13px;
	color: var(--global-palette3);
}

.woocommerce .comment-form p.stars, .woocommerce .comment-form label {
	text-align: left !important;
}

.woocommerce .comment-form-rating label, .woocommerce .comment-form-comment label, .woocommerce .comment-form label {
	display: block;
	font-family: var(--global-primary-nav-font-family);
	text-transform: uppercase !important;
	letter-spacing: 1.5px;
	font-size: 12px;
	padding-bottom: 10px;
}

.woocommerce p.stars a, .woocommerce p.stars a::before {
	font-size: 1.15em;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
	border-color: #eeeae8;
}

.woocommerce #reviews #comments ol.commentlist li .meta {
	color: var(--global-palette4);
	font-size: 12px !important;
}

.woocommerce #reviews #respond {
	background: var(--global-palette8);
	padding: 24px 24px 8px;
	margin-bottom: 30px;
}

.woocommerce .comment-form .comment-form-cookies-consent label:not(:placeholder-shown) {
	text-transform: none !important;
	font-family: var(--global-body-font-family);
	letter-spacing: inherit;
}

.woocommerce .comment-form input:not(#wp-comment-cookies-consent) {
	width: 100%;
}

/* Cart
--------------------------------------------- */
.woocommerce-cart .wc-block-components-product-name {
	text-decoration: none;
	font-family: var(--global-heading-font-family);
	font-size: 24px !important;
	-webkit-font-smoothing: antialiased;
}

.is-large.wc-block-cart .wc-block-cart-items td {
	padding-left: 0 !important;
	padding-right: 20px !important;
}

.wc-block-components-product-metadata .wc-block-components-product-metadata__description > p {
	display: none;
}

.woocommerce.product-variation-style-vertical div.product form.cart .variations select {
	margin-right: 10px;
}

.wc-block-components-product-details.wc-block-components-product-details li {
	font-size: 14px;
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	padding: .4em 0 !important;
	font-weight: normal;
	font-size: 13px;
}

.wc-block-components-button {
	transition: all .2s ease !important;
}

.wc-block-components-button:not(.is-link) {
	font-family: var(--global-primary-nav-font-family);
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 12px;
	padding: 14px 20px;
	border-radius: 0;
}

.wc-block-cart .wc-block-cart-items th, .wc-block-cart .wc-block-cart__totals-title {
	font-family: var(--global-primary-nav-font-family) !important;
	letter-spacing: 1.5px !important;
	font-weight: normal !important;
	font-size: 12px !important;
}

.wc-block-cart .wc-block-components-totals-wrapper {
	border: 0 !important;
	padding: 5px 0 0 0 !important;
}

.wc-block-cart .wc-block-components-sidebar .wc-block-components-panel, .wc-block-cart .wc-block-components-sidebar .wc-block-components-totals-coupon, .wc-block-cart .wc-block-components-sidebar .wc-block-components-totals-item {
	padding: 0 !important;
}

.wp-block-woocommerce-cart-order-summary-block {
	background: var(--global-palette8) !important;
	padding: 15px 25px 25px;
	margin-bottom: 30px;
}

table.wc-block-cart-items .wc-block-cart-items__header {
	-webkit-font-smoothing: subpixel-antialiased;
}

table.wc-block-cart-items .wc-block-components-product-name {
	font-weight: 200 !important;
	text-decoration: none !important;
	-webkit-font-smoothing: subpixel-antialiased;
}

.wc-block-cart .wc-block-components-totals-coupon {
	margin-bottom: 15px !important;
}

/* Checkout
--------------------------------------------- */
.wc-block-components-title.wc-block-components-title {
	font-size: 30px !important;
}

.wc-block-components-form .wc-block-components-text-input input:-webkit-autofill, .wc-block-components-form .wc-block-components-text-input.is-active input[type=email], .wc-block-components-form .wc-block-components-text-input.is-active input[type=number], .wc-block-components-form .wc-block-components-text-input.is-active input[type=tel], .wc-block-components-form .wc-block-components-text-input.is-active input[type=text], .wc-block-components-form .wc-block-components-text-input.is-active input[type=url], .wc-block-components-text-input input:-webkit-autofill, .wc-block-components-text-input.is-active input[type=email], .wc-block-components-text-input.is-active input[type=number], .wc-block-components-text-input.is-active input[type=tel], .wc-block-components-text-input.is-active input[type=text], .wc-block-components-text-input.is-active input[type=url], .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input, .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
	padding: 1.75em .5em .5em !important;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
	padding: 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-block {
	background: var(--global-palette8) !important;
	padding: 15px;
}

.woocommerce-checkout .wc-block-components-totals-wrapper {
	border-top: 0 !important;
	padding-top: 5px !important;
}

.wc-block-components-order-summary .wc-block-components-panel__button, .wc-block-cart .wc-block-cart__totals-title {
	font-family: var(--global-heading-font-family) !important;
	font-size: 28px !important;
	font-weight: 200 !important;
	-webkit-font-smoothing: subpixel-antialiased;
	text-transform: none !important;
	letter-spacing: .5px !important;
}

.wc-block-cart .wc-block-cart__totals-title {
	text-align: left !important;
}

.woocommerce form.login, .woocommerce form.checkout_coupon, .woocommerce form.register {
	border-color: #eeeae8;
}

/* Login
--------------------------------------------- */
.logged-in .test-login {
	display: none;
}

.test-login {
	margin-top: 40px;
}

.woocommerce form.login, .woocommerce form.register {
	border: 0;
	background: var(--global-palette7);
	padding: 30px;
	border-radius: 0;
	max-width: 800px;
	margin: 0 auto;
}

.woocommerce-account .woocommerce h2 {
	text-align: center;
}

.woocommerce-account .woocommerce form .form-row .button {
	padding: 15px 20px 14px;
	margin-top: 10px;
	font-size: 12px;
}

label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
	padding-top: 15px;
	float: right;
}

p.woocommerce-LostPassword.lost_password {
	margin-top: 20px;
}

@media screen and (max-width: 768px) {
	.woocommerce section.products > h2 {
		margin-bottom: 25px;
		font-size: 30px;
	}
	
	label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
		padding-top: 0;
		float: none;
	}
}

/* My Account
--------------------------------------------- */
.woocommerce-MyAccount-content p:first-of-type:not(.woocommerce-customer-details p) {
	font-family: var(--global-heading-font-family);
	font-size: 30px !important;
	text-align: center;
	font-weight: 200;
}

.woocommerce-MyAccount-content p:first-of-type:not(.woocommerce-customer-details p) strong {
	font-weight: normal !important;
}

.woocommerce-MyAccount-content p:nth-of-type(2):not(.woocommerce-customer-details p) {
	max-width: 700px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.woocommerce-MyAccount-content p.form-row-wide:nth-of-type(2):not(.woocommerce-customer-details p) {
	max-width: 100% !important;
}

.woocommerce-account .account-navigation-wrap ul li {
	border-color: #eeeae8;
}

.woocommerce-account .account-navigation-wrap li.is-active a, .woocommerce-account .account-navigation-wrap li.is-active a:hover {
	border-left: 5px solid var(--global-palette6);
}

.kadence-account-nav-left.woocommerce-account .account-navigation-wrap li.is-active a, .kadence-account-nav-left.woocommerce-account .account-navigation-wrap li.is-active a:hover {
	border-right: 5px solid var(--global-palette6);
	border-left: none !important;
}

.woocommerce-account .woocommerce form .form-row label {
	text-align: left !important;
	font-family: var(--global-primary-nav-font-family);
	letter-spacing: inherit !important;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1.5px !important;
	font-weight: normal !important;
}

.woocommerce-account fieldset {
	padding-bottom: 25px;
}

.woocommerce-account fieldset legend {
	font-weight: normal;
	font-family: var(--global-heading-font-family);
	font-size: 24px;
	padding: 0 8px;
}

.kadence-account-nav-above.woocommerce-account .account-navigation-wrap .kadence-account-avatar {
	display: none !important;
}

.kadence-account-nav-above.woocommerce-account .account-navigation-wrap .woocommerce-MyAccount-navigation ul {
	justify-content: center;
}

.kadence-account-nav-above.woocommerce-account .woocommerce-MyAccount-content {
	border: 1px solid #eeeae8;
	padding: 40px !important;
}

.woocommerce-account fieldset p:nth-of-type(2n) {
	max-width: 100%;
}

.woocommerce-account fieldset {
	border-color: #eeeae8;
	border-width: 2px;
}

.woocommerce-account .account-navigation-wrap li.is-active a {
	font-weight: normal;
}

.woocommerce form .form-row label {
	color: var(--global-palette3) !important;
}

@media screen and (min-width: 768px) {
	.kadence-account-nav-above.woocommerce-account .account-navigation-wrap li a {
		border: none !important;
		font-family: var(--global-primary-nav-font-family);
		text-transform: uppercase;
		letter-spacing: 1.75px;
		font-size: 12px;
		padding: 10px 16px 8px;
		margin: 0 5px;
	}
	
	.kadence-account-nav-above.woocommerce-account .account-navigation-wrap li.is-active a, .kadence-account-nav-above.woocommerce-account .account-navigation-wrap li a:hover {
		background: var(--global-palette8);
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
		border-bottom: 0 !important;
	}
	
	.woocommerce-account .account-navigation-wrap {
		border-left: 1px solid #eeeae8 !important;
	}
	
	.kadence-account-nav-left.woocommerce-account .account-navigation-wrap {
		border-left: none !important;
		border-right: 1px solid #eeeae8 !important;
	}
	
	.kadence-account-nav-above.woocommerce-account .account-navigation-wrap {
		border-left: 0 !important;
		margin-bottom: 0;
	}
}

/* Cart Drawer
--------------------------------------------- */
#cart-drawer h2.side-cart-header {
	font-size: 24px;
	padding-top: 15px;
}

#cart-drawer .woocommerce ul.cart_list li a, #cart-drawer .woocommerce ul.product_list_widget li a, .kadence-header-cart ul ul a:not(.button) {
	font-weight: normal;
	font-size: 16px;
}

#cart-drawer .woocommerce ul.cart_list li a:hover, #cart-drawer .woocommerce ul.product_list_widget li a:hover, .kadence-header-cart ul ul a:not(.button):hover {
	text-decoration: none;
	color: var(--global-palette2) !important;
}

#cart-drawer .woocommerce.widget_shopping_cart .cart_list li, #cart-drawer .woocommerce .widget_shopping_cart .cart_list li, #cart-drawer .woocommerce.widget_shopping_cart .total, #cart-drawer .woocommerce .widget_shopping_cart .total, .woocommerce.widget_shopping_cart .cart_list li, .woocommerce .widget_shopping_cart .cart_list li {
	border-color: #eeeae8 !important;
	padding: 10px 0 !important;
}

#cart-drawer .woocommerce ul.cart_list li .quantity, #cart-drawer .woocommerce ul.product_list_widget li .quantity, .kadence-header-cart .woocommerce ul.cart_list li .quantity, .kadence-header-cart .woocommerce ul.product_list_widget li .quantity {
	color: var(--global-palette3) !important;
}

.woocommerce a.remove, .woocommerce a.remove:hover {
	color: var(--global-palette2) !important;
	background: var(--global-palette9) !important;
}

.content-style-boxed .wp-site-blocks .wp-block-woocommerce-cart.alignwide, .wp-site-blocks .wp-block-woocommerce-cart.alignwide, .wp-site-blocks .wp-block-woocommerce-checkout.alignwide, .content-style-boxed .wp-site-blocks .wp-block-woocommerce-checkout.alignwide {
	margin: 0 auto !important;
	width: 100%;
}

@media screen and (max-width: 768px) {
	.has-4-columns .wc-block-grid__products {
		grid-template-columns: 1fr 1fr !important;
	}
	
	.product-archive .product-type-variable .add_to_cart_button, .product-archive .product-action-wrap .add_to_cart_button {
		display: none !important;
	}
	
	.product-archive .product-type-variable span.price {
		line-height: 1.4;
	}
	
	.woocommerce .up-sells.products, .woocommerce .related.products {
		padding: 35px 30px 20px;
	}
	
	.woocommerce div.product .woocommerce-tabs, .woocommerce div.product .woocommerce-tabs ul.tabs li a {
		border-color: #eeeae8 !important;
	}
	
	.woocommerce-MyAccount-content p:first-of-type {
		line-height: 1.4 !important;
	}
	
	.woocommerce-account .woocommerce h2 {
		font-size: 30px;
		margin-bottom: 20px !important;
	}
	
	.woocommerce ul.products li.product .entry-content-wrap {
		padding: .5rem .5rem 1rem;
	}
	
	.woocommerce ul.products:not(.products-list-view), .wp-site-blocks .wc-block-grid:not(.has-2-columns):not(.has-1-columns) .wc-block-grid__products {
		column-gap: .75rem !important;
		grid-row-gap: .75rem !important;
	}
	
	.woocommerce.single-product .entry {
		padding-top: .5em !important;
	}
	
	body.woocommerce.single-product {
		background: #fff !important;
	}
	
	.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li.active {
		border: 0 !important;
	}
	
	.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li.active {
		background: var(--global-palette8);
		margin: 0;
	}
	
	.wc-block-grid .wc-block-grid__products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}
