/* Global style - WooCommerce */

/* ==========================================================================
Base styles
========================================================================== */

.wc-block-components-notices__snackbar {
	display: none !important;
}

.single-product .is-style-breadcrumbs {
	padding-bottom: var(--wp--preset--spacing--m);
}

@media (max-width: 768px) {
	.single-product .is-style-breadcrumbs {
		padding-bottom: var(--wp--preset--spacing--s);
	}
}

/* Base styles - Inputs, fields
========================================================================== */

.wc-block-components-textarea,
.wc-block-components-address-card {
	border-radius: 0;
	border-color: var(--wp--preset--color--neutral-2);
}

.wc-block-checkout__add-note .wc-block-components-textarea:focus {
	box-shadow: none;
	border-color: var(--wp--preset--color--black);
}

/* Show/hide password in input */
span.password-input {
	position: relative;
	display: block;
}

#password_strength {
	font-size: var(--wp--preset--font-size--xs);
	padding-top: var(--wp--preset--spacing--xxs);
}

.woocommerce-password-hint {
	font-style: italic;
}

.show-password-input {
	width: 42.4px;
	height: 42.5px;
	font-size: inherit;
	background-color: transparent;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	position: absolute;
	top: 0;
	right: 0;
}

.show-password-input::before {
	content: url("../../images/icon-visibility.svg");
	width: 42.4px;
	height: 42.5px;
}

.show-password-input.display-password::before {
	content: url("../../images/icon-visibility-off.svg");
	width: 42.4px;
	height: 42.5px;
}

.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-text-input label {
	font-size: inherit;
}

.wc-block-components-form .wc-block-components-text-input :is(input, select, textarea),
.wc-block-components-text-input input {
	border-radius: 0 !important;
	border-color: var(--wp--preset--color--neutral-2) !important;
}

.wc-block-components-form .wc-block-components-text-input.has-error input:is(:active, :hover, :focus),
.wc-block-components-text-input.has-error input:is(:active, :hover, :focus) {
	border-color: var(--wp--custom--color--error) !important;
	border-width: 1px;
	box-shadow: none;
}

.wc-block-components-form .wc-block-components-text-input input:is(:active, :hover, :focus),
.wc-block-components-text-input input:is(:active, :hover, :focus) {
	border-color: var(--wp--preset--color--black);
}

.wc-block-components-quantity-selector button:focus {
	box-shadow: none !important;
	outline: none !important;
	border: 1px solid var(--wp--preset--color--black) !important;
}
/* 
input:active,
input:focus {
	box-shadow: none !important;
	outline: none !important;
	border: 1px solid var(--wp--preset--color--black) !important;
} */

.wc-blocks-components-select .wc-blocks-components-select__container {
	border: none;
}

.wc-block-components-radio-control--highlight-checked
	.wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked
	label.wc-block-components-radio-control__option--checked-option-highlighted {
	box-shadow: none;
}

.wc-block-components-totals-coupon__form {
	gap: 1em;
}

p:has(button) > .button {
	margin-top: var(--wp--preset--spacing--m);
}

.wc-blocks-components-select .wc-blocks-components-select__select {
	border-color: var(--wp--preset--color--neutral-2);
	box-shadow: none;
	border-radius: 0;
}

/* Select2 dropdown */
.select2-container--default .select2-selection--single {
	border: 1px solid var(--wp--preset--color--neutral-2);
	height: fit-content;
	border-radius: 0;
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xs);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	padding: 0;
	line-height: normal;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	background-image: url("../../images/icon-select-dropdown.svg");
	background-position: right center;
	background-size: 12px 12px;
	background-repeat: no-repeat;
	right: 1rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
	display: none !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field,
.select2-container--open .select2-dropdown--below {
	border-color: var(--wp--preset--color--neutral-2);
}

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

/* Base styles - Radio, checkbox
========================================================================== */
.wc-block-components-checkbox label {
	gap: 1.5em 1em;
}

