/** ----------------------------------------
 ** WooCommerce Styles
 ** ----------------------------------------
    Sets the global WooCommerce styles
 ** --------------------------------------- */
 :root {
	--wc-radius: 12px;
	--wc-gap: .75rem;
	--wc-pad-y: .85rem;
	--wc-pad-x: 1rem;
	--wc-fg: #1e2a2f;
	--wc-bg: #f6f7f7;

	--wc-success-bg: var(--deepsea);
	--wc-success-bd: var(--tidepool);
	--wc-success-fg: var(--canvas);

	--wc-info-bg: var(--color-background);
	--wc-info-bd: var(--color-accent);
	--wc-info-fg: var(--color-headline);

	--wc-error-bg: var(--coral);
	--wc-error-bd: var(--shell);
	--wc-error-fg: var(--canvas);
}

body.woocommerce-page .inside-article {
	align-items: center;
	display: flex;
	flex-direction: column;
	padding-block: var(--space-section-half);
	padding-inline: var(--space-inline);
}

body.woocommerce-page .inside-article .entry-content {
	margin-inline: auto;
	max-width: var(--width-d);
	width: 100%;
}

/** WooCommerce Forms **/
/* Scope to Woo screens to avoid bleed */
.woocommerce,
.woocommerce-page,
.wc-block-components,
.wc-block-checkout,
.wc-block-cart {
	--wc-input-bg: var(--color-bg);
	--wc-input-fg: var(--color-headline);
	--wc-input-bd: var(--color-text);
	--wc-input-bd-focus: var(--color-headline);
	--wc-asterisk: var(--color-accent);
}

/* Labels - Classic & Blocks */
.woocommerce form .form-row label,
.woocommerce-account form label,
.woocommerce-address-fields__field label,
.woocommerce-EditAccountForm label,
.woocommerce-form-login label,
.woocommerce-form-register label,
.checkout_coupon p>label,
.wc-block-components-text-input label,
.wc-block-components-textarea label,
.wc-block-components-select label,
.wc-block-components-form .wc-block-components-checkout-step__title {
	color: var(--color-headline) !important;
	font-family: var(--body-font) !important;
	font-size: var(--button) !important;
	text-transform: uppercase !important;
	display: block;
	margin: 0 0 var(--space-0_25, .25rem) !important;
}

/* Fieldset legend override */
#add_payment_method fieldset legend,
.woocommerce form fieldset legend {
	font-family: var(--headline-font) !important;
	font-size: var(--headline-h3) !important;
}

/* Required asterisk */
.woocommerce form .form-row .required,
.woocommerce form .form-row label .required,
.wc-block-components-text-input label .required,
.wc-block-components-textarea label .required,
.wc-block-components-select label .required {
	color: var(--wc-asterisk) !important;
}

/* Group spacing */
.woocommerce form .form-row,
.woocommerce form .form-row-wide,
.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-address-fields__field,
.woocommerce-EditAccountForm .form-row,
.woocommerce-form-login .form-row,
.woocommerce-form-register .form-row,
.woocommerce-address-fields .form-row,
.wc-block-components-form .wc-block-components-text-input,
.wc-block-components-form .wc-block-components-textarea,
.wc-block-components-form .wc-block-components-select,
.wc-block-components-form .wc-block-components-country-input,
.wc-block-components-form .wc-block-components-state-input {
	margin-bottom: var(--space-section-half) !important;
}

/* Floating label animation for active/autofilled inputs */
.wc-block-components-form .wc-block-components-text-input input:-webkit-autofill+label,
.wc-block-components-form .wc-block-components-text-input.is-active label,
.wc-block-components-form .wc-block-components-textarea.is-active label,
.wc-block-components-form .wc-block-components-select.is-active label,
.wc-block-components-form .wc-block-components-country-input.is-active label,
.wc-block-components-form .wc-block-components-state-input.is-active label,
.wc-block-components-text-input input:-webkit-autofill+label,
.wc-block-components-text-input.is-active label,
.wc-block-components-textarea.is-active label,
.wc-block-components-select.is-active label,
.wc-block-components-country-input.is-active label,
.wc-block-components-state-input.is-active label {
	top: -8px !important;
	left: 0 !important;
	transform: translateX(0px) scale(.75) !important;
}

/* Inputs/Textareas/Selects - Classic & Blocks */
.woocommerce form .input-text,
.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="tel"],
.woocommerce form input[type="password"],
.woocommerce form input[type="number"],
.woocommerce form input[type="search"],
.woocommerce form input[type="url"],
.woocommerce form textarea,
.woocommerce form select,
.woocommerce .quantity .qty,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.variations_form .variations select,
.wc-block-components-text-input input,
.wc-block-components-textarea textarea,
textarea.wc-block-components-textarea,
.wc-block-components-select select,
.wc-block-components-select select.wc-blocks-components-select__select,
.wc-block-components-totals-coupon__form .wc-block-components-text-input input {
	background-color: var(--wc-input-bg) !important;
	border: 1px solid var(--wc-input-bd) !important;
	border-radius: 0 !important;
	color: var(--wc-input-fg) !important;
	font-family: var(--body-font) !important;
	font-size: var(--navigation) !important;
	padding: var(--space-0_75) var(--space-0_75) !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
}

/* Placeholder */
.woocommerce form .input-text::placeholder,
.woocommerce form textarea::placeholder,
.woocommerce form select::placeholder {
	color: var(--color-text) !important;
}

/* Focus state */
.woocommerce form .input-text:focus,
.woocommerce form textarea:focus,
.woocommerce form select:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-textarea textarea:focus,
.wc-block-components-select select:focus {
	outline: none !important;
	border-bottom-color: var(--wc-input-bd-focus) !important;
	box-shadow: none !important;
}

/* Autofill neutralization */
.woocommerce form .input-text:-webkit-autofill,
.woocommerce form .input-text:-webkit-autofill:hover,
.woocommerce form .input-text:-webkit-autofill:focus {
	-webkit-text-fill-color: var(--wc-input-fg) !important;
	-webkit-box-shadow: 0 0 0px 1000px var(--wc-input-bg) inset !important;
	box-shadow: 0 0 0px 1000px var(--wc-input-bg) inset !important;
	transition: background-color 9999s ease-in-out 0s;
}

