:root {
	--wp--preset--font-size--small: inherit;

	--wc-block-spacing-y: var(--column-gap-y__quarter);
	--wc-block-spacing-x: var(--column-gap-x__half);
	--wc-block-input-spacing-y__top: round(down, calc(var(--column-gap-x__third) * 2), 6px);
	--wc-block-input-spacing-y__bottom: var(--column-gap-y__sixth);
}

body:where(.post-type-archive-product, .tax-product_cat) .site-header {
	border-bottom: 0;
}

.woocommerce-message:focus-visible {
	outline: 0 none;
}

.content .wc-block-components-notice-banner {
	align-items: center;
}

.content .wc-block-components-notice-banner > .wc-block-components-button {
	margin-top: 0 !important;
}

/**
 * Header cart
 */
.cart-header .header-cart-inner {
	position: relative;
}

.cart-header .header-cart-inner .cart-header-count {
	left: var(--icon-size__half);
	color: var(--color-white);
	bottom: var(--icon-size__half);
	display: flex;
	padding: 0 var(--column-gap-x__sixth) 1px;
	position: absolute;
	font-size: round(down, 0.9rem, 1px);
	min-width: 1.375rem;
	text-align: center;
	line-height: 1;
	align-items: center;
	aspect-ratio: 1/1;
	align-content: center;
	border-radius: 100%;
	justify-content: center;
	background-color: var(--primary-dark-color);
	transition-property: background-color, color;
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

.cart-header a:hover .header-cart-inner .cart-header-count {
	background-color: var(--primary-color);
}

/**
 * Product brands
 */
.vanimedia-product-brands:has(> .vanimedia-brands-item) {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.vanimedia-product-brands > .vanimedia-brands-item {
	display: inline-flex;
}

.vanimedia-product-brands > .vanimedia-brands-item:not(:last-child) {
	margin-right: var(--column-gap-x__sixth);
}

.vanimedia-product-brands > .vanimedia-brands-item:not(:last-child)::after {
	content: ',';
	display: inline-flex;
}

.vanimedia-product-brands.vanimedia-product-brands-list-abc {
	--brands-columns: 4;
	--brands-row-gap: var(--column-gap-y);
	--brands-column-gap: var(--column-gap-x);

	--brands-group-gap: var(--column-gap-y__sixth);

	--brands-letter-spacing: var(--column-gap-y__quarter);
	--brands-letter-font-size: var(--h1-font-size);
	--brands-letter-line-height: var(--h1-line-height);

	--brands-item-font-size: inherit;
	--brands-item-line-height: inherit;

	display: grid;
	row-gap: var(--brands-row-gap);
	column-gap: var(--brands-column-gap);
	align-items: start;
	grid-template-columns: repeat(var(--brands-columns), calc((100% - ((var(--brands-columns) - 1) * var(--brands-column-gap))) / var(--brands-columns)));
}

.vanimedia-brands-list-group {
	gap: var(--brands-group-gap);
	display: grid;
	min-width: 0;
	align-content: start;
}

.vanimedia-product-brands-list-abc .vanimedia-brands-list-letter {
	margin: 0 0 var(--brands-letter-spacing);
	border-block-end: 0.0625rem solid currentColor;
	padding-block-end: var(--brands-letter-spacing);

	font-size: var(--brands-letter-font-size);
	font-weight: 600;
	line-height: var(--brands-letter-line-height);
}

.vanimedia-brands-item {
	min-width: 0;
	font-size: var(--brands-item-font-size);
	font-weight: 400;
	line-height: var(--brands-item-line-height);
}

.vanimedia-brands-item a {
	color: inherit;
	display: block;
	text-decoration: none;
	overflow-wrap: break-word;
}

.vanimedia-brands-item a:hover,
.vanimedia-brands-item a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.25rem;
	text-decoration-thickness: 0.0625rem;
}

.vanimedia-brands-item a:focus-visible {
	outline: 0.125rem solid currentColor;
	outline-offset: 0.125rem;
}

/**
 * Variations
 */
.variations_form {
	margin-bottom: var(--column-gap-y);
}

.variations_form :where(table, tbody, tr, th, td) {
	display: block;
}

.variations_form .variations .label {
	font-weight: var(--normal-font-weight);
	text-transform: uppercase;
}

.variations_form .single_variation_wrap .quantity,
.variations_form .single_variation_wrap .single_variation,
.variations_form .variations .value:has(.vanimedia-theme-woocommerce-visual-variation-options) select,
.variations_form .variations .value:has(.vanimedia-theme-woocommerce-visual-variation-options) .reset_variations {
	display: none !important;
}

/* Visual variation options */
.vanimedia-theme-woocommerce-visual-variation-options .variation-options-inner {
	--gap: clamp(0.5rem, 100vw, var(--column-gap-x__quarter));

	gap: var(--gap);
	display: flex;
	flex-wrap: wrap;
	margin-bottom: var(--column-gap-x__half);
}

.vanimedia-theme-woocommerce-visual-variation-option {
	--width: clamp(3rem, calc((100% - (6 * var(--gap))) / 7), 3.5rem);
	--link-font-color: var(--body-font-color);

	color: var(--body-font-color);
	margin: 0;
	border: 1px solid var(--primary-light-color);
	display: inline-flex;
	font-size: round(down, 0.9rem, 1px);
	min-width: var(--width);
	min-height: var(--width);
	flex-basis: var(--width);
	font-family: var(--heading-font-family);
	align-items: center;
	aspect-ratio: 1 / 1;
	text-transform: uppercase;
	justify-content: center;
	background-color: transparent;
	transition-property: color, background-color, box-shadow, border, font-weight;
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

.vanimedia-theme-woocommerce-visual-variation-option:only-child {
	width: auto;
	padding: var(--column-gap-x__quarter) var(--column-gap-x__quarter);
	flex-basis: auto;
	aspect-ratio: unset;
}

.vanimedia-theme-woocommerce-visual-variation-option span {
	padding: 0 var(--column-gap-x__sixth);
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
}

.vanimedia-theme-woocommerce-visual-variation-option input {
	opacity: 0;
	position: absolute;
	pointer-events: none;
}

.vanimedia-theme-woocommerce-visual-variation-option:where(:not(:focus-visible)) {
	box-shadow: inset 0 0 0 2px transparent;
}

.vanimedia-theme-woocommerce-visual-variation-option.active,
.vanimedia-theme-woocommerce-visual-variation-option:where(:has(input:checked)) {
	color: var(--color-white);
	box-shadow: inset 0 0 0 2px var(--color-white);
	border-color: var(--primary-color);
	background-color: var(--primary-color);
}

.vanimedia-theme-woocommerce-visual-variation-option:where(:not(.inactive)):hover,
.vanimedia-theme-woocommerce-visual-variation-option:focus-visible,
.vanimedia-theme-woocommerce-visual-variation-option:focus-within {
	color: var(--color-white);
	border-color: var(--primary-dark-color);
	background-color: var(--primary-dark-color);
}

.vanimedia-theme-woocommerce-visual-variation-option.inactive {
	color: var(--primary-light-color);
	cursor: not-allowed;
	opacity: 0.75;
	position: relative;
	border-color: var(--primary-light-color);
}

.vanimedia-theme-woocommerce-visual-variation-option.inactive::after {
	top: 50%;
	left: 50%;
	width: 80%;
	height: 1px;
	content: '';
	position: absolute;
	transform: rotate(20deg) translate(-50%);
	transform-origin: left;
	background-color: var(--primary-light-color);
}

/**
 * AWS
 */
.aws-container,
.woocommerce-product-search {
	flex-grow: 1;
}

.woocommerce-product-search:focus-within,
.woocommerce-product-search:has(input:focus) {
	outline: 1px solid var(--primary-color);
}

.woocommerce-product-search,
.aws-container .aws-search-form {
	height: auto;
	display: flex;
	flex-grow: 1;
}

.aws-container .aws-search-field,
.woocommerce-product-search input[name='s'] {
	height: auto;
	padding: var(--column-gap-y__quarter) var(--column-gap-x__half);
	flex-grow: 1;
	font-size: inherit;
}

.woocommerce-product-search input[name='s'] {
	width: 180px;
	border-radius: 0;
}

.woocommerce-product-search input[name='s']:focus {
	outline: 0 none;
}

.aws-container .aws-search-form .aws-form-btn,
.woocommerce-product-search button[type='submit'] {
	width: auto;
	color: var(--color-white);
	margin: 0;
	border: 0 none;
	padding: 0;
	background: var(--primary-color);
}

.aws-container .aws-search-form .aws-search-btn_icon,
.woocommerce-product-search input[name='s'] .vanimedia-theme-icon {
	color: var(--color-white);
}

.aws-container .aws-search-form .aws-form-btn:hover,
.woocommerce-product-search input[name='s']:hover .vanimedia-theme-icon {
	color: var(--color-white);
	background-color: var(--secondary-color);
}

.woocommerce-no-products-found {
	margin-bottom: var(--column-gap-y__half);
}

/**
 * Filters
 */
.vanimedia-theme-woocommerce-filters h1 {
	font-family: var(--heading-font-family);
}

.woocommerce-filters-collapse-trigger,
.woocommerce-filters-collapse .woocommerce-filter-section-trigger,
.vanimedia-theme-woocommerce-filters .woocommerce-filter-section-trigger {
	transition-property: color;
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

.woocommerce-filters-collapse-trigger:hover,
.woocommerce-filters-collapse .woocommerce-filter-section-trigger:hover,
.vanimedia-theme-woocommerce-filters .woocommerce-filter-section-trigger:hover {
	color: var(--primary-color);
}

.vanimedia-theme-woocommerce-filters .woocommerce-filters-result-count,
.vanimedia-theme-woocommerce-filters .woocommerce-filters-collapse-trigger {
	font-family: var(--h1-font-family);
	font-weight: var(--bold-font-weight);
}

/* Archive title */
h1.woocommerce-products-header__title {
	font-size: 1.5rem;
	line-height: 1;
	font-family: var(--font-family);
	text-transform: uppercase;
}

/**
 * Product grid
 */
.products {
	margin-bottom: 0;
}

.products.row {
	--column-gap-x: var(--column-gap-x__half);
}

.home .products.row {
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.home .products.row::-webkit-scrollbar {
	display: none;
}

.products .product {
	--product-line-height: 1.25;
	--heading-line-height: var(--product-line-height);
	--product-image-height: round(down, calc(100% / 3 * 4), 2px);
	--product-item-info-gap: calc(var(--product-line-height) * 1em);

	display: flex;
	position: relative;
	line-height: round(nearest, var(--product-line-height), 2px);
	margin-bottom: var(--column-gap-y);
	flex-direction: column;
}

.products .product > a {
	--link-font-color: var(--body-font-color);
	--link-hover-font-color: var(--body-font-color);

	display: flex;
	flex-grow: 1;
	flex-direction: column;
	text-decoration: none;
}

.products .product .vanimedia-theme-product-image {
	height: 0;
	display: block;
	position: relative;
	margin-bottom: var(--column-gap-y__quarter);
	padding-bottom: var(--product-image-height);
}

.products .product .vanimedia-theme-product-image img {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	position: absolute;
	object-fit: cover;
}

.vanimedia-theme-product-title {
	gap: var(--column-gap-y__quarter);
	margin: 0;
	display: flex;
	flex-grow: 1;
	margin-bottom: var(--column-gap-y__quarter);
	flex-direction: column;
	text-transform: uppercase;
}

.vanimedia-theme-product-title span {
	display: block;
}

.vanimedia-theme-product-title .product-name {
	font-size: var(--h2-font-size);
	line-height: round(nearest, var(--h2-line-height), 2px);
	font-family: var(--heading-font-family);
	font-weight: var(--heading-font-weight);
}

.products .price,
.products .vanimedia-theme-product-title,
.products .vanimedia-theme-product-title .product-name {
	font-size: 1rem;
	font-weight: 400;
	line-height: inherit;
}

.products .vanimedia-theme-product-title .brand-name {
	font-size: var(--h2-font-size);
	line-height: round(up, 1.3em, 2px);
	font-family: var(--h1-font-family);
	font-weight: var(--h1-font-weight);
}

.products .product .price bdi {
	display: flex;
}

/* Grid variation buttons */
.products .product .vanimedia-theme-woocommerce-visual-variation-options {
	top: 0;
	left: var(--column-gap-x__quarter);
	right: var(--column-gap-x__quarter);
	display: flex;
	opacity: 0;
	padding: 0;
	position: absolute;
	visibility: hidden;
	flex-direction: column;
	transition-property: opacity, visibility;
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

.products .product .vanimedia-theme-woocommerce-visual-variation-options .product-link-overlay {
	display: block;
	padding-bottom: var(--product-image-height);
}

.products .product:hover .vanimedia-theme-woocommerce-visual-variation-options,
.products .product:focus-within .vanimedia-theme-woocommerce-visual-variation-options {
	opacity: 1;
	visibility: visible;
}

.products .product .vanimedia-theme-woocommerce-visual-variation-options .variation-options-inner {
	gap: 0 var(--column-gap-x__quarter);
	left: var(--column-gap-x__sixth);
	right: var(--column-gap-x__sixth);
	bottom: var(--column-gap-x__sixth);
	margin: 0;
	z-index: 999;
	padding: var(--column-gap-x__sixth);
	overflow: clip;
	position: absolute;
	min-height: 3rem;
	max-height: calc(4rem + var(--column-gap-y__half));
	justify-content: center;
	background-color: rgba(255, 255, 255, 0.9);
}

.products .product .vanimedia-theme-woocommerce-visual-variation-option {
	min-width: unset;
	min-height: unset;
	flex-basis: unset;
	min-height: 2rem;
	line-height: 1;
	border-width: 1px;
	border-color: transparent;
	aspect-ratio: unset;
	text-decoration: none;
}

.products .product .vanimedia-theme-woocommerce-visual-variation-option:not(.inactive):hover {
	color: var(--color-white);
}

.products .product .vanimedia-theme-woocommerce-visual-variation-option span {
	padding: var(--column-gap-x__sixth);
}

.products .product .vanimedia-theme-woocommerce-visual-variation-option.inactive {
	border: 0 none;
}

.products .product .vanimedia-theme-woocommerce-visual-variation-option.inactive span {
	padding: var(--column-gap-x__sixth);
}

/* Pagination */
.woocommerce-pagination {
	--page-item-size: var(--woocommerce-pagination-item-size, 3rem);
	--page-item-spacing: var(--woocommerce-pagination-item-spacing, var(--column-gap-x__sixth));

	display: flex;
	padding: var(--column-gap-y__sixth) 0;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	text-transform: lowercase;
	justify-content: space-between;
}

.woocommerce-pagination::before {
	inset: 0;
	width: 100vw;
	height: 100%;
	content: '';
	z-index: -1;
	position: absolute;
	max-width: 100vw;
	border-top: var(--vwpf-border, 1px solid var(--primary-color));
	margin-left: calc(50% - 50vw);
	border-bottom: var(--vwpf-border, 1px solid var(--primary-color));
}

.woocommerce-pagination ul {
	margin: 0 calc(var(--column-gap-x__sixth) * -1);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	flex-direction: row;
	justify-content: stretch;
}

.woocommerce-pagination ul li {
	display: flex;
	position: relative;
	min-width: var(--page-item-size);
	min-height: var(--page-item-size);
	flex-basis: var(--page-item-size);
	align-items: center;
	aspect-ratio: 1/1;
	flex-direction: column;
	justify-content: center;
}

.woocommerce-pagination ul li:where(:not(:has(.prev, .next))) .page-numbers {
	--padding-font-correction: 0.125rem;

	width: 100%;
	height: 100%;
	display: flex;
	padding: calc(var(--column-gap-y__sixth) - var(--padding-font-correction)) var(--column-gap-x__sixth) var(--column-gap-y__sixth) var(--column-gap-x__sixth);
	position: relative;
	align-items: center;
	justify-content: center;
}

.woocommerce-pagination ul li:where(:not(:has(.prev, .next, .dots))) .page-numbers::before {
	inset: 0.5rem;
	content: '';
	z-index: -1;
	position: absolute;
	box-shadow: inset 0 0 0 1px var(--primary-color);
}

.woocommerce-pagination ul li .page-numbers.current {
	color: var(--color-white);
}

.woocommerce-pagination ul li .page-numbers.current::before {
	background: var(--primary-color);
}

.woocommerce-pagination ul li a.prev {
	--translate-x: -25%;
	justify-content: flex-start;
}

.woocommerce-pagination ul li a.next {
	--translate-x: 25%;
	justify-content: flex-end;
}

.woocommerce-pagination ul li a.prev svg,
.woocommerce-pagination ul li a.next svg {
	width: 2rem;
	transform: translateX(var(--translate-x, 0));
}

.woocommerce-pagination ul li .vanimedia-theme-icon {
	padding: 0.25rem;
}

/**
 * Single product
 */
.single-product .woocommerce-container {
	padding-top: var(--column-gap-y);
}

.single-product .summary .price {
	font-size: var(--h2-font-size);
	line-height: round(nearest, calc(var(--h2-line-height, var(--heading-line-height)) * 1em), 2px);
	margin-bottom: var(--column-gap-y__half);
}

button.single_add_to_cart_button.button.alt,
.wc-block-cart__submit-button.wc-block-components-button:not(.is-link),
.content .wc-block-components-totals-coupon__button:not(.is-link):disabled,
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link),
.variations_form:where(:not(:has(input[type='radio']:checked))) button.single_add_to_cart_button.button.alt,
.variations_form:where(:not(:has(input[type='radio']:checked))) button.single_add_to_cart_button.button.alt:hover,
.variations_form:where(:not(:has(input[type='radio']:checked))) button.single_add_to_cart_button.button.alt:focus-visible {
	--button-border-width: 1px;

	color: var(--black-button-outline-font-color, var(--color-black));
	width: 100%;
	border-color: var(--black-button-outline-border-color, var(--color-black));
	background-color: var(--black-button-outline-background-color, rgba(255, 255, 255, 0.5));
	transition-property: var(--trans-property);
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

button.single_add_to_cart_button.button.alt:hover,
button.single_add_to_cart_button.button.alt:focus-visible,
.wc-block-cart__submit-button.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button.wc-block-components-button:not(.is-link):focus-visible,
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link) {
	color: var(--black-button-outline-hover-font-color, var(--color-white));
	border-color: var(--black-button-outline-hover-border-color, var(--color-black));
	background-color: var(--black-button-outline-hover-background-color, var(--color-black));
}

.content .wc-block-components-totals-coupon__button:not(.is-link):disabled,
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link):hover,
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link):focus-visible,
.variations_form:where(:not(:has(input[type='radio']:checked))) button.single_add_to_cart_button.button.alt,
.variations_form:where(:not(:has(input[type='radio']:checked))) button.single_add_to_cart_button.button.alt:hover {
	opacity: 0.5;
}

/* Product gallery */
.woocommerce-product-gallery {
	top: var(--column-gap-y__half);
	opacity: 1 !important;
	position: sticky;
}

.woocommerce-product-gallery__wrapper {
	overflow: clip;
	position: relative;
}

.vanimedia-theme-product-thumbnails {
	top: 5%;
	gap: var(--column-gap-y__quarter);
	left: 5%;
	width: auto;
	bottom: 5%;
	display: flex;
	position: absolute;
	max-width: 5rem;
	overflow-y: auto;
	flex-direction: column;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.vanimedia-theme-product-thumbnails::-webkit-scrollbar {
	display: none;
}

.vanimedia-theme-product-thumbnails .woocommerce-product-gallery__image {
	width: 100%;
	display: flex;
	flex-basis: 20%;
}

/* Tabs */
.vanimedia-theme-product-tab-accordion + .vanimedia-theme-product-tab-accordion {
	border-top: 0 none;
}

.vanimedia-theme-product-tab-accordions h2 {
	font-size: inherit;
	line-height: inherit;
	font-family: inherit;
	margin-bottom: var(--column-gap-y__quarter);
}

.vanimedia-theme-product-tab-accordion__button {
	font-size: var(--secondary-cta-font-size);
}

.vanimedia-theme-product-tab-accordion__content[aria-hidden='false'] {
	gap: var(--column-gap-y__half);
	padding: var(--column-gap-y__quarter) 0 var(--column-gap-y__half);
	flex-direction: column;
}

.vanimedia-theme-product-tab-accordion__content[aria-hidden='false'] {
	display: flex;
}

/* Attributes */
.woocommerce-product-attributes th {
	font-weight: var(--normal-font-weight);
}

/* Related products */
.single-product .related,
.single-product .related h2 {
	margin-bottom: 1rem;
}

.single-product .related h2 {
	text-transform: uppercase;
}

/**
 * Cart & checkout
 */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	padding-top: var(--column-gap-y);
	padding-bottom: var(--column-gap-y);
}

.wc-block-checkout__guest-checkout-notice {
	display: none;
}

.wc-block-components-totals-coupon__form {
	display: flex;
	align-items: stretch;
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__input,
.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__input input {
	display: flex;
	flex-grow: 1;
}

.wc-block-components-button,
.wc-block-components-button:not(.is-link) {
	transition-property: var(--trans-property);
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

.wc-block-components-button:hover,
.wc-block-components-button:focus-visible,
.wc-block-components-button:not(.is-link):hover,
.wc-block-components-button:not(.is-link):focus-visible {
	opacity: 0.9;
}

.wc-block-components-button:not(.is-link):disabled {
	border-color: var(--secondary-color);
	background-color: var(--secondary-light-color);
}

.wc-block-components-button:not(.is-link):disabled .wc-block-components-button__text {
	color: var(--secondary-color);
	opacity: 1;
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link) {
	min-height: unset;
}

.content .wc-block-checkout__terms,
.content .wc-block-components-checkbox,
.content .wc-block-components-text-input,
.content .wc-block-components-checkbox label,
.content .wc-block-components-text-input label,
.content .wc-block-components-radio-control__label,
.content .wc-block-components-radio-control__description,
.content .wc-block-checkout__shipping-method-option-title,
.content .wc-block-checkout__shipping-method-option-price,
.content .wp-block-woocommerce-checkout-order-summary-block,
.content .wc-block-components-radio-control__secondary-label,
.content .wc-block-components-radio-control-accordion-content,
.content .wc-block-components-radio-control__secondary-description,
.content .wc-block-components-form .wc-block-components-text-input,
.content .wc-block-components-radio-control--highlight-checked::after,
.content .wc-block-components-form .wc-block-components-text-input label,
.content .wc-blocks-components-select .wc-blocks-components-select__label,
.content .wc-blocks-components-select .wc-blocks-components-select__container,
.content .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted,
.content .wc-block-checkout__pickup-options .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__description,
.content .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.content .wc-block-checkout__pickup-options .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__description-group,
.content .wc-block-checkout__pickup-options .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__secondary-description,
.content .wp-block-woocommerce-checkout-pickup-options-block .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__description,
.content .wp-block-woocommerce-checkout-pickup-options-block .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__description-group,
.content .wp-block-woocommerce-checkout-pickup-options-block .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control__secondary-description {
	font-size: inherit;
	line-height: inherit;
	border-radius: 0;
}

.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	box-shadow: inset 0 0 0 1px currentColor;
}

.wc-block-checkout__shipping-method-option.wc-block-checkout__shipping-method-option--selected,
.edit-post-visual-editor .wc-block-checkout__shipping-method-option.wc-block-checkout__shipping-method-option--selected {
	border-width: 1px;
}

.content .wc-block-components-radio-control-accordion-content {
	padding: 0 var(--wc-block-spacing-x) var(--wc-block-spacing-y) var(--wc-block-spacing-x);
}

.content .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content {
	display: none !important;
}

.content .wc-block-checkout__payment-method .wc-block-components-radio-control__label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	flex-direction: row;
}

.content .wc-block-checkout__payment-method .wc-block-components-radio-control__label .wc-block-components-payment-method-label {
	flex-grow: 1;
}

.content .wc-block-checkout__payment-method .wc-block-components-radio-control__label .wc-block-components-payment-method-icons,
.content .wc-block-checkout__payment-method #radio-control-wc-payment-method-options-mollie_wc_gateway_creditcard__label .wc-block-components-payment-method-icons {
	margin-left: 1rem;
}

.content .wc-block-checkout__payment-method .wc-block-components-radio-control__label .wc-block-components-payment-method-icons + .wc-block-components-payment-method-icons,
.content .wc-block-checkout__payment-method #radio-control-wc-payment-method-options-mollie_wc_gateway_creditcard__label .wc-block-components-payment-method-icons + .wc-block-components-payment-method-icons {
	margin-left: 0.5rem;
}