.wc-block-components-radio-control--highlight-checked:after {
	border: none;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:focus,
.wc-block-components-radio-control .wc-block-components-radio-control__input[type="radio"]:focus {
	outline: none;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"],
.wc-block-components-radio-control .wc-block-components-radio-control__input[type="radio"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	cursor: pointer;
	position: relative;

	box-sizing: border-box;
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--wp--preset--color--neutral-2);
	background-color: transparent;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"] {
	border-radius: 0;
}

.wc-block-components-radio-control .wc-block-components-radio-control__input {
	transform: unset;
}

.wc-block-components-radio-control .wc-block-components-radio-control__option {
	padding: 0;
	display: inline-flex;
	gap: 1rem;
}

.wc-block-components-radio .wc-block-components-radio__input[type="radio"],
.wc-block-components-radio-control .wc-block-components-radio-control__input[type="radio"] {
	border-radius: 50px;
	left: 0;
}

.is-mobile .wc-block-components-shipping-rates-control .wc-block-components-radio-control__option,
.is-small .wc-block-components-shipping-rates-control .wc-block-components-radio-control__option {
	padding-left: 0;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:checked,
.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"]:not(:disabled):checked {
	background-color: var(--wp--preset--color--white);
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="10" height="10" viewBox="0 0 32 32" xml:space="preserve"><path style="fill: %23163039" d="M11.941,28.877l-11.941-11.942l5.695-5.696l6.246,6.246l14.364-14.364L32,8.818"/></svg>');
	background-size: 12px 12px;
	background-repeat: no-repeat;
	background-position: center;
	border-color: var(--wp--preset--color--black);
}
.wc-block-components-radio-control .wc-block-components-radio-control__input[type="radio"] :checked,
.wc-block-components-radio-control .wc-block-components-radio-control__input[type="radio"] :not(:disabled):checked {
	background-color: var(--wp--preset--color--white);
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 32 32"><circle cx="16" cy="16" r="8" style="fill: %23163039"/></svg>');
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: center;
	border-color: var(--wp--preset--color--black);
}

/* Base styles - Buttons
========================================================================== */
.wc-block-components-button:not(.is-link) {
	transition: all 150ms linear;
	box-shadow: none !important;
	border: 1px solid transparent;
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

/* Base styles - Grids
========================================================================== */

.columns-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.columns-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.columns-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.columns-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.columns-6 {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

@media (max-width: 1200px) {
	.columns-5,
	.columns-6 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.columns-4,
	.columns-5,
	.columns-6 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 670px) {
	.columns-2,
	.columns-3,
	.columns-4,
	.columns-5,
	.columns-6 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 510px) {
	.columns-2,
	.columns-3,
	.columns-4,
	.columns-5,
	.columns-6 {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
Header 
========================================================================== */

/* Header - Products search
========================================================================== */

header .qt-search {
	max-width: var(--wp--custom--maxwidth--default);
	width: 100%;
	margin: 0 auto;
}

.qt-search__inner {
	display: flex;
}

header .qt-search__input {
	border: 0;
	padding-left: 0;
	padding-right: 0;
}

.qt-search__input {
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
}
.qt-search__input:is(:active, :focus, :focus-visible, :focus-within) {
	box-shadow: none;
}

button.qt-search__button {
	background-color: var(--wp--preset--color--black);
	box-shadow: none;
	border: none;
	border-radius: 0;
	padding: var(--wp--preset--spacing--xs);
	cursor: pointer;
}

svg.search-icon {
	fill: var(--wp--preset--color--white);
}

#qt-search {
	flex: 0 0 100%;
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.2s cubic-bezier(0.23, 1, 0.32, 1);
}

.qt-search__inner {
	display: flex;
}

.qt-search__input {
	flex-grow: 1;
	background: transparent;
	outline: none;
	font-size: var(--wp--preset--font-size--s);
}

.qt-search-results {
	position: absolute;
	top: var(--wp--custom--header-height--bottom);
	left: 0;
	right: 0;
	background-color: var(--wp--preset--color--white);
	z-index: 9999;
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
	padding: var(--wp--preset--spacing--m);
}

.qt-search-results ul {
	list-style: none;
	padding: 0;
	margin: 0;
	max-width: var(--wp--custom--maxwidth--default);
	margin-left: auto;
	margin-right: auto;
}

.qt-search-item__highlight {
	font-weight: 700;
}

.qt-search-item__title {
	display: inline-block;
}

.qt-search-results svg {
	transform: scaleX(-1);
	margin-bottom: -7px;
	margin-right: 2px;
}

.qt-search-results .search-icon {
	display: none !important;
}

.qt-search-results svg.search-icon {
	fill: var(--wp--preset--color--black);
}

.qt-search-item a {
	display: flex;
	padding: 0.5em 0;
	font-size: var(--wp--preset--font-size--s);
	text-decoration: none;
}

.qt-search-item a:hover {
	background-color: transparent;
	text-decoration: underline;
}

.qt-search-results__type {
	color: var(--wp--preset--color--neutral-1);
	font-size: var(--wp--preset--font-size--s);
	margin-bottom: 0.5em;
}

.qt-search-item + .qt-search-results__type {
	padding-top: var(--wp--preset--spacing--s);
	margin-top: var(--wp--preset--spacing--xs);
	border-top: 1px solid var(--wp--preset--color--neutral-2);
	margin-bottom: var(--wp--preset--spacing--xxs);
}

.qt-search-close {
	display: flex;
	justify-content: center;
	align-items: center;
}
.qt-search-close svg {
	height: 18px;
}

/* Header - User toolbar for shop
========================================================================== */

/* Mini cart icon */
.user-toolbar__item .wc-block-mini-cart__button {
	background-color: transparent;
	border: 0;
	height: 40px;
	width: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.wc-block-mini-cart__button .wc-block-mini-cart__icon {
	width: 29px;
	height: auto;
}

.wc-block-mini-cart svg path {
	fill: var(--wp--preset--color--black);
}

.wc-block-mini-cart__badge {
	border: none;
	line-height: 1;
	min-height: 20px;
	min-width: 20px;
	padding: 0 0.4em;
	box-shadow: none;

	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	font-weight: 500;
	font-family: inherit;
	font-size: 0.75rem;
}

/* Favorites icon */
#favorite-count {
	position: absolute;
	top: 23%;
	right: -35%;
	min-height: 20px;
	min-width: 20px;
	padding: 0 0.4em;
	transform: translate(-50%, -50%);
	z-index: 1;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: transparent;
	color: var(--wp--preset--color--white);
	font-weight: 500;
	font-family: inherit;
	font-size: 0.75rem;
	border: none;
	line-height: 1;
	box-shadow: none;
}

#favorite-count.active {
	background-color: var(--wp--preset--color--black);
}

/* Myaccount icon */

@media (max-width: 670px) {
	.user-toolbar__item.myaccount {
		display: none;
	}
}

/* ==========================================================================
Product filter
========================================================================== */

/* Filter container
========================================================================== */

.woo-filter-container {
	padding: var(--wp--preset--spacing--s) var(--wp--preset--spacing--m) var(--wp--preset--spacing--m);
}

.woo-filter-content {
	padding-right: 0;
	overflow-x: hidden;
}

.woo-filter-content::-webkit-scrollbar {
	display: none;
}

.woo-filter-content {
	-ms-overflow-style: none; /* IE och Edge */
	scrollbar-width: none; /* Firefox */
}

/* Filter header and footer
========================================================================== */

.woo-filter-header {
	padding-right: 0;
}

.woo-filter-header h2 {
	color: var(--wp--preset--color--black);
	font-size: var(--wp--preset--font-size--l);
}

.woo-filter-header .close-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	cursor: pointer;
	border: unset;
	background: unset;

	padding: 1em;
	margin-right: -1em;
}

.woo-filter-footer {
	padding-right: 0;
}

/* Filter buttons
========================================================================== */

.woo-filter-btn {
	transition: all 150ms linear;
}

.woo-filter-btn:hover {
	opacity: 0.6;
}

/* Filter button - Primary button */
.primary-btn {
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}

/* Filter button - Secondary button */
.secondary-btn {
	background-color: var(--wp--preset--color--neutral-3);
	color: var(--wp--preset--color--black);
}

/* Filter button - Text button */
.text-btn {
	padding-left: 0;
	padding-right: 0;
	font-weight: 500;
}

.text-btn:hover {
	background-color: transparent;
	color: var(--wp--preset--color--black);
}

.text-btn:has(img):hover img {
	filter: invert(0);
}

/* Filter chips
========================================================================== */
.is-layout-flex:has(.woo-filter-selected, .woo-filter-btn-wrapper) {
	flex-direction: column;
	justify-content: flex-start;
	margin-top: var(--wp--preset--spacing--l);
	margin-bottom: var(--wp--preset--spacing--s);
	gap: var(--wp--preset--spacing--xs);
}

.woo-filter-active__filter {
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	border-radius: 50px;
	line-height: normal;
	padding: 0 var(--wp--preset--spacing--xs);
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 400;
	gap: 4px;
	border: 0;
}

.woo-filter-active__filter__remove {
	padding: 5px 0;
	cursor: pointer;
}

.woo-filter-active__filter__remove img {
	filter: invert(1) brightness(100);
}

div#woo-filter-selected {
	width: 100%;
	display: inline-flex;
	justify-content: flex-end;
}

.woo-filter-btn-wrapper {
	display: inline-flex;
	justify-content: flex-end;
	width: 100%;
}

/* Filter attributes
========================================================================== */

.woo-filter-attribute__header {
	padding-bottom: 0;
	margin-bottom: var(--wp--preset--spacing--xs);
}

div.woo-filter-attribute {
	border-bottom: 1px solid var(--wp--preset--color--neutral-2);
	padding-bottom: 0;
	margin-bottom: var(--wp--preset--spacing--xs);
}

div.woo-filter-attribute:first-of-type {
	border-top: 1px solid var(--wp--preset--color--neutral-2);
	padding-top: var(--wp--preset--spacing--xs);
}

.woo-filter-attribute__title {
	font-size: var(--wp--preset--font-size--s);
	color: var(--wp--preset--color--black);
}

.woo-filter-attribute__toggle img,
.woo-filter-attribute__toggle:hover img {
	filter: invert(9%) sepia(13%) saturate(3211%) hue-rotate(154deg) brightness(89%) contrast(92%);
	transition: all 150ms linear;
}

.woo-filter-attribute__toggle[aria-expanded="true"] img {
	transform: rotate(180deg);
}

/* Filter checkbox
========================================================================== */

.woo-filter-checkboxes {
	gap: var(--wp--preset--spacing--xs);
	padding-bottom: var(--wp--preset--spacing--m);
}

.woo-filter-checkbox label {
	gap: 12px;
	font-size: var(--wp--preset--font-size--xs);
	margin: 1px;
}

.woo-filter-checkbox input[type="checkbox"] {
	height: 22px;
}

.woo-filter-checkbox input[type="checkbox"]:not(:checked) {
	border-color: var(--wp--preset--color--neutral-2);
}

/* Filter range slider
========================================================================== */
.wc-block-price-filter,
.wc-block-price-filter__controls,
.wc-block-price-slider {
	border-color: var(--wp--preset--color--neutral-2);
	border-radius: 0;
	margin-bottom: var(--wp--preset--spacing--xxs);
}

.wc-block-components-price-slider {
	margin-bottom: 0;
}

.wc-block-components-price-slider__actions {
	margin-bottom: var(--wp--preset--spacing--s);
}

.wc-block-components-price-slider__range-input-wrapper:before {
	opacity: 1;
	background: var(--wp--preset--color--neutral-2);
}

.wc-block-components-price-slider__range-input-progress {
	color: var(--wp--preset--color--black);
}

.wc-block-components-price-slider__range-input-wrapper,
.wc-block-components-price-slider__range-input-progress {
	height: 2px;
}

.wc-block-components-price-slider__range-input {
	top: -2px;
	box-shadow: none !important;
}

.wc-block-price-filter__range-input:is(:active, :focus) {
	border: 0 !important;
}

.wc-block-price-filter__range-input::-webkit-slider-thumb,
.wc-block-price-filter__range-input::-webkit-slider-thumb:hover {
	-webkit-appearance: none;
	width: 16px;
	height: 16px;
	background: var(--wp--preset--color--black);
	border-radius: 50%;
	cursor: pointer;
	pointer-events: auto;
	z-index: 3;
	border: none;
}

.wc-block-price-filter__range-input::-moz-range-thumb,
.wc-block-price-filter__range-input::-moz-range-thumb:hover {
	width: 16px;
	height: 16px;
	background: var(--wp--preset--color--black);
	border-radius: 50%;
	cursor: pointer;
	z-index: 3;
	border: none;
}

.wc-block-components-price-slider__controls .wc-block-components-price-slider__amount {
	border: 1px solid var(--wp--preset--color--neutral-2) !important;
	border-radius: 0;
	font-size: var(--wp--preset--font-size--xs);
}

.wc-block-components-filter-reset-button {
	font-size: var(--wp--preset--font-size--xs);
	text-underline-position: under;
	text-decoration-skip-ink: none;
	transition: all 150ms linear;
}

.wc-block-components-filter-reset-button:hover {
	text-decoration: underline;
	opacity: 0.6;
}

/* Filter color picker
========================================================================== */

/* Filter dropdown
========================================================================== */

/* ==========================================================================
Page: Product brands
========================================================================== */

.brands {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-gap: var(--wp--style--block-gap);
}

@media (max-width: 768px) {
	.brands {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 510px) {
	.brands {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
Shop loop
========================================================================== */

.wc-block-product-template.is-flex-container,
.products {
	display: grid;
	grid-gap: var(--wp--style--block-gap) var(--wp--preset--spacing--m);
	list-style: none;
	margin: 0;
	padding: 0;
}

.wc-block-product-template.is-flex-container > li {
	list-style: none;
	margin: 0;
	width: 100%;
}

.related.products h2 {
	margin-bottom: 0;
}

/* Layout 
========================================================================== */

/* Pagination
========================================================================== */

nav.wp-block-query-pagination {
	display: flex;
	gap: var(--wp--preset--spacing--s);
	align-items: center;
	margin-top: var(--wp--preset--spacing--xl);
}

.wp-block-query-pagination-numbers {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--s);
}

.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 2.5em;
	width: 2.5em;
	border-radius: 0;
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	transition: all 150ms linear;
}

.wp-block-query-pagination-previous:hover,
.wp-block-query-pagination-next:hover {
	background-color: var(--wp--preset--color--black);
}

span.wp-block-query-pagination-previous-arrow,
span.wp-block-query-pagination-next-arrow {
	font-size: 0;
}

.wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron),
.wp-block-query-pagination-next-arrow:not(.is-arrow-chevron) {
	scale: 0.65;
}

span.wp-block-query-pagination-previous-arrow::before {
	content: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_2619_1291' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='40' height='40'%3E%3Crect width='40' height='40' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_2619_1291)'%3E%3Cpath d='M16.666 30.0001L6.66602 20.0001L16.6939 9.97217L18.666 11.9447L11.9993 18.6113H33.3606V21.3888H11.9993L18.6381 28.028L16.666 30.0001Z' fill='black'/%3E%3C/g%3E%3C/svg%3E");
	display: inline-block;
}

span.wp-block-query-pagination-next-arrow::before {
	content: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_2619_1291' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='40' height='40'%3E%3Crect width='40' height='40' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_2619_1291)'%3E%3Cpath d='M16.666 30.0001L6.66602 20.0001L16.6939 9.97217L18.666 11.9447L11.9993 18.6113H33.3606V21.3888H11.9993L18.6381 28.028L16.666 30.0001Z' fill='black'/%3E%3C/g%3E%3C/svg%3E");
	transform: rotate(180deg);
	display: inline-block;
}

.wp-block-query-pagination-next:hover span.wp-block-query-pagination-next-arrow::before,
.wp-block-query-pagination-previous:hover span.wp-block-query-pagination-previous-arrow::before {
	filter: invert(1) brightness(100);
}

/* Orderby & Results count
========================================================================== */

.wc-block-product-results-count .woocommerce-result-count,
.wc-block-catalog-sorting select.orderby {
	font-size: var(--wp--preset--font-size--s);
}

@media (max-width: 510px) {
	.is-layout-flex:has(.wp-block-woocommerce-product-results-count, .wc-block-catalog-sorting) {
		display: flex;
		flex-direction: column;
		gap: var(--wp--preset--spacing--xxs);
	}

	.wc-block-product-results-count,
	.wc-block-catalog-sorting {
		width: 100%;
	}
}

/* Orderby */
.orderby {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 5px;
	background: none;
	width: 100%;
}

select.orderby {
	box-shadow: none;
	border: none;
	padding: 0;
	font-weight: 700;
	color: var(--wp--preset--color--black);
}

/* Result count */
.woocommerce.wc-block-product-results-count {
	width: 100%;
}

.woocommerce.wc-block-product-results-count .woocommerce-result-count {
	display: flex;
	justify-content: flex-end;
}

@media (max-width: 510px) {
	.woocommerce.wc-block-product-results-count .woocommerce-result-count {
		justify-content: flex-start;
	}
}

/* Category image
========================================================================== */

.is-style-breadcrumbs:has(+ .product-category__image) {
	padding-bottom: var(--wp--preset--spacing--m);
}

.product-category__image img {
	width: 100%;
	max-height: 400px;
	display: block;
	object-fit: cover;
}

@media (max-width: 768px) {
	.is-style-breadcrumbs:has(+ .product-category__image) {
		padding-bottom: var(--wp--preset--spacing--s);
	}

	.product-category__image img {
		max-height: 350px;
	}
}

/* Category description
========================================================================== */

.product-category__description {
	max-width: var(--wp--custom--maxwidth--m);
}

/* Category buttons – Slider
========================================================================== */

.category-buttons-slider {
	margin-top: var(--wp--preset--spacing--l);
}

.category-buttons-slider .splide__arrow--prev {
	left: 0;
}

.category-buttons-slider .splide__arrow--next {
	right: 0;
}

.category-buttons-slider .splide__arrow svg {
	fill: var(--wp--preset--color--black);
	height: 2.5em;
	width: 2.5em;
}

.category-buttons-slider .wp-block-buttons {
	flex-wrap: nowrap;
}

.category-buttons-slider .wp-block-button__link {
	display: inline-block;
	white-space: nowrap;
}

/* ==========================================================================
Product card
========================================================================== */

.wc-block-product-template.is-flex-container.is-flex-container[class*="columns-"] > li {
	width: 100%;
	position: relative;
}

:where(.wc-block-product-template .wc-block-product) > :not(:last-child) {
	margin-bottom: 0;
}

li.product {
	cursor: pointer;
	position: relative;
}

li.product a {
	display: flex;
	flex-direction: column;
	gap: 0;
	text-decoration: none;
}

li.product a:hover {
	opacity: 1;
}

/* Product card - Image
========================================================================== */

li.product .wc-block-components-product-image {
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	aspect-ratio: var(--wp--custom--aspect-ratio--square);
	background-color: var(--wp--preset--color--neutral-3);
	margin-bottom: var(--wp--preset--spacing--s);
}

li.product .wc-block-components-product-image img,
li.product img {
	transition: all 150ms linear;
	aspect-ratio: var(--wp--custom--aspect-ratio--square);
	object-fit: contain !important;
	width: 100%;
	height: 100%;
}

li.product .wc-block-components-product-image:hover img {
	transform: scale(1.05);
}

/* Product card - Name
========================================================================== */

li.product .wp-block-post-title,
li.product .woocommerce-loop-product__title {
	margin-bottom: var(--wp--preset--spacing--xxs);
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 700;
}

/* Product card - Badges
========================================================================== */

.wc-block-components-product-image .wc-block-components-product-sale-badge {
	display: none !important;
}

.product-badges {
	position: absolute;
	top: var(--wp--preset--spacing--xs);
	left: var(--wp--preset--spacing--xs);
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--xxs);
}