/* Select2 (countries, states) */
.select2-container--default .select2-selection--single {
	background-color: var(--wc-input-bg);
	border: none;
	border-bottom: 1px solid var(--wc-input-bd);
	border-radius: 0;
	height: auto;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--wc-input-fg);
	font-family: var(--body-font);
	font-size: var(--navigation);
	line-height: 1.25;
	padding: .75rem 0;
	text-transform: uppercase;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 100%;
	right: 0;
}

.select2-dropdown {
	border: 1px solid var(--wc-input-bd);
	border-radius: 0;
}

/* Radios & checkboxes */
.woocommerce form .form-row input[type="checkbox"]+span,
.woocommerce form .form-row input[type="radio"]+span,
.woocommerce form .form-row label.checkbox,
.woocommerce form .form-row label[for*="createaccount"],
.wc-block-components-checkbox__label,
.wc-block-components-radio-control__label {
	color: var(--wc-input-fg) !important;
	font-family: var(--body-font) !important;
	font-size: var(--navigation) !important;
	text-transform: uppercase !important;
}

/* Validation States */
.woocommerce form .form-row.woocommerce-invalid .input-text,
.woocommerce form .form-row.woocommerce-invalid select,
.wc-block-components-validation-error,
.wc-block-components-text-input .has-error input,
.wc-block-components-select .has-error select,
.wc-block-components-textarea .has-error textarea {
	border-bottom-color: var(--color-accent) !important;
}

.woocommerce form .woocommerce-error li {
	margin-left: 1rem;
}

/* Misc form typography */
.woocommerce-LostPassword,
.woocommerce-privacy-policy-text {
	font-family: var(--body-font);
}

/* Buttons */
.woocommerce .woocommerce-Button {
	background-color: var(--color-accent) !important;
	border-radius: 0 !important;
	color: var(--color-accent-contrast) !important;
	font-weight: var(--button-font-weight) !important;
}

.woocommerce .woocommerce-Button:hover,
.woocommerce .woocommerce-Button:focus {
	background-color: var(--color-tertiary) !important;
	color: var(--color-accent) !important;
}

/** WooCommerce Notifications */
.woocommerce-notices-wrapper,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
	all: initial;
	font: inherit;
}

.woocommerce .woocommerce-error li {
	margin: .125rem 0 .125rem 1rem;
}

/* Notice type variants */
.woocommerce .woocommerce-message,
.wc-block-components-notice-banner.is-success {
	background: var(--wc-success-bg) !important;
	border-color: var(--wc-success-bd) !important;
	color: var(--wc-success-fg) !important;
}

.woocommerce .woocommerce-info,
.wc-block-components-notice-banner.is-info {
    background: var(--color-bg) !important;
    border-color: var(--color-secondary) !important;
    border-radius: 0!important;
    color: var(--color-headline) !important;
    -webkit-border-radius: 0!important;
    -moz-border-radius: 0!important;
    -ms-border-radius: 0!important;
    -o-border-radius: 0!important;
}

.wc-block-components-notice-banner.is-info>svg {
    background: var(--color-svg)!important;
    fill: var(--color-bg)!important;
}

.woocommerce .woocommerce-error,
.wc-block-components-notice-banner.is-error {
	background: var(--wc-error-bg) !important;
	border-color: var(--wc-error-bd) !important;
	color: var(--wc-error-fg) !important;
}

/* Notice icons */
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before {
	content: "✓";
	font-weight: 700;
	line-height: 1;
	margin-top: .15rem;
}

.woocommerce .woocommerce-info::before {
	content: "ℹ";
}

.woocommerce .woocommerce-error::before {
	content: "⚠";
}

/* Close button */
.wc-notice__close {
	appearance: none;
	border: 0;
	background: transparent;
	cursor: pointer;
	font-size: 1.1rem;
	line-height: 1;
	padding: .25rem;
	opacity: .7;
}

.wc-notice__close:hover {
	opacity: 1;
}

@media (prefers-reduced-motion: no-preference) {
	.woocommerce .woocommerce-error,
	.woocommerce .woocommerce-info,
	.woocommerce .woocommerce-message {
		transition: opacity .2s ease, transform .2s ease;
	}
}

/* Block notices */
.wc-block-components-notice-banner {
	border-radius: var(--wc-radius) !important;
	border-width: 1px !important;
	padding: var(--wc-pad-y) var(--wc-pad-x) !important;
}

/** Account Page Styles */
.woocommerce .woocommerce-MyAccount-content {
	width: 60%;
}

.woocommerce .woocommerce-MyAccount-content address {
	font-family: var(--body-font);
	font-size: var(--text-body);
	font-style: normal;
	font-weight: var(--body-font-weight);
	text-transform: none;
}

.woocommerce .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0 !important;
}

.woocommerce .woocommerce-MyAccount-navigation ul li {
	border-top: 1px solid var(--text-200);
	height: auto;
	width: 100%;
}

.woocommerce .woocommerce-MyAccount-navigation ul li.is-active a {
	background-color: var(--color-accent);
	color: var(--color-accent-contrast);
}

.woocommerce .woocommerce-MyAccount-navigation ul li a {
	display: block;
	font-size: var(--navigation);
	line-height: 1em;
	letter-spacing: 0.48px;
	padding: var(--space-1);
	text-decoration: none;
	text-transform: uppercase;
}

.woocommerce .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce .woocommerce-MyAccount-navigation ul li a:focus {
	background-color: var(--color-secondary);
	color: var(--color-secondary-contrast);
}

@media (max-width: 929px) {
	body.woocommerce-page .inside-article {
		margin-top: var(--space-5);
		padding-top: 0;
	}
}

/** WooCommerce Product Page Styles */
.single-product .inside-article {
	width: 100%;
}

.single-product .entry-content {
	max-width: var(--width-d);
	margin-inline: auto;
	width: 100%;
}

.single-product .entry-content .product.type-product {
	align-items: start;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: var(--space-section-double);
}