.content .wc-block-components-text-input label,
.content .wc-block-components-form .wc-block-components-text-input label,
.content .wc-blocks-components-select .wc-blocks-components-select__label {
	top: 0;
	left: var(--wc-block-spacing-x);
	transform: translate(0);
	line-height: calc(4.5rem - var(--wc-block-input-spacing-y__top) + var(--wc-block-input-spacing-y__bottom));
}

.content .wc-block-components-text-input.is-active label,
.content .wc-block-components-text-input input:autofill + label,
.content .wc-blocks-components-select .wc-blocks-components-select__label,
.content .wc-block-components-form .wc-block-components-text-input.is-active label,
.content .wc-block-components-form .wc-block-components-text-input input:autofill + label {
	top: 0;
	transform: translateY(0);
	font-size: 0.9;
	line-height: 2;
}

.content .wc-block-components-textarea,
.content .wc-block-components-select select,
.content .wc-block-components-radio-control__option,
.content .wc-block-components-text-input input[type='tel'],
.content .wc-block-components-text-input input[type='url'],
.content .wc-block-components-text-input input[type='text'],
.content .wc-block-components-text-input input[type='email'],
.content .wc-block-components-text-input input[type='number'],
.content .wc-block-components-text-input input[type='password'],
.content .wc-block-components-text-input input:autofill,
.content .wc-block-components-text-input.is-active input[type='tel'],
.content .wc-block-components-text-input.is-active input[type='url'],
.content .wc-block-components-text-input.is-active input[type='text'],
.content .wc-block-components-text-input.is-active input[type='email'],
.content .wc-block-components-text-input.is-active input[type='number'],
.content .wc-block-components-text-input.is-active input[type='password'],
.content .wc-blocks-components-select .wc-blocks-components-select__select,
.content .wc-block-components-form .wc-block-components-text-input input[type='tel'],
.content .wc-block-components-form .wc-block-components-text-input input[type='url'],
.content .wc-block-components-form .wc-block-components-text-input input[type='text'],
.content .wc-block-components-form .wc-block-components-text-input input[type='email'],
.content .wc-block-components-form .wc-block-components-text-input input[type='number'],
.content .wc-block-components-form .wc-block-components-text-input input[type='password'],
.content .wc-block-components-form .wc-block-components-text-input input:autofill,
.content .wc-block-components-form .wc-block-components-text-input.is-active input[type='tel'],
.content .wc-block-components-form .wc-block-components-text-input.is-active input[type='url'],
.content .wc-block-components-form .wc-block-components-text-input.is-active input[type='text'],
.content .wc-block-components-form .wc-block-components-text-input.is-active input[type='email'],
.content .wc-block-components-form .wc-block-components-text-input.is-active input[type='number'],
.content .wc-block-components-form .wc-block-components-text-input.is-active input[type='password'] {
	height: auto;
	padding: var(--wc-block-spacing-y) var(--wc-block-spacing-x);
	font-size: inherit;
	line-height: inherit;
	font-family: var(--font-family);
	padding-top: var(--wc-block-input-spacing-y__top);
	border-radius: 0;
	padding-bottom: var(--wc-block-input-spacing-y__bottom);
}