li.product .wc-block-components-product-sale-badge,
li.product .product-badge {
	border: none;
	border-radius: 0;
	padding: 0.5em 0.75em;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);

	font-family: var(--wp--preset--font-family--paragraph);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--xxs);
	text-align: center;
	text-transform: uppercase;
	line-height: 1;
	max-width: fit-content;
}

li.product .wc-block-grid__product-onsale {
	border-radius: 0;
	background-color: #dc3545;
	color: var(--wp--preset--color--white);
	letter-spacing: 0.025em;
	line-height: 1;
	margin-right: auto;
}

@media (max-width: 870px) {
	.product-badges {
		bottom: 100px;
	}
}

/* Product card - Price
========================================================================== */

li.product .wc-block-components-product-price,
li.product .price {
	margin-top: var(--wp--preset--spacing--xs);
	line-height: normal;
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

li.product .price {
	margin-top: 0;
}

li.product .wc-block-components-product-price del,
li.product .price del {
	text-decoration: line-through;
}

li.product .wc-block-components-product-price ins,
li.product .price ins {
	color: #dc3545;
	text-decoration: none;
}

/* Product card - Add to favorites
========================================================================== */

.add-favorite {
	position: absolute;
	top: 12px;
	left: auto;
	bottom: auto;
	right: 12px;
	width: 36px;
	height: 36px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 50px;
	background-color: var(--wp--preset--color--white);
	cursor: pointer;
}

.add-favorite__inner {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-top: 5px;
}

.heart-filled,
.add-favorite--active .heart-outline {
	display: none;
}

.add-favorite--active .heart-filled {
	display: block;
}

/* ==========================================================================
Single product
========================================================================== */

@media (max-width: 768px) {
	.is-style-woo-single-product .grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Single product - Article number
========================================================================== */

.is-style-woo-single-product .product-article-number {
	margin-top: 16px;
	display: block;
	color: var(--wp--preset--color--neutral-1);
	font-size: var(--wp--preset--font-size--xs);
	font-style: italic;
}

/* Single product - Stock status
========================================================================== */

p.stock {
	margin-bottom: var(--wp--preset--spacing--s);
}

.out-of-stock::before {
	content: "●";
	margin-right: 0.5rem;
	font-size: 1.25em;
	line-height: 1;
	vertical-align: baseline;
	color: var(--wp--custom--color--error);
}

.in-stock::before {
	content: "●";
	margin-right: 0.5rem;
	font-size: 1.25em;
	line-height: 1;
	vertical-align: baseline;
	color: var(--wp--custom--color--success);
}

.available-on-backorder::before {
	content: "●";
	margin-right: 0.5rem;
	font-size: 1.25em;
	line-height: 1;
	vertical-align: baseline;
	color: var(--wp--custom--color--warning);
}

/* Single product - Price
========================================================================== */

.wc-block-grid__product-price {
	margin-top: var(--wp--preset--spacing--xs);
	line-height: normal;
	font-family: var(--wp--preset--font-family--paragraph);
	font-size: var(--wp--preset--font-size--m);
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

.wc-block-grid__product-price del {
	text-decoration: line-through;
}

.wc-block-grid__product-price ins {
	color: #dc3545;
	text-decoration: none;
}

/* Single product - Excerpt
========================================================================== */

.single-product .wp-block-post-excerpt {
	margin-top: 1em;
	margin-bottom: var(--wp--style--block-gap);
}

/* Single product - Quantity buttons
========================================================================== */

.woocommerce div.product .wc-block-add-to-cart-form form.cart div.quantity {
	margin-bottom: 0;
	margin-right: 0;
	max-width: max-content;
	border-radius: 0;
	/* border: 1px solid var(--wp--preset--color--neutral-2); */
	background-color: transparent;
}

div.add-to-cart-button-wrapper .quantity input.qty {
	color: var(--wp--preset--color--black);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--s) !important;
	background-color: transparent;
	padding: 0.5rem 0 !important;
	width: 42px;
}

div.add-to-cart-button-wrapper button.wc-block-components-quantity-selector__button {
	height: 100%;
	width: 42px;
}

div.add-to-cart-button-wrapper .quantity__button {
	min-width: 42px;
	opacity: 1;
	font-size: 1em;
	color: var(--wp--preset--color--black);
	padding: 0;
	height: 100%;
}

div.add-to-cart-button-wrapper .quantity__button:hover {
	opacity: 1;
}

div.add-to-cart-button-wrapper .quantity__button svg {
	transform: scale(1);
}

.quantity input::-webkit-outer-spin-button,
.quantity input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Single product - Article number & variations
========================================================================== */

.woocommerce-variation-sku {
	margin-bottom: 1em;
	font-size: var(--wp--preset--font-size--xs);
	font-style: italic;
	color: var(--wp--preset--color--neutral-1);
}

li.product .product-article-variations,
li.product .product-article-number {
	display: inline-block;
	margin-top: var(--wp--preset--spacing--xs);
	line-height: normal;
	font-family: var(--wp--preset--font-family--paragraph);
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 400;
	color: var(--wp--preset--color--neutral-1);
	font-style: italic;
}

table.variations {
	width: 100%;
}

table.variations tr {
	display: flex;
	flex-direction: column;
}

table.variations th {
	text-align: left;
}

table.variations tr:not(:last-child) select {
	margin-bottom: var(--wp--preset--spacing--s);
}

table.variations .reset_variations {
	display: none !important;
}

.single_variation_wrap {
	margin-top: var(--wp--style--block-gap);
}

/* Variation description, price */
.woocommerce-variation-price {
	margin-top: 1em;
	margin-bottom: var(--wp--preset--spacing--l);
}

.woocommerce-variation-price .woocommerce-Price-amount {
	color: initial;
	font-weight: 400;
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
}

.woocommerce-variation-price del {
	text-decoration: line-through;
}

/* Single product - Grouped product
========================================================================== */

.woocommerce-grouped-product-list.group_table {
	margin-bottom: var(--wp--style--block-gap);
	width: 100%;
}

tr.woocommerce-grouped-product-list-item {
	display: grid;
	align-items: center;
	grid-gap: var(--wp--preset--spacing--s);
	margin-bottom: var(--wp--preset--spacing--s);
	grid-template-columns: auto 1fr auto;
}

/*
tr.woocommerce-grouped-product-list-item label {
	margin: 0;
} */

/* .woocommerce-grouped-product-list-item .quantity {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	margin-bottom: 0;
	max-width: max-content;
	border-radius: 0;
	border: 0;
	background-color: transparent;
} */

div.add-to-cart-button-wrapper .quantity input.qty:focus {
	border: 1px solid var(--wp--preset--color--black) !important;
}

.woocommerce-grouped-product-list-item .stock {
	display: none;
}

form.grouped_form .add-to-cart-button-wrapper {
	grid-template-columns: minmax(0, 1fr);
	margin-top: var(--wp--style--block-gap);
}

.woocommerce-grouped-product-list-item__price {
	line-height: normal;
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

.woocommerce-grouped-product-list-item__price del {
	text-decoration: line-through;
}

.woocommerce-grouped-product-list-item__price ins {
	color: #dc3545;
	text-decoration: none;
}

/* Single product - Add to favorites
========================================================================== */

.add-to-cart-button-wrapper .add-favorite {
	aspect-ratio: 1 / 1;
	cursor: pointer;
	width: 40px;
	position: relative;
	border-radius: 0;
	height: 100%;
	background-color: var(--wp--preset--color--neutral-3);
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
}

/* Single product - Add to cart
========================================================================== */

a.added_to_cart.wc-forward {
	display: none;
}

.wp-block-add-to-cart-form.wc-block-add-to-cart-form {
	margin-bottom: var(--wp--style--block-gap);
}

.add-to-cart-button-wrapper {
	display: grid;
	grid-template-columns: auto 1fr auto;
	grid-gap: var(--wp--preset--spacing--s);
}

.add-to-cart-button-wrapper .quantity {
	grid-column: span 1;
	display: flex;
	margin: 0;
}

div.add-to-cart-button-wrapper .quantity input.qty,
.wc-block-add-to-cart-form .quantity .qty {
	margin-right: 0;
	color: var(--wp--preset--color--black);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--s);
	background-color: inherit;
	padding: 0.5rem 0 !important;
	width: 40px;
	max-width: 40px;
}

.add-to-cart-button-wrapper button {
	/* grid-column: 1 / 12; */
	margin-bottom: 0 !important;
	transition: all 150ms linear;
}

/* Single product - Featured image (no gallery)
========================================================================== */

.product-featured__img {
	border-radius: 0;
	overflow: hidden;
}

.product-featured__img img {
	aspect-ratio: var(--wp--custom--aspect-ratio--square);
	height: 100%;
	width: 100%;
	object-fit: cover;
}

/* Single product - Image gallery
========================================================================== */

/* Gallery image */
#product-image {
	margin-bottom: var(--wp--preset--spacing--s);
}

.product-gallery__img {
	border-radius: 0;
	overflow: hidden;
	border: 0;
	aspect-ratio: var(--wp--custom--aspect-ratio--square);
	height: 100%;
	width: 100%;
	cursor: zoom-in;
}

.product-gallery__img img {
	aspect-ratio: var(--wp--custom--aspect-ratio--square);
	height: 100%;
	width: 100%;
	object-fit: contain;
}

/* Gallery thumbs */
.product-gallery .splide__track--nav > .splide__list > .splide__slide {
	opacity: 0.25;
	border: 0;
}

.product-gallery .splide__track--nav > .splide__list > .splide__slide.is-active {
	opacity: 1;
	border: 0;
}
.product-gallery .splide__arrwo svg {
	width: 2em;
	height: 2em;
}

.product-gallery__thumb {
	margin-right: var(--wp--preset--spacing-s);
}

/* Popup gallery */
dialog[data-product-gallery] {
	border: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: 100%;
	padding-top: 4.5rem;
	padding: var(--wp--preset--spacing--l) var(--wp--preset--spacing--xl);
}

dialog[data-product-gallery] .popup-gallery__img {
	display: flex;
	justify-content: center;
	height: max-content;
	align-items: center;
}

dialog[data-product-gallery] .close-product-gallery {
	position: fixed;
	top: var(--wp--preset--spacing--s);
	right: -4px;
	transform: translateX(-50%);
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50px;
	border: 0;
	background-color: var(--wp--preset--color--white);
}

dialog[data-product-gallery] .splide__arrows {
	position: relative;
}

dialog[data-product-gallery] .splide__arrow {
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
}

dialog[data-product-gallery] .splide__arrow svg {
	height: 1em;
	width: 1em;
}

dialog[data-product-gallery] .splide__arrow--prev {
	left: var(--wp--preset--spacing--s);
}

dialog[data-product-gallery] .splide__arrow--next {
	right: var(--wp--preset--spacing--s);
}

dialog[data-product-gallery] ul.splide__pagination {
	position: fixed;
	bottom: var(--wp--preset--spacing--l);
	background: var(--wp--preset--color--white);
	max-width: max-content;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50px;
	padding: var(--wp--preset--spacing--xxs) var(--wp--preset--spacing--s);
	filter: drop-shadow(rgba(0, 0, 0, 0.1) 0px 2px 4px) drop-shadow(rgba(0, 0, 0, 0.05) 0px 2px 8px);
}

dialog[data-product-gallery] .splide__pagination__page,
dialog[data-product-gallery] .splide__pagination__page.is-active {
	background: var(--wp--preset--color--neutral-2);
	height: 12px;
	opacity: 1;
	width: 12px;
	transform: scale(1);
	transition: all 150ms linear;
}

dialog[data-product-gallery] .splide__pagination__page.is-active,
dialog[data-product-gallery] .splide__pagination__page:hover {
	background-color: var(--wp--preset--color--neutral-1);
}

@media (max-width: 768px) {
	dialog[data-product-gallery] {
		padding: 0;
	}

	dialog[data-product-gallery][open] {
		display: flex;
		align-items: center;
	}

	dialog[data-product-gallery] .splide__list {
		align-items: center;
	}

	dialog[data-product-gallery] .splide__slide img {
		width: 100%;
		height: auto;
	}
}

/* Single product - Product accordions
========================================================================== */

.product-accordions .accordion-item {
	padding: var(--wp--preset--spacing--s) 0;
	border-bottom: 1px solid var(--wp--preset--color--neutral-2);
	margin-bottom: 0;
}

.product-accordions .accordion-itemt:first-of-type {
	border-bottom: 1px solid var(--wp--preset--color--neutral-2);
}

/* Accordion heading */
.product-accordions .accordion-item__heading {
	font-family: inherit;
	font-size: var(--wp--preset--font-size--m);
	font-weight: normal;
	margin: 0;
	color: var(--wp--preset--color--black);
}

/* Accordion icon */
.product-accordions .accordion-item__icon {
	padding: 0;
	height: 100%;
	line-height: 0;
}

.product-accordions .accordion-item.is-open .accordion-item__icon img {
	transform: rotate(-180deg);
	transition: 150ms all linear;
}

/* Accordion content */
.product-accordions .accordion-content__inner {
	padding-bottom: var(--wp--preset--spacing--xs);
}

.product-accordions .accordion-item__content * {
	font-size: var(--wp--preset--font-size--s);
}

/* Accordion type - Table */
.table-column {
	width: 50%;
	padding: var(--wp--preset--spacing--xs);
	text-align: left;
}

.table-row {
	padding: var(--wp--preset--spacing--xxs) var(--wp--preset--spacing--xs);
	display: flex;
	justify-content: space-between;
	gap: var(--wp--style--block-gap);
}

.table-row:nth-of-type(odd) {
	background-color: var(--wp--preset--color--neutral-3);
}

/* Accordion type - List of links */
.list {
	padding-left: 0;
}

.list li {
	list-style: none;
}

.list li::marker {
	display: none;
}

.list li::before {
	content: url("../../images/icon-doc.svg");
	vertical-align: middle;
	margin-right: 0.5em;
}

.list a {
	text-decoration: none;
}

.list li a:hover {
	text-decoration: underline;
}

/* Single product - Product tabs
========================================================================== */

/* ==========================================================================
Checkout
========================================================================== */

.woocommerce-checkout .is-style-header-top {
	color: var(--wp--preset--color--black);
}

.woocommerce-checkout .is-style-header-top .grid {
	grid-template-columns: auto 1fr auto;
}

.woocommerce-checkout .is-style-header-top a {
	display: inline-flex;
	align-items: center;
	vertical-align: middle;
	gap: var(--wp--preset--spacing--xs);
}

.woocommerce-checkout:not(.woocommerce-order-received) main {
	margin-top: var(--wp--custom--header-height--top);
}

.woocommerce-checkout .wc-block-components-title.wc-block-components-title {
	font-size: var(--wp--preset--font-size--l);
}

.is-large .wp-block-woocommerce-checkout-order-summary-block {
	border-radius: 0;
	border-color: transparent;
}

.wc-block-components-order-summary.is-large {
	padding: 0;
}

.wc-block-components-checkout-step__description {
	font-size: initial;
}

.wp-block-woocommerce-checkout p:only-of-type {
	margin-bottom: var(--wp--preset--spacing--s);
}

.woocommerce-checkout:not(.woocommerce-order-received) h1 {
	margin-bottom: 0;
}

.wc-block-components-checkout-order-summary__content {
	border-top: 1px solid var(--wp--preset--color--neutral-2);
}

.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
	margin-top: 0;
	padding: var(--wp--preset--spacing--s) 0 !important;
}