@media (max-width: 768px) {
	.single-product .entry-content .product.type-product {
		grid-template-columns: 1fr;
		row-gap: var(--space-section-half);
	}
}

@media (max-width: 1024px) {
	.single-product .entry-content .product.type-product {
		column-gap: var(--space-section-half);
	}
}

/* Breadcrumbs */
.single-product .entry-content nav.woocommerce-breadcrumb,
.single-product .entry-content nav.woocommerce-breadcrumb a {
	color: var(--text-200);
	font-size: var(--button);
	text-transform: uppercase;
}

.single-product .entry-content nav.woocommerce-breadcrumb a:hover,
.single-product .entry-content nav.woocommerce-breadcrumb a:focus {
	color: var(--color-headline);
}

/* Product Image */
.single-product .entry-content .product.type-product .woocommerce-product-gallery {
	align-self: start;
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: auto;
	width: 100% !important;
}

.single-product .entry-content .product.type-product .woocommerce-product-gallery__trigger {
	background-color: var(--color-accent);
	color: var(--color-accent-contrast);
}

.single-product .entry-content .product.type-product .woocommerce-product-gallery__trigger:before {
	border-color: var(--color-accent-contrast);
}

.single-product .entry-content .product.type-product .woocommerce-product-gallery__trigger:after {
	background: var(--color-accent-contrast);
}

/* Product Summary */
.single-product .entry-content .product.type-product:not(.product-type-gift-card) .summary {
	align-items: start;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"title   title"
		"price   price"
		"full-description full-description"
		"form    form"
		"attrs   attrs"
		"qty     qty"
		"cta     cta"
		"sale    sale"
		"meta    meta";
	row-gap: var(--space-1);
	column-gap: var(--space-1);
	grid-auto-rows: min-content;
}

.single-product .entry-content .product.type-product .summary>* {
	align-self: start;
}

.single-product .product .summary .product_title {
	grid-area: title;
}

.single-product .product .summary .price {
	grid-area: price;
}

.single-product .product .summary .product-flags {
	grid-area: flags;
}

.single-product .product .summary .woocommerce-product-details__short-description {
	grid-area: excerpt;
}

.single-product .entry-content .product.type-product .summary .product-full-description {
	grid-area: full-description;
	grid-column: span 2;
}

.single-product .product .summary form.variations_form,
.single-product .product .summary form.gift_card_cart {
	grid-area: attrs;
}

.single-product .product .summary .quantity {
	grid-area: qty;
}

.single-product .product .summary .single_variation_wrap {
	grid-area: cta;
}

.single-product .product .summary .product_meta {
	grid-area: meta;
}

.single-product .product .summary .onsale {
	grid-area: sale;
}

.single-product .entry-content .product.type-product .summary .entry-title {
	font-size: var(--headline-xl);
    line-height: 1.05;
	margin-bottom: 0;
}

.single-product .entry-content .product.type-product .summary .price {
	color: var(--text-100);
	font-size: var(--body-xl);
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
	margin-bottom: 0;
	text-decoration: none;
	text-transform: uppercase;
}

/* Gift Card Menu */
.single-product .product .summary .giftcard-menu-block {
	grid-area: menu;
	margin-top: var(--space-0_5);
	margin-bottom: var(--space-0_75);
}

.single-product .product .summary .giftcard-menu-block h4.headline {	
	color: var(--color-secondary);
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: 1.2;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.single-product .product .summary .giftcard-menu-block ul.giftcard-menu-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-0_75);
	list-style: none;
	margin: 0!important;
}

.single-product .product .summary .giftcard-menu-block ul.giftcard-menu-list li a {
	border: 1px solid var(--color-secondary);
	display: block;
	padding: 10px 20px;
	font-weight: var(--button-font-weight);
	line-height: 1;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	width: 100%;
	transition: all 0.2s ease-in-out;
}

.single-product .product .summary .giftcard-menu-block ul.giftcard-menu-list li.current-menu-item {
	background-color: var(--color-secondary);
	
}

.single-product .product .summary .giftcard-menu-block ul.giftcard-menu-list li.current-menu-item a {
	color: var(--color-secondary-contrast)!important;
}

.single-product .product .summary .giftcard-menu-block ul.giftcard-menu-list li a:hover,
.single-product .product .summary .giftcard-menu-block ul.giftcard-menu-list li a:focus {
	color: var(--color-accent);
	border-color: var(--color-text);
	transition: all 0.2s ease-in-out;
}

/* Yith Gift Cards */
.single-product .product-type-gift-card {
	color: var(--color-headline);
}

.single-product .entry-content .product.type-product.product-type-gift-card .summary {
	align-items: start;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"title   title"
		"menu	menu"
		"full-description full-description"
		"form    form";
	row-gap: var(--space-2);
	column-gap: var(--space-1);
	grid-auto-rows: min-content;
	margin-bottom: 0;
	width: 100%;
}

.single-product .product-type-gift-card .woocommerce-product-gallery__wrapper,
.single-product .product-type-gift-card .ywgc-main-form-preview-container {
	box-shadow: none!important
}

.single-product .product-type-gift-card .ywgc-main-form-preview-container hr {
	background-color: var(--color-secondary);
	margin-bottom: var(--space-1_25);
}

.single-product .product-type-gift-card span,
.single-product .product-type-gift-card label,
.single-product .product-type-gift-card .ywgc-form-preview-amount {
	color: var(--color-headline);
	font-family: var(--body-font);;
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
	margin-bottom: 0;
	text-decoration: none;
	text-transform: uppercase;
}

.single-product .product-type-gift-card .ywgc-form-preview-title,
.single-product .product-type-gift-card .ywgc-form-preview-amount {
	font-size: var(--body-l);
	font-weight: var(--button-font-weight);
}

.single-product .product-type-gift-card .ywgc-form-preview-separator {
	display: none;
}

.single-product .product-type-gift-card .gift-cards_form {
	border-top: 1px solid var(--color-text);
	grid-area: form;
	margin-bottom: 0;
	padding-top: var(--space-2);
}

.single-product .product-type-gift-card .gift-cards_form h3,
.single-product .product-type-gift-card .gift-cards_form h4 {
	font-size: var(--headline-h4);
	margin-top: 0;
	margin-bottom: var(--space-1);
}