.content .wc-block-components-checkbox label,
.content .wc-block-components-radio-control__option {
	--input-size: clamp(1rem, 100vw, var(--wc-block-spacing-x));

	gap: var(--wc-block-spacing-x);
	display: flex;
	padding: var(--wc-block-spacing-y) var(--wc-block-spacing-x);
	align-items: center;
}

.content .wc-block-components-checkbox.wc-block-checkout__use-address-for-billing label,
.content .wp-block-woocommerce-checkout-order-note-block .wc-block-components-checkbox label {
	padding-left: 0;
	padding-right: 0;
}

.content .wc-block-components-radio-control .wc-block-components-radio-control__input,
.content .wc-block-components-checkbox .wc-block-components-checkbox__input[type='checkbox'],
.content .wc-block-checkout__pickup-options .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control .wc-block-components-radio-control__input,
.content .wp-block-woocommerce-checkout .wc-block-components-shipping-rates-control__package .wc-block-components-radio-control .wc-block-components-radio-control__input,
.content .wp-block-woocommerce-checkout-pickup-options-block .wc-block-components-local-pickup-rates-control .wc-block-components-radio-control .wc-block-components-radio-control__input {
	top: 0;
	left: 0;
	width: var(--input-size);
	height: var(--input-size);
	position: relative;
	transform: translate(0);
	min-width: var(--input-size);
	min-height: var(--input-size);
	flex-basis: var(--input-size);
}