.wp-block-woocommerce-checkout-order-summary-block
	.wc-block-components-checkout-order-summary__title
	.wc-block-components-checkout-order-summary__title-text {
	line-height: normal;
	margin: 0;
	padding: 0;
	font-weight: 400;
}

.woocommerce-checkout .wc-block-components-product-name {
	font-size: var(--wp--preset--font-size--xs);
	margin-bottom: 0;
}

.wp-block-woocommerce-checkout-order-summary-block .checkout-order-summary-block-fill {
	border-radius: 0;
	border-color: var(--wp--preset--color--neutral-2);
}

/* Checkout - Notice message
========================================================================== */
.woocommerce-checkout > .wc-block-components-notice-banner {
	margin: var(--wp--preset--spacing--l) auto;
}

/* Checkout - Submit order
========================================================================== */
.wp-block-woocommerce-checkout-actions-block
	.wc-block-checkout__actions_row
	.wc-block-components-checkout-place-order-button {
	padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--m);
	transition: all 150ms linear;
	width: max-content;
}
.wp-block-woocommerce-checkout-actions-block
	.wc-block-checkout__actions_row
	.wc-block-components-checkout-place-order-button:hover {
	opacity: 0.6;
}

.wc-block-components-checkout-place-order-button span {
	display: none !important;
}