.single-product .product-type-gift-card .gift-cards_form h5,
.single-product .product-type-gift-card .gift-cards_form h6 {
	color: var(--color-secondary);
	font-family: var(--body-font);
	font-weight: var(--button-font-weight);
	line-height: var(--body-line-height);
	margin-top: 0!important;
	margin-bottom: var(--space-0_5);
}

.single-product .product-type-gift-card .gift-cards-list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: var(--space-0_75);
	margin-bottom: var(--space-2);
}

.single-product .product-type-gift-card .gift-cards-list h3 {
	margin-bottom: 0;
	width: 100%;
}

.single-product .product-type-gift-card .gift-cards-list button,
.single-product .product-type-gift-card .ywgc-manual-amount-container,
.single-product .product-type-gift-card .ywgc-manual-amount-container input#ywgc-manual-amount {
	background-color: var(--color-bg)!important;
	border-color: var(--color-secondary)!important;
	color: var(--color-headline)!important;
	flex-grow: 1;
	font-size: var(--body-l)!important;
	font-weight: var(--button-font-weight)!important;
	margin-bottom: 0;
}

.single-product .product-type-gift-card .gift-cards-list button:hover,
.single-product .product-type-gift-card .gift-cards-list button:focus {
	border-color: var(--color-secondary)!important;
	color: var(--color-bg)!important;
	background-color: var(--color-bg)!important;
}

.single-product .product-type-gift-card .gift-cards-list button.selected_button {
	border-color: var(--color-secondary)!important;
	color: var(--color-bg)!important;
	background-color: var(--color-secondary)!important;
}

.single-product .product-type-gift-card .ywgc-manual-amount-container .ywgc-manual-currency-symbol {
	background: transparent!important;
}

.single-product .product-type-gift-card .ywgc-manual-amount-container input#ywgc-manual-amount {
	border: none!important;
}

.single-product .product-type-gift-card .ywgc-manual-amount-container input#ywgc-manual-amount::placeholder {
	font-size: var(--body-l)!important;
}

.single-product .product-type-gift-card .gift-cards-list button.selected_button span {
	color: var(--color-bg)!important;
	font-weight: var(--button-font-weight)!important;
}

.single-product .product-type-gift-card .gift-cards_form .ywgc-recipient-name,
.single-product .product-type-gift-card .gift-cards_form .ywgc-recipient-email,
.single-product .product-type-gift-card .gift-cards_form .ywgc-sender-name,
.single-product .product-type-gift-card .gift-cards_form .ywgc-message {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	row-gap: var(--space-0_25);
	width: 100%;
}

.single-product .product-type-gift-card .gift-cards_form input[type="text"],
.single-product .product-type-gift-card .gift-cards_form input[type="email"],
.single-product .product-type-gift-card .gift-cards_form textarea {
	color: var(--color-headline);
	width: 100%;
}

.single-product .product-type-gift-card .gift-cards_form input[type="text"]:focus,
.single-product .product-type-gift-card .gift-cards_form input[type="email"]:focus,
.single-product .product-type-gift-card .gift-cards_form textarea:focus {
	border-color: var(--color-secondary)!important;
}

.single-product .product-type-gift-card .gift-cards_form .gift_card_template_button .quantity {
	display: none;
}

.single-product .product-type-gift-card .gift-cards_form .gift_card_template_button button {
	width: 100%;
}

@media (max-width: 768px) {
	.single-product .product-type-gift-card .woocommerce-product-gallery__image,
	.single-product .product-type-gift-card .ywgc-main-form-preview-container {
		padding-inline: 0;
	}

	.single-product .product-type-gift-card .ywgc-main-form-preview-container {
		min-height: auto;
	}

	.single-product .product-type-gift-card .gift-cards_form {
		margin-bottom: 0!important;
	}

	.single-product .product-type-gift-card .gift-cards-list button {
		flex-grow: 1;
	}
}

/* Notices in Product Summary */
.single-product .product .woocommerce-notices-wrapper,
.single-product .product .woocommerce-NoticeGroup,
.single-product .product .woocommerce-NoticeGroup-checkout {
	grid-column: 1 / -1;
	margin-block: calc(var(--space-inline) / 1.25);
}