.content .wc-block-components-checkbox .wc-block-components-checkbox__mark {
	width: var(--input-size);
	height: var(--input-size);
	display: inline-flex;
	padding: 2px;
	margin-top: -2px;
	margin-left: 0;
	align-items: center;
	justify-content: center;
}

.content .wc-block-components-checkbox .wc-block-components-checkbox__input[type='checkbox']:focus,
.content .wc-block-components-checkbox .wc-block-components-checkbox__input[type='checkbox']:focus-visible {
	outline: var(--outline-width, 1px) solid rgba(0, 0, 0, 0.25);
	outline-offset: 1px;
}

.content .wc-block-components-textarea {
	height: calc(var(--line-height) * 1em * 4);
	padding: var(--wc-block-spacing-y) var(--wc-block-spacing-x);
}

.content .wc-block-components-totals-coupon__button {
	width: auto;
	flex-grow: 0;
	flex-basis: 0;
}

.content .wc-block-components-totals-coupon__button:not(.is-link):disabled .wc-block-components-button__text {
	color: inherit;
}

.wc-block-cart__submit-button.wc-block-components-button:not(.is-link) {
	width: 100%;
	display: block;
}

.wc-block-cart {
	line-height: 1.5;
}

.content .wc-block-checkout__shipping-method-option,
.content .edit-post-visual-editor .wc-block-checkout__shipping-method-option,
.content .wc-block-checkout__shipping-method .wc-block-checkout__shipping-method-container {
	gap: var(--wc-block-spacing-y);
	padding: var(--wc-block-spacing-y);
	border-radius: 0;
}