form.wc-block-checkout__form {
	grid-template-columns: minmax(0, 1fr);
}

div[class^="wc-block-components-checkout-step"] {
	margin-bottom: var(--wp--preset--spacing--s);
}

@media screen and (max-width: 980px) and (min-width: 769px) {
	.wc-block-components-sidebar {
		padding-left: 0;
		width: 37%;
	}
	.wc-block-components-sidebar-layout .wc-block-components-main {
		width: 63%;
	}
}

@media (min-width: 769px) {
	.wp-block-woocommerce-checkout-totals-block {
		height: min-content;
		position: sticky;
		top: var(--wp--custom--header-height--total);
	}
}

/* Checkout - Sidebar
========================================================================== */
.wc-block-components-order-summary .wc-block-components-order-summary__button-text {
	font-size: var(--wp--preset--font-size--s);
	text-transform: none;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400 !important;
	color: var(--wp--preset--color--black);
}

.wc-block-components-order-summary-item__image img {
	border-radius: 0;
	border: 1px solid var(--wp--preset--color--neutral-2);
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity {
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	font-weight: 400;
	box-shadow: none;
	font-family: inherit;
	font-size: 0.75rem;
	border: none;
}

.wc-block-checkout__sidebar .wc-block-components-product-name {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--black);
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__individual-prices {
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--black);
}