.single-product .product ul.woocommerce-error {
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-product .product .woocommerce-message,
.single-product .product .woocommerce-info,
.single-product .product ul.woocommerce-error {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	column-gap: var(--space-0_75);
	padding: var(--space-0_75) var(--space-1);
	border: 1px solid var(--text-300);
	background: transparent;
	line-height: var(--body-line-height);
	text-transform: uppercase;
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	color: var(--text-100);
	margin-bottom: var(--space-1);
}

.single-product .product .woocommerce-message p,
.single-product .product .woocommerce-info p,
.single-product .product ul.woocommerce-error li {
	margin: 0;
}

.single-product .product .woocommerce-message a,
.single-product .product .woocommerce-info a,
.single-product .product ul.woocommerce-error a {
	color: inherit;
	margin-left: auto;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.single-product .product .woocommerce-message a:focus-visible,
.single-product .product .woocommerce-info a:focus-visible,
.single-product .product ul.woocommerce-error a:focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 2px;
}

.single-product .product .woocommerce-message {
	background-color: var(--seafoam);
	border-color: var(--seafoam);
	color: var(--text-50);
}

.single-product .product .woocommerce-info {
	background-color: var(--color-secondary);
	border-color: var(--color-secondary);
	color: var(--color-secondary-contrast);
}

.single-product .product ul.woocommerce-error {
	background-color: var(--coral);
	border-color: var(--coral);
	color: var(--text-50);
	margin-left: 0 !important;
}

.single-product .product ul.woocommerce-error a {
	color: var(--text-500);
}

.single-product .product ul.woocommerce-error li {
	align-items: center;
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.single-product .product .woocommerce-message::before,
.single-product .product .woocommerce-info::before,
.single-product .product ul.woocommerce-error::before {
	content: "";
	width: 1rem;
	height: 1rem;
	align-self: center;
}

.single-product .product .woocommerce-message::before {
	border-radius: 50%;
	box-shadow: inset 0 0 0 2px currentColor;
	background:
		linear-gradient(currentColor, currentColor) 32% 58% / 2px 5px no-repeat,
		linear-gradient(currentColor, currentColor) 45% 70% / 2px 9px no-repeat;
	transform: rotate(-45deg);
}

.single-product .product .woocommerce-info::before {
	border-radius: 50%;
	box-shadow: inset 0 0 0 2px currentColor;
	background:
		radial-gradient(currentColor 0 2px, transparent 3px) 50% 30%/100% 100% no-repeat,
		linear-gradient(currentColor, currentColor) 50% 65%/2px 8px no-repeat;
}

.single-product .product ul.woocommerce-error::before {
	width: 0;
	height: 0;
	border-left: .5rem solid transparent;
	border-right: .5rem solid transparent;
	border-bottom: .95rem solid currentColor;
	margin-top: 2px;
}

.single-product .product .stock {
	margin-bottom: calc(var(--space-inline) / 1.5) 0;
	color: var(--color-secondary);
	font-size: var(--button);
	font-weight: var(--button-font-weight);
	text-transform: uppercase;
}

@media (prefers-reduced-motion: no-preference) {
	.single-product .product .woocommerce-message,
	.single-product .product .woocommerce-info,
	.single-product .product ul.woocommerce-error {
		transition: border-color .25s ease, color .25s ease;
	}
}

/* Variations Form */
.single-product form.variations_form table.variations {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin-bottom: 0;
}

.single-product form.variations_form table.variations tbody tr {
	display: block;
	margin-bottom: calc(var(--space-inline) / 1.25);
}

.single-product form.variations_form table.variations tbody tr:last-child {
	margin-bottom: 0;
}

.single-product form.variations_form table.variations th,
.single-product form.variations_form table.variations td {
	display: block;
	padding: 0;
	border: 0;
}

.single-product form.variations_form table.variations th.label label {
	display: block;
	margin-bottom: var(--space-0_25);
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: 1.2;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--color-secondary);
}

.single-product form.variations_form table.variations td.value {
	position: relative;
}

.single-product form.variations_form table.variations select {
	appearance: none;
	background: none !important;
	border: 1px solid var(--color-text, #cbd1d6);
	border-radius: 3px;
	color: var(--color-text, #e9eef2);
	min-height: 2.5rem;
	padding: 0.5rem 2.25rem 0.5rem 0.75rem;
	width: 100%;
}

.single-product form.variations_form table.variations select:hover {
	border-color: var(--color-accent, #cbd1d6);
}

.single-product form.variations_form table.variations select:focus-visible {
	outline: 2px solid var(--color-accent, #82e0ff);
	outline-offset: 2px;
}

.single-product form.variations_form table.variations select:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.single-product form.variations_form table.variations td.value::after {
	content: "";
	position: absolute;
	right: 0.75rem;
	top: 25px;
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 6px solid var(--text-200);
	pointer-events: none;
	opacity: 0.8;
	transform: translateY(-50%);
}

.single-product form.variations_form table.variations a.reset_variations {
	display: inline-block;
	margin-top: 0.375rem;
	font-size: 0.75rem;
	color: var(--color-text-muted, #aeb3b7);
	text-decoration: none;
}

.single-product form.variations_form table.variations a.reset_variations:hover,
.single-product form.variations_form table.variations a.reset_variations:focus {
	color: var(--color-text, #ffffff);
	text-decoration: underline;
}

@media (max-width: 640px) {
	.single-product form.variations_form table.variations tbody tr {
		margin-block: 0.5rem 0.875rem;
	}
}

/* Quantity Selector & Add to Cart */
.single-product .entry-content .product.type-product .single_variation_wrap .woocommerce-variation-add-to-cart {
	display: flex;
	flex-direction: column;
}

.single-product .entry-content .product.type-product .single_variation_wrap .quantity {
	margin-bottom: calc(var(--space-inline) / 1.25);
}

.single-product .entry-content .product.type-product .single_variation_wrap .quantity a {
	border-color: var(--text-300);
	color: var(--text-100);
}

.single-product .entry-content .product.type-product .single_variation_wrap .quantity input {
	border: 1px solid var(--text-300) !important;
}

.single-product .entry-content .product.type-product .single_variation_wrap label {
	display: block;
	margin-bottom: var(--space-0_75);
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: 1.2;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--color-secondary);
}

.single-product .entry-content .product.type-product .single_variation_wrap .woocommerce-variation-price {
	color: var(--text-100);
	font-size: var(--body-xl);
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
	margin-bottom: 0;
	text-decoration: none;
	text-transform: uppercase;
}

.single-product .entry-content .product.type-product .single_add_to_cart_button {
	background-color: var(--color-accent);
	color: var(--color-accent-contrast);
	border: none;
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: var(--button-line-height);
}

.single-product .entry-content .product.type-product .single_add_to_cart_button:hover,
.single-product .entry-content .product.type-product .single_add_to_cart_button:focus {
	background-color: var(--color-secondary);
	color: var(--color-secondary-contrast);
	border-color: var(--color-secondary-contrast);
}

/* Product Flags */
.single-product .entry-content .product.type-product .onsale {
	background-color: var(--color-secondary);
	color: var(--color-secondary-contrast);
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: var(--button-line-height);
	grid-column: 2 / 3;
	margin-bottom: 0;
	margin-left: auto;
	padding: var(--space-0_5) var(--space-0_75);
	text-transform: uppercase;
}

.single-product .entry-content .product.type-product .stock.in-stock {
	color: var(--color-secondary);
	font-size: var(--body-d);
	font-weight: var(--button-font-weight);
	line-height: var(--body-line-height);
	margin-bottom: calc(var(--space-inline) / 1.25);
	text-transform: uppercase;
}

/* Related Products */
.single-product .entry-content .related.products {
	grid-column: 1 / -1;
}

.single-product .entry-content .related.products .product.type-product {
	color: var(--color-headline);
	display: flex;
	flex-direction: column;
}

.single-product .entry-content .related.products .product.type-product .woocommerce-LoopProduct-link {
	width: 100%;
}

.single-product .related.products .star-rating,
.single-product .related.products .add_to_cart_button {
	display: none !important;
}


/** WooCommerce Cart Styles */
.wp-block-woocommerce-cart {
	border-color: var(--text-200);
	color: var(--color-headline);
	font-family: var(--body-font);
	font-size: var(--body-d);
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
	margin-bottom: 0;
}

.wp-block-woocommerce-cart th {
	padding-block: var(--space-1) !important;
}

.wp-block-woocommerce-cart th span,
.wp-block-woocommerce-cart .wc-block-cart__totals-title,
.woocommerce-checkout .wc-block-components-title,
.woocommerce-checkout .wc-block-components-title span,
.woocommerce-checkout .wc-block-components-checkout-order-summary__title-text {
	font-family: var(--headline-font) !important;
	font-size: var(--headline-h2) !important;
	font-weight: var(--headline-font-weight) !important;
	line-height: var(--headline-line-height) !important;
	margin-bottom: 0 !important;
	padding-block: var(--space-1) !important;
	text-transform: uppercase !important;
}

.wp-block-woocommerce-cart .wc-block-components-totals-item__label {
	font-weight: var(--body-font-weight) !important;
	text-transform: uppercase !important;
}

.wp-block-woocommerce-cart td span {
	font-family: var(--body-font);
	font-size: var(--body-d);
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
}

.wp-block-woocommerce-cart td.wc-block-cart-item__image {
    padding-left: 0!important;
}

.wp-block-woocommerce-cart td.wc-block-cart-item__image img {
    aspect-ratio: 3/2;
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.wp-block-woocommerce-cart .wc-block-components-product-name {
	font-size: var(--body-l);
	margin-bottom: var(--space-0_5) !important;
	text-decoration: none;
	text-transform: uppercase;
}

.wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price__value {
	font-size: var(--body-l);
	text-decoration: none;
	text-transform: uppercase;
}

.wc-block-components-product-metadata__description p {
	color: var(--color-text);
}

.wp-block-woocommerce-cart button.wc-block-cart-item__remove-link {
    color: var(--color-text)!important;
    font-size: var(--body-s)!important;
    font-weight: var(--button-font-weight)!important;
    line-height: var(--button-line-height)!important;
    text-transform: uppercase!important;
}

.wp-block-woocommerce-cart .wc-block-components-product-metadata ul li span.wc-block-components-product-details__name {
    font-weight: var(--body-font-weight)!important;
    text-transform: uppercase!important;
    color: var(--color-text)!important;
}

.wp-block-woocommerce-cart .wc-block-cart-item__image,
.wp-block-woocommerce-cart .wc-block-cart-item__product,
.wp-block-woocommerce-cart .wc-block-cart-item__total,
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block,
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-order-summary-block > .wc-block-components-totals-wrapper {
	border-top: 1px solid var(--color-secondary) !important;
}

.wp-block-woocommerce-cart ul.wc-block-components-product-details {
	list-style: none;
	margin-left: 0 !important;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input.is-active label,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input:-webkit-autofill+label {
	top: -8px !important;
	left: 0 !important;
	transform: translateX(0px) scale(.75) !important;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__button {
	background-color: var(--color-bg);
	border-color: var(--color-headline);
	color: var(--color-headline) !important;
	font-size: var(--button);
	font-weight: var(--button-font-weight);
	text-transform: uppercase;
}

.wc-block-components-express-payment__content ul.wc-block-components-express-payment__event-buttons {
	margin-left: 0 !important;
}

.wc-block-cart__submit-button {
	background-color: var(--color-accent);
	color: var(--color-accent-contrast) !important;
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	text-transform: uppercase;
	width: 100%;
}

@media (max-width: 768px) {
	.wp-block-woocommerce-cart .wc-block-cart-item__image,
	.wp-block-woocommerce-cart .wc-block-cart-item__product,
	.wp-block-woocommerce-cart .wc-block-cart-item__total,
	.wp-block-woocommerce-cart .wc-block-components-totals-wrapper {
		padding-top: var(--space-inline) !important;
	}
}

/** Checkout Styles */
body.page-checkout .inside-article {
	padding-block: var(--space-section);
	margin-top: 0!important
}

/* Checkout Layout */
.woocommerce-checkout {
	color: var(--color-headline);
	font-family: var(--body-font);
}

.woocommerce-checkout .woocommerce-info {
	background-color: var(--color-bg);
	border-color: var(--color-secondary);
	color: var(--color-text);
	font-size: var(--body-d);
	font-weight: var(--body-font-weight);
	line-height: var(--body-line-height);
	margin-bottom: var(--space-section-half);
	padding: var(--space-1) var(--space-1_5);
}

/* Checkout Headings */
.woocommerce-checkout h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3 {
	font-family: var(--headline-font) !important;
	font-size: var(--headline-h5) !important;
	font-weight: var(--headline-font-weight) !important;
	line-height: var(--headline-line-height) !important;
	margin-bottom: var(--space-0_5) !important;
	padding-top: 0!important;
	text-transform: uppercase !important;
}

@media (min-width: 769px) {
	.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main {
		padding-right: var(--space-section-half)!important;
	}
	
	.woocommerce-checkout .wc-block-components-sidebar-layout {
		padding-left: var(--space-section-half)!important;
	}
}

/* Express Checkout Section */
.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container {
	position: initial;
}

.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container:before,
.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container:after {
	background-color: var(--color-secondary);
	border: none;
	height: 1px;
	margin-block: auto;
}

.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container:before {
	margin-right: var(--space-1);
}
.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container:after {
	margin-left: var(--space-1);
}

.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-title.wc-block-components-express-payment__title {
	transform: initial;
	-webkit-transform: initial;
	-moz-transform: initial;
	-ms-transform: initial;
	-o-transform: initial;
}

.woocommerce-checkout .wc-block-components-express-payment-continue-rule {
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: var(--button-line-height);
	margin-bottom: var(--space-2_5)!important;
	text-align: center;
	text-transform: uppercase;
}

.woocommerce-checkout .wc-block-components-express-payment-continue-rule:before,
.woocommerce-checkout .wc-block-components-express-payment-continue-rule:after {
	border-color: var(--text-400);	
	margin-block: auto;
}

.woocommerce-checkout .wc-block-components-express-payment-continue-rule:before {
	margin-right: var(--space-1);
}

.woocommerce-checkout .wc-block-components-express-payment-continue-rule:after {
	margin-left: var(--space-1);
}

.woocommerce-checkout .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content {
	padding: 0;
}

/* Checkout Form Fields - inherit from global WooCommerce styles */
.woocommerce-checkout .wc-block-checkout__form fieldset {
	margin-bottom: var(--space-section);
}

.woocommerce-checkout .form-row {
	margin-bottom: var(--space-section-half) !important;
}

.woocommerce-checkout .wc-block-components-checkout-step__title {
	align-items: center;
	column-gap: var(--space-1);
	display: flex;
	min-width: fit-content;
	position: relative;
	text-wrap: nowrap;
}

.woocommerce-checkout .wc-block-components-checkout-step__title:after {
	background-color: var(--color-secondary);
	content:"";
	height: 1px;
	width: 100%;
	content: '';
	display: block;
}

.woocommerce-checkout .wc-block-components-checkout-step__description {
    font-size: var(--body-l)!important;
    margin-bottom: var(--space-1_75)!important;
}

/* Shipping Section */
.wc-block-checkout__shipping-method-container {
    background: var(--color-bg)!important;
    border-radius: 0!important;
    gap: var(--space-1)!important;
    -webkit-border-radius: 0!important;
    -moz-border-radius: 0!important;
    -ms-border-radius: 0!important;
    -o-border-radius: 0!important;
}

.wc-block-checkout__shipping-method-option {
    border: 1px solid var(--color-text)!important;
    border-radius: 0!important;
    color: var(--color-headline)!important;
    font-family: var(--body-font)!important;
    font-size: var(--body-d)!important;
    font-weight: var(--body-font-weight)!important;
    line-height: var(--body-line-height)!important;
    text-transform: uppercase!important;
    -webkit-border-radius: 0!important;
    -moz-border-radius: 0!important;
    -ms-border-radius: 0!important;
    -o-border-radius: 0!important;
}

.wc-block-checkout__shipping-method-option svg {
    display: none!important;
}

.wc-block-checkout__shipping-method-option.wc-block-checkout__shipping-method-option--selected {
    background-color: var(--color-secondary)!important;
    border-color: var(--color-secondary)!important;
    color: var(--color-bg)!important;
}

.wc-block-checkout__pickup-options .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__description, 
.wp-block-woocommerce-checkout-pickup-options-block .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__description {
    color: var(--color-headline)!important;
}

/* Address Fields */
.woocommerce-checkout .wc-block-components-address-card {
	padding: 0!important;
}

.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container {
	background-color: var(--wc-input-bg)!important;
	color: var(--wc-input-fg)!important;
}

.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container label,
.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container select,
.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container svg {
	color: var(--wc-input-fg)!important;
	fill: var(--wc-input-fg)!important;
}

.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__container select {
	border: none!important;
	border-bottom: 1px solid var(--wc-input-bd)!important;
	border-radius: 0!important;
	-webkit-border-radius: 0!important;
	-moz-border-radius: 0!important;
	-ms-border-radius: 0!important;
	-o-border-radius: 0!important;
}

/* Card Payment fields */
.woocommerce-checkout .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted, 
.woocommerce-checkout .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
	border: 1px solid var(--wc-input-bd);
	border-radius: 0;
	box-shadow: none;
}

.woocommerce-checkout .wc-block-checkout__terms.wc-block-checkout__terms--with-separator {
	padding-top: 0;
}

/* Order Summary Section */
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-cart-items-block {
	padding-block: var(--space-1_75)!important;
}

.woocommerce-checkout .wc-block-components-order-summary {
	padding-inline: 0!important;
}

.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
	margin-top: 0;
}

.woocommerce-checkout .wc-block-components-checkout-order-summary__title-text {
	border-bottom: 1px solid var(--text-400);
    font-size: var(--headline-h2)!important;
	margin-left: 0!important;
	padding-top: var(--space-1_5);

}

.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
	background: var(--color-secondary)!important;
	border: none!important;
	box-shadow: none!important;
	font-weight: var(--button-font-weight)!important;
}

.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__total-price {
	font-size: var(--body-l)!important;
}

.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block {
	border-top: 1px solid var(--color-text)!important;
	border-bottom: 1px solid var(--color-text)!important;
}

.woocommerce-checkout .wc-block-components-totals-coupon,
.woocommerce-checkout .wc-block-components-totals-item {
	padding-inline: 0!important;
}

.woocommerce-checkout .wc-block-components-totals-coupon__button {
	background-color: var(--color-bg);
	border-color: var(--color-headline);
	color: var(--color-headline) !important;
	font-size: var(--button);
	font-weight: var(--button-font-weight);
	text-transform: uppercase;
}

.woocommerce-checkout .wc-block-components-totals-wrapper:last-child {
	border-top: 1px solid var(--text-400);
	border-bottom: 1px solid var(--color-secondary);
}

.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-wrapper {
	border-top: none;
	border-bottom: none;
}

.woocommerce-checkout .wc-block-components-totals-item__label {
	text-transform: uppercase!important;
}

.woocommerce-checkout .wc-block-components-totals-footer-item span {
	font-size: var(--body-l)!important;
	font-weight: var(--button-font-weight)!important;
	text-transform: uppercase!important;
}

.woocommerce-checkout .wc-block-components-panel__button {
	font-family: var(--body-font)!important;
	font-size: var(--body-d)!important;
	text-transform: initial;
}

.woocommerce-checkout .wc-block-components-product-name {
	margin-bottom: 0!important;
}

.woocommerce-checkout .wc-block-components-product-metadata__description {
	font-size: var(--body-s)!important;
	text-transform: initial;
}

/* Order Review Section */
.woocommerce-checkout #order_review_heading {
	font-family: var(--headline-font);
	font-size: var(--headline-h4);
	font-weight: var(--headline-font-weight);
	line-height: var(--headline-line-height);
	text-transform: uppercase;
	margin-bottom: var(--space-1);
}

.woocommerce-checkout .woocommerce-checkout-review-order {
	background-color: transparent;
	padding: 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table {
	border-collapse: collapse;
	width: 100%;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
	border-top: 1px solid var(--color-secondary);
	padding: var(--space-0_75) 0;
	font-family: var(--body-font);
	font-size: var(--body-d);
	text-transform: uppercase;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table th {
	font-weight: var(--button-font-weight);
	text-align: left;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
	font-weight: var(--body-font-weight);
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total {
	text-align: right;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
	border-top: 2px solid var(--color-headline);
	font-weight: var(--button-font-weight);
	padding: var(--space-1) 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
	font-size: var(--body-l);
	color: var(--color-accent);
}

/* Payment Methods */
.woocommerce-checkout #payment {
	background-color: transparent;
	border-radius: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid var(--color-secondary);
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
	margin: 0 !important;
	padding: var(--space-0_75) 0;
	border-top: 1px solid var(--color-secondary);
}

.woocommerce-checkout #payment ul.payment_methods li label {
	color: var(--color-headline) !important;
	font-family: var(--body-font) !important;
	font-size: var(--navigation) !important;
	font-weight: var(--button-font-weight) !important;
	text-transform: uppercase !important;
	cursor: pointer;
}

.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
	margin-right: 0.5rem;
}

.woocommerce-checkout #payment div.payment_box {
	background-color: var(--color-bg);
	border: 1px solid var(--color-secondary);
	border-radius: 0;
	color: var(--color-text);
	font-family: var(--body-font);
	font-size: var(--body-d);
	margin: var(--space-0_75) 0;
	padding: var(--space-1);
}

.woocommerce-checkout #payment div.payment_box::before {
	display: none;
}

/* Privacy Policy Checkbox */
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	font-family: var(--body-font);
	font-size: var(--body-d);
	margin-bottom: var(--space-1);
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
	font-family: var(--body-font) !important;
	font-size: var(--navigation) !important;
	text-transform: uppercase !important;
}

/* Place Order Button */
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
	background-color: var(--color-accent);
	border: none;
	border-radius: 0;
	color: var(--color-accent-contrast) !important;
	font-family: var(--body-font);
	font-size: var(--navigation);
	font-weight: var(--button-font-weight);
	line-height: var(--button-line-height);
	padding: var(--space-0_75) var(--space-1_5);
	text-transform: uppercase;
	width: 100%;
	cursor: pointer;
}

.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus {
	background-color: var(--color-secondary);
	color: var(--color-secondary-contrast) !important;
}

/* Checkout Blocks Styles */
.wc-block-checkout__actions_row a,
.wc-block-checkout__actions_row button {
	font-family: var(--body-font) !important;
	font-size: var(--button) !important;
	font-weight: var(--button-font-weight) !important;
	line-height: var(--button-line-height) !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
}

.wc-block-checkout__actions_row a:hover,
.wc-block-checkout__actions_row button:hover {
	color: var(--color-accent-contrast) !important;
}

.wc-block-checkout .wc-block-components-checkout-step__title {
	font-family: var(--headline-font) !important;
	font-size: var(--headline-h2) !important;
	font-weight: var(--headline-font-weight) !important;
	text-transform: uppercase !important;
}

/* Checkout Order Summary (Blocks) */
.wc-block-checkout__order-summary {
	background-color: transparent;
}

.wc-block-components-order-summary-item__description,
.wc-block-components-product-name {
	font-family: var(--body-font);
	font-size: var(--body-d);
	text-transform: uppercase;
}

ul.wc-block-components-product-details {
	margin-left: 0!important;
}

.wc-block-components-totals-wrapper {
	border-top: 1px solid var(--color-secondary);
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--color-accent);
	font-size: var(--body-l);
	font-weight: var(--button-font-weight);
}