.content .wc-block-checkout__shipping-method-option,
.content .edit-post-visual-editor .wc-block-checkout__shipping-method-option {
	gap: 0;
}

.content .wc-block-checkout__shipping-method-option-title-wrapper {
	gap: var(--wc-block-spacing-y);
	align-items: center;
}

.content .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
	margin: 0;
	padding-top: var(--wc-block-spacing-y);
	padding-bottom: var(--wc-block-spacing-y);
}

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

.content .wc-block-components-totals-wrapper:not(:empty),
.wp-block-woocommerce-checkout-order-summary-totals-block {
	padding: var(--wc-block-spacing-y) 0;
}

.wc-block-cart .wc-block-cart__totals-title,
.wc-block-cart .wp-block-woocommerce-cart-order-summary-block,
table.wc-block-cart-items .wc-block-cart-items__header,
table.wc-block-cart-items .wc-block-cart-items__header th,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
.wc-block-components-product-metadata,
.wc-block-components-totals-item__description,
.wc-block-components-product-details.wc-block-components-product-details,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__via,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header th,
.content .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: 0;
	text-decoration: none;
}

.content .wc-block-cart-item__product .wc-block-cart-item__wrap,
.content table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap,
.content .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap {
	width: 100%;
	display: grid;
	column-gap: 1.5rem;
	align-items: center;
	grid-template-areas: 'name quantity' 'prices quantity' 'metadata quantity';
	grid-template-columns: minmax(0, 1fr) auto;
}