.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-formatted-money-amount {
	font-weight: 400;
}

.wc-block-components-order-summary del {
	text-decoration: line-through;
}

.wc-block-components-order-summary ins {
	color: #dc3545;
	text-decoration: none;
}

.wc-block-components-order-summary .wc-block-components-product-metadata * {
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 400 !important;
}

.wc-block-components-order-summary .wc-block-components-product-price {
	font-weight: 400;
	font-size: var(--wp--preset--font-size--xs);
}

/* Checkout - Coupon field
========================================================================== */

.wc-block-components-totals-coupon__form {
	flex-direction: column;
	gap: 12px;
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__input {
	flex: 1;
}

/* Checkout - Order confirmation
========================================================================== */
.wc-block-order-confirmation-totals table,
.wc-block-order-confirmation-order-note,
.wc-block-order-confirmation-shipping-address,
.wc-block-order-confirmation-billing-address {
	border-radius: 0;
	border-color: var(--wp--preset--color--neutral-2);
}

.wc-block-order-confirmation-totals table td,
.wc-block-order-confirmation-totals table th {
	border-color: var(--wp--preset--color--neutral-2);
}

.wc-block-order-confirmation-totals table .wc-item-meta {
	font-size: var(--wp--preset--font-size--xs);
}

.wc-block-order-confirmation-totals table .wc-item-meta strong {
	font-weight: 400;
}

/* ==========================================================================
Cart
========================================================================== */

.is-large.wc-block-cart {
	margin-bottom: 0;
}

.wc-block-cart {
	display: grid;
	grid-template-columns: 8fr 4fr;
	grid-gap: calc(2 * var(--wp--style--block-gap));
}

.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main,
.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar {
	padding: 0;
	width: auto;
}

@media (max-width: 763px) {
	.wc-block-cart {
		grid-template-columns: minmax(0, 1fr);
		grid-gap: 2rem;
	}
}

/* Cart - Table layout
========================================================================== */

.is-large.wc-block-cart .wc-block-cart-items td.wc-block-cart-item__product {
	padding-left: var(--wp--preset--spacing--m);
}

/* Table head */
.wc-block-cart .wc-block-cart-items td.wc-block-cart-item__image {
	padding-left: 0;
}

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

/* Cart - Product image
========================================================================== */
.wc-block-cart-items__header span {
	font-size: var(--wp--preset--font-size--s);
	text-transform: none;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400 !important;
	color: var(--wp--preset--color--black);
}

.wc-block-cart .wc-block-cart-items th.wc-block-cart-items__header-image {
	width: 0;
}

.wc-block-cart-item__image img {
	border-radius: 0;
}

/* Cart - Product name
========================================================================== */
a.wc-block-components-product-name {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--black);
	margin-bottom: var(--wp--preset--spacing--xxs);
}