.woocommerce-thankyou-order-received {
	font-family: var(--headline-font);
	font-size: var(--headline-xxl);
	line-height: 1.05!important;
	margin-bottom: var(--space-section-half);
	max-width: var(--width-l);
	text-transform: uppercase;
}

ul.woocommerce-order-overview {
	border-bottom: 1px solid var(--text-300)!important;
	margin-bottom: var(--space-section)!important;
	margin-left: 0!important;
	padding-bottom: var(--space-section-half)!important;
}

ul.woocommerce-order-overview li {
	border-right: 1px solid var(--text-300)!important;
	color: var(--color-secondary)!important;
	font-weight: var(--body-font-weight)!important;
}

ul.woocommerce-order-overview li:last-child {
	border-right: none!important;
}

ul.woocommerce-order-overview li strong {
	color: var(--color-headline)!important;
	font-weight: var(--body-font-weight)!important;
	text-transform: uppercase!important;
}

.woocommerce-table--order-details {
	border: 1px solid var(--text-400)!important;
	margin-bottom: var(--space-section)!important;
}

.woocommerce-table--order-details thead {
	background: var(--text-400)!important;
	text-transform: uppercase!important;
}

.woocommerce-table--order-details thead tr th,
.woocommerce-table--order-details tbody tr td,
.woocommerce-table--order-details tfoot tr td,
.woocommerce-table--order-details tfoot tr th {
	border-bottom: 1px solid var(--text-400)!important;
}

.woocommerce-table--order-details thead tr th:last-child,
.woocommerce-table--order-details tbody tr td:last-child,
.woocommerce-table--order-details tfoot tr td:last-child {
	border-left: 1px solid var(--text-400)!important;
}

.woocommerce-table--order-details tfoot {
	font-weight: var(--body-font-weight)!important;
}

.woocommerce-table--order-details tfoot tr th {
	background: var(--text-400)!important;
	text-transform: uppercase!important;
}

.woocommerce-customer-details address {
	border: none!important;
	padding: 0!important;
}

@media (max-width: 929px) {
	.woocommerce-order-overview {
		display: flex;
		flex-direction: column;
		row-gap: var(--space-1_5);
	}

	ul.woocommerce-order-overview li {
		border-right: 1px solid var(--color-bg)!important;
		margin-right: 0
	}
}