.content .wc-block-cart-item__product .wc-block-components-product-name {
	grid-area: name;
}

.content .wc-block-cart-item__product .wc-block-cart-item__prices {
	grid-area: prices;
}

.content .wc-block-cart-item__product .wc-block-components-product-metadata {
	grid-area: metadata;
	align-items: flex-start;
}

.content .wc-block-cart-item__product .wc-block-cart-item__quantity,
.content .is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity,
.content .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity,
.content .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
	gap: var(--wc-block-spacing-x);
	margin: 0;
	padding: 0;
	display: flex;
	grid-area: quantity;
	align-self: center;
	align-items: center;
	justify-self: flex-end;
	flex-direction: row;
}

.content .wc-block-cart__main .wc-block-cart-items {
	border-bottom: 1px solid var(--primary-light-color);
}

.content .wc-block-cart__main .wc-block-cart-items td {
	border-top: 1px solid var(--primary-light-color);
}

.content .wc-block-cart__main .wc-block-cart-items th,
.content .wc-block-cart__main .wc-block-cart-items td {
	padding: var(--wc-block-spacing-y) var(--wc-block-spacing-x);
	vertical-align: middle;
}

.content .wc-block-cart__main .wc-block-cart-items th:first-child,
.content .wc-block-cart__main .wc-block-cart-items td:first-child {
	padding-left: 0;
}