/* Cart - Product price
========================================================================== */
.wc-block-cart-item__prices span {
	line-height: normal;
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

.wc-block-cart-item__prices del {
	text-decoration: line-through;
}

.wc-block-cart-item__prices ins {
	color: #dc3545;
	text-decoration: none;
}

.wc-block-components-product-badge.wc-block-components-sale-badge {
	display: none;
}

/* Cart - Product meta data
========================================================================== */
.wc-block-components-product-details__name,
.wc-block-components-product-details__value {
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 400 !important;
}

.wc-block-components-product-metadata .wc-block-components-product-metadata__description > p,
.wc-block-components-product-metadata .wc-block-components-product-metadata__variation-data {
	margin: 0;
}

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

/* Cart - Sales badge
========================================================================== */
.wc-block-components-product-badge.wc-block-components-sale-badge {
	font-size: var(--wp--preset--font-size--xxs);
	font-weight: var(--wp--custom--font-weight--s);
	text-transform: unset;
	border: 1px solid var(--wp--preset--color--neutral-2);
	border-radius: 0;
	padding: 0.25em 0.75em;
	line-height: initial;
}

.wc-block-cart-item__quantity {
	display: inline-flex;
	gap: var(--wp--preset--spacing--xs);
	align-items: center;
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	padding: 0.5rem 0;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-quantity-selector {
	margin-bottom: 0;
}

/* Cart - Remove product from cart
========================================================================== */
.wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
	height: 40px;
	width: 40px;
	overflow: hidden;
	position: relative;
	font-size: 0;
	padding: 0;
	box-sizing: content-box;
}

.wc-block-cart-item__remove-link::before,
.wc-block-cart-item__remove-link::after {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.wc-block-cart-item__remove-link::before {
	content: "";
	background-color: var(--wp--preset--color--white);
	z-index: 1;
}

.wc-block-cart-item__remove-link::after {
	content: "";
	background: url("../../images/icon-trash-can.svg") no-repeat;
	background-position: center;
	z-index: 2;
	background-size: 32px;
}

/* Cart - Product totals
========================================================================== */
.is-large.wc-block-cart .wc-block-cart__totals-title {
	font-size: var(--wp--preset--font-size--s);
	text-transform: none;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

.is-large .wc-block-components-sidebar .wc-block-components-panel,
.is-large .wc-block-components-sidebar .wc-block-components-totals-coupon,
.is-large .wc-block-components-sidebar .wc-block-components-totals-item {
	padding: 0;
}

.wc-block-components-totals-item__value {
	font-weight: 400;
}

.wc-block-components-totals-wrapper .wc-block-components-totals-footer-item * {
	font-size: var(--wp--preset--font-size--s);
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	color: var(--wp--preset--color--black);
}

.is-large.wc-block-cart .wc-block-components-sidebar .wc-block-components-shipping-calculator,
.is-large.wc-block-cart
	.wc-block-components-sidebar
	.wc-block-components-shipping-rates-control__package:not(.wc-block-components-panel) {
	padding: 0;
}

.wc-block-cart__submit-container .wc-block-components-button,
.wc-block-cart__submit-container .wc-block-components-button:hover {
	transition: all 150ms linear;
}

.wc-blocks-components-select .wc-blocks-components-select__select:focus {
	box-shadow: none;
	outline: none;
}

/* Cart - Quantity button
========================================================================== */
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-quantity-selector {
	background-color: var(--wp--preset--color--white);
	width: max-content;
}

.wc-block-components-quantity-selector:after {
	border-radius: 0;
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	color: var(--wp--preset--color--black);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--s);
	border: 1px solid transparent;
	width: 42px;
	border-radius: 0;
	opacity: 1;
}

.wc-block-components-quantity-selector input:focus {
	box-shadow: none !important;
	border-color: var(--wp--preset--color--black);
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	color: var(--wp--preset--color--black);
	font-size: 1em;
	width: 40px;
	height: 40px;
	border-radius: 0;
}

/* Empty cart
========================================================================== */

.wc-block-cart__empty-cart__title.with-empty-cart-icon:before {
	background-color: currentColor;
	content: "";
	display: block;
	height: 5em;
	margin: 0 auto 1rem;
	mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzOCIgaGVpZ2h0PSIzOCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTkgMEM4LjUwNCAwIDAgOC41MDQgMCAxOXM4LjUwNCAxOSAxOSAxOSAxOS04LjUwNCAxOS0xOVMyOS40OTYgMCAxOSAwWm02LjEyOSAxMi44NzFhMi40NDkgMi40NDkgMCAwIDEgMi40NTIgMi40NTIgMi40NDkgMi40NDkgMCAwIDEtMi40NTIgMi40NTEgMi40NDkgMi40NDkgMCAwIDEtMi40NTItMi40NTEgMi40NDkgMi40NDkgMCAwIDEgMi40NTItMi40NTJaTTExLjY0NSAzMS4yNThjLTIuMDMgMC0zLjY3Ny0xLjYwOS0zLjY3Ny0zLjYgMC0xLjUzMyAyLjE4My00LjYyOCAzLjE4Ny01Ljk2MWEuNjEuNjEgMCAwIDEgLjk4IDBjMS4wMDQgMS4zMzMgMy4xODggNC40MjggMy4xODggNS45NiAwIDEuOTkyLTEuNjQ4IDMuNjAxLTMuNjc4IDMuNjAxWm0xLjIyNi0xMy40ODRhMi40NDkgMi40NDkgMCAwIDEtMi40NTItMi40NTEgMi40NDkgMi40NDkgMCAwIDEgMi40NTItMi40NTIgMi40NDkgMi40NDkgMCAwIDEgMi40NTIgMi40NTIgMi40NDkgMi40NDkgMCAwIDEtMi40NTIgMi40NTFabTEzLjA0IDExLjgxNEE4Ljk4OSA4Ljk4OSAwIDAgMCAxOSAyNi4zNTVjLTEuNjI0IDAtMS42MjQtMi40NTIgMC0yLjQ1MmExMS40IDExLjQgMCAwIDEgOC43ODggNC4xMjJjMS4wNTcgMS4yNTctLjg1OSAyLjc5Ni0xLjg3OCAxLjU2M1oiLz48L3N2Zz4=);
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: 3em;
	width: 3em;
}

/* ==========================================================================
Mini cart
========================================================================== */

.wc-block-components-drawer__screen-overlay {
	background-color: rgba(0, 0, 0, 0.3);
}

div.wc-block-cart-item__wrap .wc-block-components-product-name {
	text-decoration: none;
	line-height: 1.15 !important;
	margin-bottom: var(--wp--preset--spacing--xxs) !important;
}

.wc-block-cart-item__wrap .wc-block-components-quantity-selector {
	max-width: max-content;
}

.wc-block-cart-item__wrap .wc-block-components-product-details:last-of-type {
	margin-bottom: var(--wp--preset--spacing--s);
}

.wc-block-mini-cart__button:hover:not([disabled]) {
	opacity: 1;
	cursor: pointer;
}

.wc-block-mini-cart__items {
	padding-top: var(--wp--preset--spacing--m);
}

.wc-block-mini-cart__items .wc-block-cart-items__row {
	padding: var(--wp--preset--spacing--s) 0 !important;
}

.wc-block-mini-cart__items .wc-block-components-sale-badge {
	display: none !important;
}

.wc-block-mini-cart__footer:after {
	content: none;
}

.wp-block-woocommerce-mini-cart-title-items-counter-block {
	display: none;
}

.wc-block-mini-cart__footer-subtotal .wc-block-components-totals-item__label {
	font-weight: 400;
}

.wc-block-mini-cart__drawer .wc-block-components-product-metadata__description {
	display: none;
}

.wc-block-mini-cart__title {
	mask-image: unset;
	font-size: var(--wp--preset--font-size--l);
	font-family: var(--wp--preset--font-family--heading);
}

.wc-block-mini-cart__footer-actions .wc-block-components-button.wc-block-mini-cart__footer-cart {
	background-color: var(--wp--preset--color--neutral-3) !important;
	color: var(--wp--preset--color--black) !important;
}
.wc-block-mini-cart__footer-actions .wc-block-components-button.wc-block-mini-cart__footer-cart:hover {
	opacity: 0.6;
}

/* Mini cart - Empty cart */

.wc-block-components-button.wc-block-components-drawer__close {
	margin: -0.5em;
}

.wc-block-mini-cart__empty-cart-wrapper strong {
	font-weight: 400;
	font-size: var(--wp--preset--font-size--m);
}

.wc-block-mini-cart__empty-cart-wrapper p {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--l);
	margin-bottom: var(--wp--preset--spacing--m);
}

/* ==========================================================================
My account
========================================================================== */

/* My account – Login form
========================================================================== */
.woocommerce-form__label.woocommerce-form-login__rememberme {
	gap: 0.75em;
	align-items: center;
	display: flex;
}

.woocommerce-account:has(.is-style-woo-login-form) {
	background-color: var(--wp--preset--color--neutral-3);
}

.woocommerce-account:has(.is-style-woo-login-form) .is-style-woo-login-form .qt-container {
	padding: var(--wp--preset--spacing--m);
	background-color: var(--wp--preset--color--white);
}

.woocommerce-form-login p.form-row:has(button) > .button {
	margin-top: var(--wp--preset--spacing--s);
}

.woocommerce-ResetPassword p.form-row:has(button) > .button {
	margin-top: var(--wp--preset--spacing--xs);
}

/* My account – Layout
========================================================================== */
.woocommerce-account .entry-content > .woocommerce:not(:has(.is-style-woo-login-form)) {
	display: grid;
	grid-template-columns: 3fr 9fr;
	grid-gap: calc(var(--wp--style--block-gap) * 2);
}

.account_display_name_description,
.woocommerce-account .woocommerce-form-row input + :is(span, div) {
	display: inline-block;
	font-size: var(--wp--preset--font-size--xs);
	margin-top: var(--wp--preset--spacing--xxs);
	line-height: normal;
}

.woocommerce-MyAccount-content legend {
	font-weight: 700;
	margin-bottom: var(--wp--preset--spacing--s);
	font-size: var(--wp--preset--font-size--l);
}

.woocommerce-account p > .button {
	width: 100%;
}

/* .woocommerce-account p > .button {
	margin-top: var(--wp--preset--spacing--m);
} */

@media (max-width: 980px) {
	.woocommerce-account .entry-content > .woocommerce:not(:has(.is-style-woo-login-form)) {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* My account – Sidebar
========================================================================== */
.woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-MyAccount-navigation ul li {
	transition: background-color 0.2s ease;
	cursor: pointer;
	border-bottom: 1px solid var(--wp--preset--color--neutral-2);
	margin: 0;
	padding: 0;
}

.woocommerce-MyAccount-navigation li.is-active,
.woocommerce-MyAccount-navigation li:hover {
	background-color: var(--wp--preset--color--neutral-3);
}

.woocommerce-MyAccount-navigation li a {
	padding: 0.75em 1em;
	display: block;
	transition: color 0.2s ease;
	text-decoration: none;
	color: var(--wp--preset--color--black);
	opacity: 1;
}

.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li:hover a {
	color: inherit;
}

@media (max-width: 980px) {
	.woocommerce-account .entry-content nav.woocommerce-MyAccount-navigation {
		grid-row: 2;
	}
}

/* My account – Customer orders
========================================================================== */

.account-orders-table {
	width: 100%;
	text-align: left;
}

.woocommerce-orders-table__cell .button {
	background-color: transparent;
	padding: 0;
	color: var(--wp--preset--color--neutral-1);
	font-size: inherit;
}
.woocommerce-orders-table__cell .button:hover {
	text-decoration: underline;
}

.woocommerce-table--order-details {
	width: 100%;
	text-align: left;
}

section.woocommerce-order-details {
	margin-top: var(--wp--preset--spacing--l);
	width: 100%;
}

/* My account – Customer account details
========================================================================== */

.woocommerce-MyAccount-content fieldset {
	border: none;
	margin: 0;
	margin-top: var(--wp--preset--spacing--l);
}

.woocommerce-Addresses,
.woocommerce-columns.col2-set {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: var(--wp--preset--spacing--l);
	grid-gap: var(--wp--style--block-gap);
}

.woocommerce-Address-title h2,
form:has(.woocommerce-address-fields) h2 {
	font-size: var(--wp--preset--font-size--l);
}

.woocommerce-Addresses .edit {
	display: inline-block;
	margin-bottom: var(--wp--preset--spacing--s);
}

.woocommerce-Addresses .edit:hover {
	text-decoration: underline;
}

.woocommerce-page table.shop_table td,
.woocommerce-page table.shop_table th {
	padding: 0 0 var(--wp--preset--spacing--xs) !important;
}

@media (max-width: 768px) {
	.woocommerce-Addresses,
	.woocommerce-columns.col2-set {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
Styles for pages, sections, blocks and others.
========================================================================== */

/* Block: Product category selector
========================================================================== */

.product-category-selector .qt-section__inner {
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	justify-content: center;
}

.category-item {
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
	text-align: center;
	padding: var(--wp--preset--spacing--s);
	cursor: pointer;
}

.category-item .wp-block-image + .wp-block-heading {
	margin-top: var(--wp--preset--spacing--m);
}

.category-item img {
	transition: all 150ms linear;
}

.category-item:hover img {
	transform: scale(1.075);
}

@media (max-width: 515px) {
	.category-item {
		align-items: center;
		border: 1px solid var(--wp--preset--color--neutral-2);
		border-radius: 0;
		box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.05);
	}

	.category-item .wp-block-image + .wp-block-heading {
		margin-top: var(--wp--preset--spacing--s);
	}
}

/* Block: Product selector slider
========================================================================== */

.product-selector-slider *::-webkit-scrollbar {
	display: none;
}

.product-selector-slider {
	padding-right: 0;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.product-selector-slider .qt-section__inner {
	display: grid;
	grid-template-columns: 1fr var(--wp--custom--maxwidth--default) 1fr;
	grid-gap: var(--wp--style--block-gap) 0;
	max-width: none;
}

.product-selector-slider .qt-container {
	grid-column: 2 / 3;
	left: calc(-1 * var(--wp--preset--spacing--s));
	position: relative;
}

.product-selector-slider .splide__list {
	display: flex;
	gap: 0;
}

.product-selector-slider .product-slider {
	grid-column: 2 / -1;
	grid-gap: 0;
	left: calc(-1 * var(--wp--preset--spacing--s));
	width: calc(100% + var(--wp--preset--spacing--s));
	position: relative;
}

.product-selector-slider .splide__slide {
	max-width: 285px;
}

@media (max-width: 1280px) {
	.product-selector-slider .qt-section__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.product-selector-slider .qt-container,
	.product-selector-slider .product-slider {
		grid-column: initial;
		left: initial;
		width: auto;
	}
}

@media (max-width: 1240px) {
	.product-selector-slider .qt-section__inner {
		grid-template-columns: minmax(0, 1fr);
	}

	.product-selector-slider__heading,
	.product-selector-slider__buttons {
		padding-right: var(--wp--preset--spacing--l);
	}
}

.product-selector-slider__heading {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.product-selector-slider__heading > * {
	margin: 0;
}

.product-selector-slider__buttons {
	overflow-x: hidden;
}

.product-selector-slider__buttons .wp-block-buttons {
	margin: 0;
	display: inline-flex;
	flex-wrap: nowrap;
	overflow: auto;
	white-space: nowrap;
	margin-right: calc(var(--wp--preset--spacing--l) * -1);
	-ms-overflow-style: none;
	scrollbar-width: none;
	padding-right: var(--wp--preset--spacing--l);
}

@media (max-width: 768px) {
	.product-selector-slider__heading {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* Section: Additional content
========================================================================== */

/* Plain text */
.additional-content__plain-text .qt-section__inner {
	column-gap: var(--wp--style--block-gap);
	break-inside: avoid;
}

.column-count-1 {
	column-count: 1;
}
.column-count-2 {
	column-count: 2;
}
.column-count-3 {
	column-count: 3;
}

@media (max-width: 980px) {
	.column-count-3 {
		column-count: 2;
	}
}

@media (max-width: 768px) {
	.column-count-2,
	.column-count-3 {
		column-count: 1;
	}
}

/* Text left, image right */
@media (max-width: 768px) {
	.additional-content__image-right .is-style-image-column {
		grid-row: -1;
	}
}

/* Image left, text right */
@media (max-width: 768px) {
	.additional-content__image-left .is-style-image-column {
		grid-row: 1;
	}
}

/* Button - Back to previous
========================================================================== */

.button__back-to-prev {
	display: inline-flex;
}

.button__back-to-prev .wp-block-button__link {
	border-radius: 0;
	padding: 0;
	line-height: 0;
}

.button__back-to-prev .wp-block-button__link svg {
	transform: rotate(0deg) scale(0.75);
}

.button__back-to-prev .wp-block-button__link path {
	fill: var(--wp--preset--color--white);
}