.content .wc-block-cart__main .wc-block-cart-items th:last-child,
.content .wc-block-cart__main .wc-block-cart-items td:last-child {
	padding-right: 0;
}

.content .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	padding-left: var(--column-gap-y__sixth);
	padding-right: var(--column-gap-y__sixth);
}

.content .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	color: var(--color-black);
	opacity: 1;
	font-size: 1.5rem;
	font-weight: var(--bold-font-weight);
	padding-bottom: var(--column-gap-y__sixth);
	transition-property: var(--trans-property);
	transition-duration: var(--trans-duration);
	transition-timing-function: var(--trans-timing-function);
}

.content .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled {
	opacity: 0.1;
}

.content table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link,
.content .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
	top: -1px;
	position: relative;
	vertical-align: unset;
}

.content table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap,
.content .editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__wrap {
	gap: var(--wc-block-spacing-y);
}

.wc-block-cart th span,
.wc-block-cart td span {
	display: block;
}

.wc-block-cart td .wc-block-components-product-details > span {
	gap: var(--wc-block-spacing-x);
	width: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	flex-direction: row;
	justify-content: flex-start;
}

.wc-block-cart td .wc-block-components-product-details > span > span:first-child:not(:last-child) {
	flex-grow: 1;
}

.wc-block-cart .wp-block-woocommerce-cart-order-summary-block {
	border-bottom: 1px solid var(--primary-light-color);
}

.wc-block-components-totals-wrapper,
.wp-block-woocommerce-cart-order-summary-totals-block {
	border-top: 1px solid var(--primary-light-color);
}

.wc-block-cart .wc-block-cart__totals-title {
	padding: var(--wc-block-spacing-y) 0;
}

.wc-block-cart-item__total {
	display: table-cell;
}

.content .wp-block-woocommerce-cart-order-summary-totals-block {
	padding-bottom: 0;
}

.wc-block-components-totals-item__description {
	display: none;
}

.wc-block-components-sidebar-layout .wc-block-components-main {
	width: round(nearest, calc(100% / 3 * 2), 2px);
	padding-right: var(--wc-block-spacing-x);
}

.wc-block-components-sidebar {
	width: round(nearest, calc(100% / 3), 2px);
	padding-left: var(--wc-block-spacing-x);
}

.is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
	padding-right: var(--wc-block-spacing-x);
}

.content .wc-block-checkout__billing-fields .wc-block-components-address-form .wc-block-components-address-form__address_1,
.content .wc-block-checkout__billing-fields .wc-block-components-address-form .wc-block-components-address-form__address_2,
.content .wc-block-checkout__shipping-fields .wc-block-components-address-form .wc-block-components-address-form__address_1,
.content .wc-block-checkout__shipping-fields .wc-block-components-address-form .wc-block-components-address-form__address_2 {
	flex: 1 0 calc(70% - 12px);
}

.content .wc-block-checkout__billing-fields .wc-block-components-address-form .wc-block-components-address-form__address_2,
.content .wc-block-checkout__shipping-fields .wc-block-components-address-form .wc-block-components-address-form__address_2 {
	flex: 1 0 calc(30% - 12px);
}

/**
 * Order
 */
.woocommerce-order,
.woocommerce-order-pay .content > .woocommerce {
	padding: var(--column-gap-y) 0;
}

.woocommerce-order::after,
.woocommerce-order-pay .content > .woocommerce::after {
	clear: both;
	content: '';
	display: block;
}

ul.woocommerce-error:focus-visible {
	outline: 0 none;
}

.woocommerce-order-pay ul.woocommerce-error {
	gap: var(--column-gap-y__half);
	margin: 0 0 var(--column-gap-y);
	padding: 0;
	outline: 0 none;
	display: inline-flex;
	list-style: none;
	align-items: stretch;
	flex-direction: column;
}

.woocommerce-order-pay ul.woocommerce-error li::before {
	display: none;
}

.woocommerce-order-pay ul.woocommerce-error li {
	color: var(--color-red);
	border: 1px solid var(--color-red);
	padding: var(--column-gap-y__half) var(--column-gap-x__half);
	line-height: inherit;
	font-weight: var(--bold-font-weight);
	border-radius: 1rem;
}

.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details {
	width: 30%;
	float: left;
}

.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-thankyou-order-details {
	width: 70%;
	margin-bottom: var(--column-gap-y);
	padding-right: var(--column-gap-x);
}

.woocommerce-order h2 {
	font-weight: var(--bold-font-weight);
	border-bottom: 1px solid var(--primary-light-color);
	margin-bottom: 0.5rem;
	padding-bottom: 0.5rem;
}

table.shop_table,
table.woocommerce-table {
	width: 100%;
	margin: 0 0 var(--column-gap-y) 0;
}

table.shop_table tr th,
table.woocommerce-table tr th,
table.shop_table tr td:first-child,
table.woocommerce-table tr td:first-child {
	width: 50ch;
}

table.shop_table tr th,
table.woocommerce-table tr th {
	font-weight: var(--bold-font-weight);
}

table.shop_table tr td:first-child + td:last-child,
table.woocommerce-table tr td:first-child + td:last-child,
table.shop_table tr th:first-child + td:last-child,
table.woocommerce-table tr th:first-child + td:last-child {
	width: 80%;
}

table.shop_table tr th,
table.woocommerce-table tr th,
table.shop_table tr td,
table.woocommerce-table tr td {
	--padding-y: round(up, clamp(0.25rem, 100vw, var(--column-gap-y__sixth)), 1px);
	--padding-x: round(up, clamp(0.5rem, 100vw, var(--column-gap-x__half)), 1px);

	padding: var(--padding-y) var(--padding-x);
	border-bottom: 1px solid var(--secondary-light-color);
}

table.shop_table tr th:first-child,
table.woocommerce-table tr th:first-child,
table.shop_table tr td:first-child,
table.woocommerce-table tr td:first-child {
	padding-left: 0;
}

table.shop_table tr th:last-child,
table.woocommerce-table tr th:last-child,
table.shop_table tr td:last-child,
table.woocommerce-table tr td:last-child {
	padding-right: 0;
}

/* Payment methods */
ul.payment_methods {
	display: inline-flex;
	align-items: stretch;
	flex-direction: column;
}

ul.payment_methods li {
	display: flex;
	align-items: center;
}

ul.payment_methods li label {
	margin: 0;
	display: flex;
	padding: 0.625rem 1rem;
	flex-grow: 1;
	align-items: center;
	justify-content: space-between;
}

ul.payment_methods li label img {
	margin: 0 0 0 4rem;
	justify-self: flex-end;
}

ul.payment_methods li label img + img {
	margin-left: 0.5rem;
}

ul.payment_methods li label + div {
	display: none !important;
}
