/**
 * 3aART WooCommerce Branding
 * Brand system: dark green, burgundy, warm white, Quicksand + Work Sans.
 */

:root {
	--aart-wc-primary: #001d18;
	--aart-wc-secondary: #f4f4f2;
	--aart-wc-text: #252525;
	--aart-wc-accent: #8f000a;
	--aart-wc-accent-hover: #680007;
	--aart-wc-gold: #b68a4e;
	--aart-wc-surface: #ffffff;
	--aart-wc-muted: #696966;
	--aart-wc-border: #d8d7d1;
	--aart-wc-border-strong: #b8b7b1;
	--aart-wc-focus: rgba(143, 0, 10, 0.2);
	--aart-wc-shadow: 0 12px 32px rgba(0, 29, 24, 0.08);
	--aart-wc-space-1: 8px;
	--aart-wc-space-2: 12px;
	--aart-wc-space-3: 16px;
	--aart-wc-space-4: 24px;
	--aart-wc-space-5: 32px;
	--aart-wc-space-6: 48px;
}

/* Foundation ------------------------------------------------------------- */

.woocommerce,
.woocommerce-page,
.widget_shopping_cart,
.woocommerce-mini-cart,
.wc-block-cart,
.wc-block-checkout,
.wc-block-components-drawer,
.wc-block-components-notice-banner {
	color: var(--aart-wc-text);
	font-family: "Work Sans", sans-serif;
	font-size: 16px;
	line-height: 1.55;
}

/* Elementor's WooCommerce widgets set Roboto directly on their wrappers. */
.elementor-widget-woocommerce-cart .woocommerce,
.elementor-widget-woocommerce-cart .cart_totals,
.elementor-widget-woocommerce-checkout-page .woocommerce,
.elementor-widget-woocommerce-checkout-page form.checkout,
.elementor-widget-woocommerce-my-account .woocommerce,
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-navigation,
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content {
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
}

.woocommerce *,
.woocommerce-page .woocommerce *,
.widget_shopping_cart *,
.wc-block-cart *,
.wc-block-checkout * {
	box-sizing: border-box;
}

.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.woocommerce h5,
.woocommerce h6,
.woocommerce-page h1,
.woocommerce-page h2,
.woocommerce-page h3,
.woocommerce-page h4,
.woocommerce-page h5,
.woocommerce-page h6,
.wc-block-cart h1,
.wc-block-cart h2,
.wc-block-cart h3,
.wc-block-checkout h1,
.wc-block-checkout h2,
.wc-block-checkout h3 {
	color: var(--aart-wc-primary);
	font-family: "Quicksand", sans-serif;
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.woocommerce h2,
.woocommerce h3,
.woocommerce-page h2,
.woocommerce-page h3 {
	font-size: clamp(22px, 2vw, 28px);
	margin-block: 0 var(--aart-wc-space-4);
}

.woocommerce p,
.woocommerce li,
.woocommerce td,
.woocommerce address,
.woocommerce-page p,
.woocommerce-page li,
.woocommerce-page td {
	font-family: "Work Sans", sans-serif;
}

.woocommerce a,
.woocommerce-page a,
.widget_shopping_cart a,
.wc-block-cart a,
.wc-block-checkout a {
	color: var(--aart-wc-accent);
	text-decoration-color: transparent;
	text-underline-offset: 0.18em;
	transition: color 180ms ease, text-decoration-color 180ms ease;
}

.woocommerce a:hover,
.woocommerce-page a:hover,
.widget_shopping_cart a:hover,
.wc-block-cart a:hover,
.wc-block-checkout a:hover {
	color: var(--aart-wc-primary);
	text-decoration-color: currentColor;
}

.woocommerce a:focus-visible,
.woocommerce button:focus-visible,
.woocommerce input:focus-visible,
.woocommerce select:focus-visible,
.woocommerce textarea:focus-visible,
.wc-block-cart a:focus-visible,
.wc-block-cart button:focus-visible,
.wc-block-checkout a:focus-visible,
.wc-block-checkout button:focus-visible,
.wc-block-checkout input:focus-visible {
	outline: 3px solid var(--aart-wc-focus) !important;
	outline-offset: 3px;
}

/* Buttons ---------------------------------------------------------------- */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.widget_shopping_cart a.button,
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
	align-items: center;
	background: var(--aart-wc-accent) !important;
	border: 1px solid var(--aart-wc-accent) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--aart-wc-secondary) !important;
	cursor: pointer;
	display: inline-flex;
	font-family: "Quicksand", sans-serif !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	justify-content: center;
	letter-spacing: 0.01em;
	line-height: 1.2 !important;
	min-height: 46px;
	padding: 13px 24px !important;
	text-align: center;
	text-decoration: none !important;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input.button:hover,
.widget_shopping_cart a.button:hover,
.wc-block-components-button:not(.is-link):hover {
	background: var(--aart-wc-primary) !important;
	border-color: var(--aart-wc-primary) !important;
	color: var(--aart-wc-secondary) !important;
	transform: translateY(-1px);
}

.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active,
.wc-block-components-button:not(.is-link):active {
	transform: translateY(0);
}

.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce input.button:disabled,
.wc-block-components-button:disabled {
	background: var(--aart-wc-muted) !important;
	border-color: var(--aart-wc-muted) !important;
	color: #fff !important;
	cursor: not-allowed;
	opacity: 0.55;
	transform: none;
}

/* Forms ------------------------------------------------------------------ */

.woocommerce form .form-row label,
.woocommerce-page form .form-row label,
.wc-block-components-text-input label,
.wc-block-components-combobox .wc-block-components-combobox-control label {
	color: var(--aart-wc-text);
	font-family: "Work Sans", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 8px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form select,
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea,
.woocommerce-page form select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-textarea {
	background: var(--aart-wc-surface) !important;
	border: 1px solid var(--aart-wc-border-strong) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.3 !important;
	min-height: 48px;
	padding: 13px 14px !important;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.woocommerce form .form-row textarea,
.woocommerce-page form .form-row textarea,
.wc-block-components-textarea {
	min-height: 120px;
	resize: vertical;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form select:focus,
.woocommerce input:focus,
.woocommerce-page form .form-row input.input-text:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single,
.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input:focus {
	border-color: var(--aart-wc-accent) !important;
	box-shadow: 0 0 0 3px var(--aart-wc-focus) !important;
	outline: 0 !important;
}

.woocommerce input::placeholder,
.woocommerce textarea::placeholder,
.woocommerce-page input::placeholder,
.woocommerce-page textarea::placeholder {
	color: var(--aart-wc-muted) !important;
	opacity: 0.8;
}

.select2-container .select2-selection--single .select2-selection__rendered {
	color: var(--aart-wc-text) !important;
	line-height: 46px !important;
	padding-left: 14px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 46px !important;
	right: 8px !important;
}

.select2-dropdown {
	border: 1px solid var(--aart-wc-border-strong) !important;
	border-radius: 0 !important;
	font-family: "Work Sans", sans-serif;
}

.select2-results__option--highlighted[aria-selected],
.select2-results__option--highlighted[data-selected] {
	background: var(--aart-wc-primary) !important;
	color: #fff !important;
}

.woocommerce form .form-row {
	margin: 0 0 20px;
	padding: 0;
}

.woocommerce form .form-row .required {
	color: var(--aart-wc-accent);
}

.woocommerce input[type="checkbox"],
.woocommerce input[type="radio"],
.wc-block-components-checkbox .wc-block-components-checkbox__input {
	accent-color: var(--aart-wc-accent);
}

/* Notices ---------------------------------------------------------------- */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
	background: var(--aart-wc-secondary) !important;
	border: 0 !important;
	border-left: 4px solid var(--aart-wc-primary) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.5 !important;
	margin: 0 0 var(--aart-wc-space-4) !important;
	padding: 18px 20px 18px 52px !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	color: var(--aart-wc-primary) !important;
	left: 20px !important;
	top: 18px !important;
}

.woocommerce-error,
.wc-block-components-notice-banner.is-error {
	border-left-color: var(--aart-wc-accent) !important;
}

.woocommerce-error::before {
	color: var(--aart-wc-accent) !important;
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
	font-weight: 600;
}

/* Tables ----------------------------------------------------------------- */

.woocommerce table.shop_table,
.woocommerce-page table.shop_table,
.wc-block-cart-items,
.wc-block-components-totals-wrapper {
	border: 1px solid var(--aart-wc-border) !important;
	border-collapse: collapse !important;
	border-radius: 0 !important;
	color: var(--aart-wc-text);
	font-family: "Work Sans", sans-serif !important;
}

.woocommerce table.shop_table th,
.woocommerce-page table.shop_table th,
.wc-block-cart-items th {
	background: var(--aart-wc-secondary);
	color: var(--aart-wc-primary);
	font-family: "Quicksand", sans-serif !important;
	font-size: 14px;
	font-weight: 600 !important;
	letter-spacing: 0.02em;
	padding: 16px !important;
	text-transform: none;
}

.woocommerce table.shop_table td,
.woocommerce-page table.shop_table td,
.wc-block-cart-items td {
	border-top: 1px solid var(--aart-wc-border) !important;
	padding: 18px 16px !important;
	vertical-align: middle;
}

.woocommerce table.shop_table tbody tr:hover td {
	background-color: rgba(244, 244, 242, 0.5);
}

/* Product archive and single products ----------------------------------- */

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	color: var(--aart-wc-muted);
	font-family: "Work Sans", sans-serif;
	margin-bottom: var(--aart-wc-space-5);
}

.woocommerce .woocommerce-ordering select {
	min-width: 230px;
}

.woocommerce ul.products {
	margin-bottom: var(--aart-wc-space-6);
}

.woocommerce ul.products li.product {
	margin-bottom: var(--aart-wc-space-6);
}

.woocommerce ul.products li.product a img {
	margin-bottom: 18px;
	transition: opacity 200ms ease, transform 240ms ease;
}

.woocommerce ul.products li.product a:hover img {
	opacity: 0.92;
	transform: translateY(-3px);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
	color: var(--aart-wc-primary) !important;
	font-family: "Quicksand", sans-serif !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.35;
	margin: 0 0 8px !important;
	padding: 0 !important;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.wc-block-components-product-price {
	color: var(--aart-wc-accent) !important;
	font-family: "Quicksand", sans-serif !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	margin-bottom: 16px !important;
}

.woocommerce span.onsale {
	background: var(--aart-wc-accent) !important;
	border-radius: 0 !important;
	color: var(--aart-wc-secondary) !important;
	font-family: "Quicksand", sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	min-height: auto !important;
	min-width: auto !important;
	padding: 9px 12px !important;
}

.woocommerce div.product .product_title {
	color: var(--aart-wc-primary);
	font-family: "Quicksand", sans-serif;
	font-weight: 600;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 28px 0;
}

.woocommerce .quantity .qty {
	border: 1px solid var(--aart-wc-border-strong) !important;
	border-radius: 0 !important;
	font-family: "Work Sans", sans-serif !important;
	min-height: 46px;
	padding: 8px !important;
	width: 76px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid var(--aart-wc-border);
	margin: 0 0 var(--aart-wc-space-4);
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: transparent;
	border: 0;
	border-bottom: 2px solid transparent;
	border-radius: 0;
	margin: 0 24px 0 0;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-bottom-color: var(--aart-wc-accent);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	color: var(--aart-wc-text);
	font-family: "Quicksand", sans-serif;
	font-weight: 600;
	padding: 14px 0;
}

/* Empty cart ------------------------------------------------------------- */

body.woocommerce-cart .elementor-widget-woocommerce-cart > .elementor-widget-container > .woocommerce + .woocommerce {
	display: none !important;
}

.woocommerce .wc-empty-cart-message .cart-empty {
	margin-bottom: var(--aart-wc-space-4) !important;
}

.woocommerce .return-to-shop {
	margin: 0;
}

/* Cart ------------------------------------------------------------------- */

.woocommerce-cart .woocommerce-cart-form,
.elementor-widget-woocommerce-cart .woocommerce-cart-form {
	font-family: "Work Sans", sans-serif;
}

.woocommerce-cart table.cart img,
.elementor-widget-woocommerce-cart table.cart img {
	box-shadow: none;
	width: 88px;
}

.woocommerce-cart table.cart .product-name a,
.elementor-widget-woocommerce-cart table.cart .product-name a {
	color: var(--aart-wc-primary);
	font-family: "Quicksand", sans-serif;
	font-weight: 600;
}

.woocommerce a.remove,
.woocommerce-page a.remove,
.wc-block-cart-item__remove-link {
	align-items: center;
	background: transparent !important;
	border: 1px solid var(--aart-wc-border) !important;
	border-radius: 0 !important;
	color: var(--aart-wc-accent) !important;
	display: inline-flex !important;
	font-family: "Work Sans", sans-serif !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	height: 34px !important;
	justify-content: center;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
	width: 34px !important;
}

.woocommerce a.remove:hover,
.woocommerce-page a.remove:hover,
.wc-block-cart-item__remove-link:hover {
	background: var(--aart-wc-accent) !important;
	border-color: var(--aart-wc-accent) !important;
	color: #fff !important;
}

.woocommerce-cart table.cart td.actions,
.elementor-widget-woocommerce-cart table.cart td.actions {
	background: var(--aart-wc-secondary);
	padding: 18px !important;
}

.woocommerce-cart table.cart td.actions .coupon,
.elementor-widget-woocommerce-cart table.cart td.actions .coupon {
	display: flex;
	gap: 10px;
}

.woocommerce-cart table.cart td.actions .coupon .input-text,
.elementor-widget-woocommerce-cart table.cart td.actions .coupon .input-text {
	background: var(--aart-wc-surface) !important;
	border: 1px solid var(--aart-wc-border-strong) !important;
	border-radius: 0 !important;
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
	font-size: 16px !important;
	min-height: 46px;
	padding: 12px 14px !important;
	width: 200px !important;
}

.woocommerce-cart .cart-collaterals,
.elementor-widget-woocommerce-cart .cart-collaterals {
	margin-top: var(--aart-wc-space-5);
}

.woocommerce-cart .cart-collaterals .cart_totals,
.elementor-widget-woocommerce-cart .cart-collaterals .cart_totals {
	background: var(--aart-wc-secondary);
	border: 0;
	padding: 28px;
}

.woocommerce-cart .cart-collaterals .cart_totals h2,
.elementor-widget-woocommerce-cart .cart-collaterals .cart_totals h2 {
	color: var(--aart-wc-primary) !important;
	font-family: "Quicksand", sans-serif !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	margin: 0 0 20px !important;
}

.woocommerce-cart .cart-collaterals .cart_totals table,
.elementor-widget-woocommerce-cart .cart-collaterals .cart_totals table {
	background: transparent;
	border: 0 !important;
	margin: 0 0 22px;
}

.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table td,
.elementor-widget-woocommerce-cart .cart-collaterals .cart_totals table th,
.elementor-widget-woocommerce-cart .cart-collaterals .cart_totals table td {
	background: transparent;
	border-top: 1px solid var(--aart-wc-border) !important;
}

.woocommerce-cart .wc-proceed-to-checkout,
.elementor-widget-woocommerce-cart .wc-proceed-to-checkout {
	padding: 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.elementor-widget-woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	margin: 0;
	width: 100%;
}

/* Checkout --------------------------------------------------------------- */

.woocommerce-checkout form.checkout,
.elementor-widget-woocommerce-checkout-page form.checkout {
	color: var(--aart-wc-text);
	font-family: "Work Sans", sans-serif !important;
}

.woocommerce-checkout form.checkout h3,
.elementor-widget-woocommerce-checkout-page form.checkout h3 {
	color: var(--aart-wc-primary) !important;
	font-family: "Quicksand", sans-serif !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 1.3;
	margin: 0 0 24px !important;
}

.woocommerce-checkout #order_review,
.woocommerce-checkout-review-order {
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table {
	border: 1px solid var(--aart-wc-border) !important;
	border-radius: 0 !important;
	margin: 0 0 24px !important;
}

.woocommerce-checkout #payment {
	background: var(--aart-wc-secondary) !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
	padding: 28px !important;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid var(--aart-wc-border) !important;
	padding: 0 0 20px !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
	margin: 0 0 12px;
}

.woocommerce-checkout #payment ul.payment_methods li label {
	color: var(--aart-wc-text);
	font-family: "Quicksand", sans-serif;
	font-weight: 600;
}

.woocommerce-checkout #payment div.payment_box {
	background: #fff !important;
	border-radius: 0 !important;
	color: var(--aart-wc-text) !important;
	font-family: "Work Sans", sans-serif !important;
	margin: 12px 0 18px !important;
	padding: 16px !important;
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: #fff !important;
}

.woocommerce-checkout #payment .place-order {
	margin: 0;
	padding: 20px 0 0 !important;
}

.woocommerce-checkout #place_order {
	float: none !important;
	margin-top: 18px;
	width: 100%;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	background: var(--aart-wc-secondary);
	border: 0 !important;
	border-radius: 0 !important;
	margin: 0 0 var(--aart-wc-space-5) !important;
	padding: 24px !important;
}

/* My account ------------------------------------------------------------- */

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	color: var(--aart-wc-text);
	font-family: "Work Sans", sans-serif !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	padding-right: 28px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid var(--aart-wc-border);
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	background: var(--aart-wc-secondary) !important;
	color: var(--aart-wc-primary) !important;
	display: block;
	font-family: "Quicksand", sans-serif !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	padding: 15px 18px;
	text-decoration: none;
	transition: background-color 160ms ease, color 160ms ease, padding-left 160ms ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	background: #e8e6e1 !important;
	color: var(--aart-wc-accent) !important;
	padding-left: 22px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--aart-wc-primary) !important;
	color: var(--aart-wc-secondary) !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
	border-left: 1px solid var(--aart-wc-border);
	min-height: 320px;
	padding: 4px 0 24px 36px;
}

.woocommerce-account .woocommerce-MyAccount-content > :first-child {
	margin-top: 0;
}

.woocommerce-account address {
	border: 1px solid var(--aart-wc-border) !important;
	border-radius: 0 !important;
	font-style: normal;
	padding: 20px !important;
}

/* Pagination and breadcrumbs -------------------------------------------- */

.woocommerce nav.woocommerce-pagination ul {
	border: 0;
	display: flex;
	gap: 6px;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	align-items: center;
	border: 1px solid var(--aart-wc-border);
	color: var(--aart-wc-primary);
	display: flex;
	font-family: "Quicksand", sans-serif;
	height: 42px;
	justify-content: center;
	min-width: 42px;
	padding: 8px;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
	background: var(--aart-wc-primary);
	border-color: var(--aart-wc-primary);
	color: #fff;
}

.woocommerce .woocommerce-breadcrumb {
	color: var(--aart-wc-muted);
	font-family: "Work Sans", sans-serif;
	font-size: 14px;
	margin-bottom: 28px;
}

/* Mini cart and WooCommerce blocks -------------------------------------- */

.widget_shopping_cart .woocommerce-mini-cart__total,
.woocommerce-mini-cart__total {
	border-top: 1px solid var(--aart-wc-border) !important;
	color: var(--aart-wc-primary);
	font-family: "Quicksand", sans-serif;
	font-weight: 600;
	padding: 16px 0 !important;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons {
	display: grid;
	gap: 10px;
	grid-template-columns: 1fr 1fr;
}

.widget_shopping_cart .woocommerce-mini-cart__buttons a {
	margin: 0 !important;
}

.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar-layout .wc-block-components-sidebar {
	box-sizing: border-box;
}

.wc-block-components-sidebar {
	background: var(--aart-wc-secondary);
	padding: 28px !important;
}

.wc-block-components-totals-wrapper {
	border-width: 1px 0 0 !important;
}

/* Tablet ----------------------------------------------------------------- */

@media (max-width: 1024px) {
	.aart-wc-branding .elementor-widget-woocommerce-cart > .elementor-widget-container,
	.aart-wc-branding .elementor-widget-woocommerce-checkout-page > .elementor-widget-container,
	.aart-wc-branding .elementor-widget-woocommerce-my-account > .elementor-widget-container {
		padding-inline: 24px !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		padding-right: 20px;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		padding-left: 24px;
	}

	.woocommerce-checkout #payment {
		padding: 22px !important;
	}
}

/* Mobile ----------------------------------------------------------------- */

@media (max-width: 767px) {
	.woocommerce,
	.woocommerce-page,
	.wc-block-cart,
	.wc-block-checkout {
		font-size: 15px;
	}

	.aart-wc-branding .elementor-widget-woocommerce-cart > .elementor-widget-container,
	.aart-wc-branding .elementor-widget-woocommerce-checkout-page > .elementor-widget-container,
	.aart-wc-branding .elementor-widget-woocommerce-my-account > .elementor-widget-container {
		padding: 32px 16px !important;
	}

	.woocommerce h2,
	.woocommerce h3,
	.woocommerce-page h2,
	.woocommerce-page h3,
	.woocommerce-checkout form.checkout h3 {
		font-size: 22px !important;
		margin-bottom: 18px !important;
	}

	.woocommerce-message,
	.woocommerce-info,
	.woocommerce-error,
	.wc-block-components-notice-banner {
		font-size: 15px !important;
		padding: 16px 16px 16px 44px !important;
	}

	.woocommerce-message::before,
	.woocommerce-info::before,
	.woocommerce-error::before {
		left: 16px !important;
		top: 16px !important;
	}

	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.woocommerce-page a.button,
	.woocommerce-page button.button,
	.woocommerce-page input.button,
	.wc-block-components-button:not(.is-link) {
		min-height: 48px;
	}

	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering {
		float: none;
		margin: 0 0 16px;
		width: 100%;
	}

	.woocommerce .woocommerce-ordering select {
		width: 100%;
	}

	.woocommerce ul.products[class*="columns-"] li.product,
	.woocommerce-page ul.products[class*="columns-"] li.product {
		margin-bottom: 36px;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product h2,
	.woocommerce ul.products li.product h3 {
		font-size: 16px !important;
	}

	.woocommerce-cart table.cart td.actions .coupon,
	.elementor-widget-woocommerce-cart table.cart td.actions .coupon {
		display: grid;
		gap: 10px;
		grid-template-columns: 1fr;
		margin-bottom: 10px;
		width: 100%;
	}

	.woocommerce-cart table.cart td.actions .coupon .input-text,
	.elementor-widget-woocommerce-cart table.cart td.actions .coupon .input-text,
	.woocommerce-cart table.cart td.actions .coupon .button,
	.elementor-widget-woocommerce-cart table.cart td.actions .coupon .button,
	.woocommerce-cart table.cart td.actions > .button,
	.elementor-widget-woocommerce-cart table.cart td.actions > .button {
		float: none !important;
		width: 100% !important;
	}

	.woocommerce-cart .cart-collaterals .cart_totals,
	.elementor-widget-woocommerce-cart .cart-collaterals .cart_totals {
		float: none !important;
		padding: 22px 18px;
		width: 100% !important;
	}

	.woocommerce-cart table.cart img,
	.elementor-widget-woocommerce-cart table.cart img {
		width: 72px;
	}

	.woocommerce table.shop_table_responsive tr td,
	.woocommerce-page table.shop_table_responsive tr td {
		min-height: 48px;
		padding: 13px 12px !important;
	}

	.woocommerce table.shop_table_responsive tr td::before,
	.woocommerce-page table.shop_table_responsive tr td::before {
		color: var(--aart-wc-primary);
		font-family: "Quicksand", sans-serif;
		font-weight: 600;
	}

	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2,
	.woocommerce-checkout #order_review,
	.woocommerce-checkout #order_review_heading {
		float: none !important;
		width: 100% !important;
	}

	.woocommerce-checkout #order_review_heading {
		margin-top: 32px !important;
	}

	.woocommerce-checkout #payment {
		padding: 20px 16px !important;
	}

	.woocommerce-checkout #payment ul.payment_methods {
		padding-bottom: 14px !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none !important;
		width: 100% !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: 28px;
		padding: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		border-left: 0;
		border-top: 1px solid var(--aart-wc-border);
		min-height: 0;
		padding: 28px 0 0;
	}

	.widget_shopping_cart .woocommerce-mini-cart__buttons {
		grid-template-columns: 1fr;
	}

	.wc-block-components-sidebar-layout {
		display: block !important;
	}

	.wc-block-components-sidebar-layout .wc-block-components-main,
	.wc-block-components-sidebar-layout .wc-block-components-sidebar {
		margin: 0 0 24px !important;
		width: 100% !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce *,
	.woocommerce-page *,
	.wc-block-cart *,
	.wc-block-checkout * {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* Cart: gleiche Innenabstände, Produktbilder, Entfernen rechts, einheitliche Buttons */
body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table.e-cart-section {
    padding: 30px !important;
}

body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart {
    width: 100% !important;
    margin: 0 !important;
}

body.aart-wc-branding.woocommerce-cart table.cart .product-thumbnail {
    visibility: visible !important;
}

body.aart-wc-branding.woocommerce-cart table.cart .product-thumbnail a {
    display: block;
    width: 64px;
    height: 64px;
}

body.aart-wc-branding.woocommerce-cart table.cart .product-thumbnail img {
    display: block !important;
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
    object-fit: cover;
    border: 1px solid var(--aart-wc-border) !important;
    background: #fff;
}

body.aart-wc-branding.woocommerce-cart table.cart td.product-remove a.remove {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px !important;
    height: 28px !important;
    border: 1px solid #8f000a !important;
    border-radius: 0 !important;
    background: #8f000a !important;
    color: #fff !important;
    font-family: "Work Sans", Arial, sans-serif !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    cursor: pointer;
    box-shadow: none !important;
    transition: background .18s ease, border-color .18s ease, transform .18s ease !important;
}

body.aart-wc-branding.woocommerce-cart table.cart td.product-remove a.remove:hover {
    border-color: #720008 !important;
    background: #720008 !important;
    color: #fff !important;
    transform: translateY(-1px);
}

body.aart-wc-branding.woocommerce-cart table.cart td.product-remove a.remove:focus-visible {
    outline: 2px solid #8f000a !important;
    outline-offset: 3px;
}

body.aart-wc-branding.woocommerce-cart .woocommerce a.button:not(.remove),
body.aart-wc-branding.woocommerce-cart .woocommerce button.button,
body.aart-wc-branding.woocommerce-cart .woocommerce input.button {
    min-height: 48px;
    padding: 14px 28px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #8f000a !important;
    color: #fff !important;
    font-family: "Quicksand", Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
    letter-spacing: .01em;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: background .18s ease, transform .18s ease, opacity .18s ease !important;
}

body.aart-wc-branding.woocommerce-cart .woocommerce a.button:not(.remove):hover,
body.aart-wc-branding.woocommerce-cart .woocommerce button.button:hover,
body.aart-wc-branding.woocommerce-cart .woocommerce input.button:hover {
    background: #720008 !important;
    color: #fff !important;
    transform: translateY(-1px);
}

body.aart-wc-branding.woocommerce-cart .woocommerce a.button:not(.remove):focus-visible,
body.aart-wc-branding.woocommerce-cart .woocommerce button.button:focus-visible,
body.aart-wc-branding.woocommerce-cart .woocommerce input.button:focus-visible {
    outline: 2px solid #8f000a !important;
    outline-offset: 3px;
}

body.aart-wc-branding.woocommerce-cart .woocommerce a.button.disabled,
body.aart-wc-branding.woocommerce-cart .woocommerce a.button:disabled,
body.aart-wc-branding.woocommerce-cart .woocommerce button.button.disabled,
body.aart-wc-branding.woocommerce-cart .woocommerce button.button:disabled,
body.aart-wc-branding.woocommerce-cart .woocommerce input.button:disabled {
    background: #b5b5b3 !important;
    color: #fff !important;
    opacity: .7;
    transform: none;
    cursor: not-allowed;
}

/* Ab 769px (= oberhalb der WooCommerce-Smallscreen-Grenze 768px): echtes
   Tabellen-Layout. table-layout:fixed ist Pflicht — mit auto ging die Tabelle
   auf max-content auf und lief unter die Summen-Box. Die Coupon-Zeile bleibt
   als colspan-Zelle im Tabellenfluss; display:block dort sprengt die
   Spaltenberechnung der gesamten Tabelle. */
@media (min-width: 769px) {
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart {
        display: table !important;
        table-layout: fixed !important;
        width: 100% !important;
        max-width: 100% !important;
        border-collapse: collapse !important;
        border: 0 !important;
    }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead { display: table-header-group !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tbody { display: table-row-group !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr,
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tbody tr:not(.cart_item) {
        display: table-row !important;
        position: static !important;
        grid-template-columns: none !important;
    }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart th,
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td {
        display: table-cell !important;
        float: none !important;
        position: static !important;
        transform: none !important;
        vertical-align: middle !important;
        width: auto !important;
        min-width: 0;
        height: auto !important;
        padding: 16px 10px !important;
        border: 0 !important;
        border-bottom: 1px solid var(--aart-wc-border) !important;
        text-align: left !important;
        overflow-wrap: break-word;
    }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th {
        border-bottom: 2px solid var(--aart-wc-primary) !important;
        font-family: "Quicksand", sans-serif;
        font-weight: 600;
        color: var(--aart-wc-primary);
        white-space: nowrap; /* "Zwischensumme" nicht im Wort umbrechen */
    }
    /* Spaltenbreiten: bei table-layout:fixed zaehlen die thead-Zellen.
       Entfernen-Spalte 56px = 40px-X (Regel oben, !important) + Innenabstand. */
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-remove { width: 56px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-thumbnail { width: 92px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-price { width: 92px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-quantity { width: 104px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-subtotal { width: 124px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td.product-thumbnail { width: 92px !important; }
    /* Worttrennung steht jetzt weiter unten ausserhalb der Media-Queries,
       damit sie auch auf schmalen Fenstern greift. */
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td.product-price,
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td.product-subtotal { white-space: nowrap; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td.product-remove {
        width: 56px !important;
        text-align: center !important;
        padding: 0 6px !important;
    }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td.product-remove a.remove {
        display: inline-flex !important;
        align-items: center; justify-content: center;
        margin: 0 auto;
        position: static !important; float: none !important; transform: none !important;
    }
    /* Coupon-/Aktionszeile: volle Breite via colspan, nicht via display:block */
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart td.actions {
        display: table-cell !important;
        width: auto !important;
        border-bottom: 0 !important;
    }
    /* data-title-Pseudolabels (Mobile-Stacking) auf Desktop unterdruecken */
    body.aart-wc-branding.woocommerce-cart table.cart td::before { content: none !important; display: none !important; }
}

/* Konfigurator-Positionen: kompakte Options-Zeilen ohne Label-Praefix
   (mu-plugin aart-cart-produktdetails nutzt den Key "Option" fuer alle Extras;
   nur der Wert soll sichtbar sein — im Warenkorb UND in der Kasse). */
body.aart-wc-branding dl.variation dt.variation-Option { display: none !important; }
body.aart-wc-branding dl.variation dd.variation-Option { margin-left: 0 !important; }
body.aart-wc-branding dl.variation { margin: 6px 0 0 !important; color: var(--aart-wc-muted); font-size: 13px; line-height: 1.5; }
body.aart-wc-branding dl.variation dd {
    margin: 0 0 2px;
    /* kein harter Abriss einzelner Buchstaben — deutsch trennen oder umbrechen */
    overflow-wrap: normal;
    word-break: normal;
    hyphens: auto;
}
body.aart-wc-branding dl.variation dd p { margin: 0; display: inline; }

/* Worttrennung in Warenkorb und Kasse.
   Zwei Ursachen fuer die abgerissenen Einzelbuchstaben:
   1. Die Trennregel stand nur im Desktop-Block (min-width:769px) und griff auf
      schmalen Fenstern gar nicht.
   2. "-webkit-hyphens" fehlte komplett, ohne den Praefix trennt Safari nicht.
   Ohne greifende Trennung brach das generische "overflow-wrap:break-word" der
   Zellen lange Komposita an beliebiger Stelle um. "hyphenate-limit-chars"
   garantiert zusaetzlich, dass links und rechts der Trennstelle mindestens drei
   Zeichen stehen bleiben, damit nie ein einzelner Buchstabe uebrig bleibt. */
body.aart-wc-branding td.product-name,
body.aart-wc-branding td.product-name a,
body.aart-wc-branding td.product-name .aart-cart-size,
body.aart-wc-branding dl.variation,
body.aart-wc-branding dl.variation dd,
body.aart-wc-branding .woocommerce-checkout-review-order-table td.product-name,
body.aart-wc-branding .woocommerce-checkout-review-order-table .product-name {
    -webkit-hyphens: auto !important;
            hyphens: auto !important;
    hyphenate-limit-chars: 6 3 3;
    -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 3;
    word-break: normal !important;        /* nie mitten im Zeichen abreissen */
    overflow-wrap: break-word !important; /* nur als letzte Rettung nach der Trennung */
}

/* Schmale Desktop-Fenster: die festen Spalten (Entfernen, Bild, Preis, Anzahl,
   Zwischensumme) belegen zusammen 468 px. In einem schmalen Fenster bleibt fuer den
   Produktnamen dann kaum Platz uebrig (gemessen: 115 px), und dann hilft auch die beste
   Trennregel nichts mehr. Deshalb hier schmalere Festspalten. */
@media (min-width: 769px) and (max-width: 1200px) {
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-thumbnail,
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart tr.cart_item td.product-thumbnail { width: 64px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-price { width: 76px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-quantity { width: 90px !important; }
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart table.cart thead th.product-subtotal { width: 96px !important; }
}
/* Optionen als Aufzaehlung lesen: Komma zwischen den Zeilen */
body.aart-wc-branding dl.variation dd.variation-Option:not(:last-child)::after { content: ","; }

/* Bis 768px stackt WooCommerce (woocommerce-smallscreen.css) die Zeilen selbst.
   Hier komplett aufgeraeumt: volle Breite (die Tabelle schrumpfte sonst auf
   Inhaltsbreite -> toter Raum rechts), keine Linienreste am Entfernen-X,
   Produktfeld dreizeilig (Label / Name / Groesse) linksbuendig. */
@media (max-width: 768px) {
    body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table.e-cart-section {
        padding: 20px !important;
    }

    /* Volle Breite fuer alle Ebenen (display:table liess alles schrumpfen) */
    body.aart-wc-branding.woocommerce-cart table.cart,
    body.aart-wc-branding.woocommerce-cart table.cart tbody {
        display: block !important;
        width: 100% !important;
    }
    body.aart-wc-branding.woocommerce-cart table.cart tr.cart_item {
        display: block !important;
        width: 100% !important;
        position: relative;
        padding: 4px 0 10px;
    }
    /* Positions-Trenner statt einzelner td-Oberkanten */
    body.aart-wc-branding.woocommerce-cart table.cart tr.cart_item + tr.cart_item {
        border-top: 2px solid var(--aart-wc-border) !important;
    }
    body.aart-wc-branding.woocommerce-cart table.cart td {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box;
        padding: 8px 0 !important;
        border: 0 !important;
        border-top: 1px solid var(--aart-wc-border) !important;
    }

    /* Zellen ohne data-title bekaemen vom Smallscreen-Stacking ein einsames ":" */
    body.aart-wc-branding.woocommerce-cart table.cart td:not([data-title])::before,
    body.aart-wc-branding.woocommerce-cart table.cart td[data-title=""]::before {
        content: none !important;
        display: none !important;
    }

    /* Bild-Feld: keine Linie darueber, Platz fuers absolute X nur hier */
    body.aart-wc-branding.woocommerce-cart table.cart td.product-thumbnail {
        border-top: 0 !important;
        padding: 6px 54px 6px 0 !important;
        text-align: left !important;
    }

    /* Produktfeld: "Produkt:" als eigene Zeile, Name + Groesse linksbuendig darunter */
    body.aart-wc-branding.woocommerce-cart table.cart td.product-name {
        text-align: left !important;
        padding-right: 0 !important;
    }
    body.aart-wc-branding.woocommerce-cart table.cart td.product-name::before {
        content: attr(data-title) ": ";
        display: block !important;
        float: none !important;
        margin-bottom: 2px;
    }
    body.aart-wc-branding.woocommerce-cart table.cart td.product-name .aart-cart-size {
        display: block; /* Groesse in eigener Zeile */
    }

    /* Entfernen-X: oben rechts, ohne Linienrest */
    body.aart-wc-branding.woocommerce-cart table.cart td.product-remove {
        position: absolute;
        top: 12px;
        right: 0;
        z-index: 2;
        width: 40px !important;
        padding: 0 !important;
        border: 0 !important;
    }

    /* Anzahl-Feld: Eingabe mit Luft, Spinner vertikal mittig */
    body.aart-wc-branding.woocommerce-cart table.cart td.product-quantity input.qty {
        height: 42px !important;
        min-height: 42px !important;
        max-height: none !important;
        padding: 0 6px !important;
        line-height: 40px !important;
        box-sizing: border-box;
    }
}


/* Cart totals: Ausrichtung, Versanddetails, MwSt und Express-Checkout */
body.aart-wc-branding.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals .cart-collaterals {
    margin-top: 28px !important;
}

body.aart-wc-branding.woocommerce-cart .cart_totals .woocommerce-shipping-methods {
    margin: 0 !important;
    text-align: right;
}

body.aart-wc-branding.woocommerce-cart .cart_totals .woocommerce-shipping-methods label,
body.aart-wc-branding.woocommerce-cart .cart_totals .aart-cart-shipping-free {
    color: var(--aart-wc-text);
    font-weight: 600;
}

body.aart-wc-branding.woocommerce-cart .cart_totals .woocommerce-shipping-destination {
    margin: 12px 0 0 !important;
    line-height: 1.45;
}

body.aart-wc-branding.woocommerce-cart .cart_totals .woocommerce-shipping-destination strong {
    display: block;
    margin-top: 2px;
    font-weight: 600;
}

body.aart-wc-branding.woocommerce-cart .cart_totals a.shipping-calculator-button {
    display: inline-block;
    color: #8f000a !important;
    font-weight: 600;
    text-decoration: underline !important;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color .18s ease, text-decoration-thickness .18s ease;
}

body.aart-wc-branding.woocommerce-cart .cart_totals a.shipping-calculator-button:hover {
    color: #720008 !important;
    text-decoration-thickness: 2px;
}

body.aart-wc-branding.woocommerce-cart .cart_totals a.shipping-calculator-button:focus-visible {
    outline: 2px solid #8f000a !important;
    outline-offset: 3px;
}

body.aart-wc-branding.woocommerce-cart .cart_totals tr.order-total th {
    width: 38%;
}

body.aart-wc-branding.woocommerce-cart .cart_totals tr.order-total td {
    width: 62%;
    text-align: right;
    vertical-align: top;
}

body.aart-wc-branding.woocommerce-cart .cart_totals tr.order-total td > strong {
    display: block;
    font-weight: 600;
}

body.aart-wc-branding.woocommerce-cart .cart_totals tr.order-total td small.includes_tax {
    display: block !important;
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.35;
    white-space: nowrap;
}

body.aart-wc-branding.woocommerce-cart #wcpay-express-checkout-element,
body.aart-wc-branding.woocommerce-cart #wcpay-express-checkout-element .__PrivateStripeElement,
body.aart-wc-branding.woocommerce-cart #wcpay-express-checkout-element iframe {
    border-radius: 0 !important;
}

body.aart-wc-branding.woocommerce-cart #wcpay-express-checkout-element,
body.aart-wc-branding.woocommerce-cart #wcpay-express-checkout-element .__PrivateStripeElement {
    overflow: hidden !important;
}

/* ============================================================================
   Warenkorb-Summe: durchgaengig glattes Layout (Label links, Wert rechts auf
   einer Grundlinie; Versand-Betrag nicht fett; Adresse dezent; MwSt rechts).
   Re-Apply der am 15.07. live verifizierten Fixes + Kasse-Select2-Fix.
   ========================================================================== */
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table { border: 0 !important; margin: 0 !important; width: 100% !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table tbody { display: block !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table tr { display: block !important; padding: 14px 0 !important; border: 0 !important; border-bottom: 1px solid var(--aart-wc-border) !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table tr:last-child { border-bottom: 0 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table th { display: none !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table td { display: flex !important; flex-wrap: wrap !important; justify-content: space-between !important; align-items: baseline !important; column-gap: 16px !important; row-gap: 4px !important; width: auto !important; padding: 0 !important; border: 0 !important; text-align: left !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table td::before { content: attr(data-title) !important; float: none !important; width: auto !important; margin: 0 !important; font-weight: 600 !important; color: var(--aart-wc-text) !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals table.shop_table td > .woocommerce-Price-amount { margin-left: auto !important; text-align: right !important; font-weight: 400 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td ul.woocommerce-shipping-methods { list-style: none !important; margin: 0 0 0 auto !important; padding: 0 !important; float: none !important; width: auto !important; max-width: 65% !important; text-align: right !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td ul.woocommerce-shipping-methods li,
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td ul.woocommerce-shipping-methods label { display: inline !important; margin: 0 !important; padding: 0 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td .aart-cart-shipping-free,
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td .aart-cart-shipping-free * { font-weight: 400 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td .woocommerce-shipping-destination { flex: 0 0 100% !important; order: 3 !important; clear: both !important; margin: 8px 0 0 !important; color: var(--aart-wc-muted) !important; font-size: 13px !important; line-height: 1.5 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td .woocommerce-shipping-destination strong { display: block !important; margin-top: 3px !important; color: var(--aart-wc-text) !important; font-weight: 600 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td form.woocommerce-shipping-calculator { flex: 0 0 100% !important; order: 4 !important; margin: 4px 0 0 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.order-total td > strong { margin-left: auto !important; font-weight: 600 !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.order-total td small.includes_tax { flex: 0 0 100% !important; text-align: right !important; margin: 2px 0 0 !important; color: var(--aart-wc-muted) !important; font-weight: 400 !important; }
/* Versand ohne berechnete Adresse: Link rechts auf der Label-Zeile */
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td:not(:has(ul.woocommerce-shipping-methods)) form.woocommerce-shipping-calculator { flex: 0 0 auto !important; order: 2 !important; margin: 0 0 0 auto !important; text-align: right !important; }
body.aart-wc-branding.woocommerce-cart .cart_totals tr.shipping td:not(:has(ul.woocommerce-shipping-methods)) form.woocommerce-shipping-calculator:has(.shipping-calculator-button[aria-expanded="true"]) { flex: 0 0 100% !important; margin-left: 0 !important; text-align: left !important; }
/* Klarna-/BNPL-Messaging (Stripe-iframe): linksbuendig, Luft nach unten zum Button,
   nichts, was Hoehe/Klicks kappt (Stripe steuert die iframe-Hoehe selbst). */
body.aart-wc-branding.woocommerce-cart #payment-method-message {
    margin: 14px 0 22px !important;
    text-align: left !important;
    overflow: visible !important;
    pointer-events: auto !important;
}
body.aart-wc-branding.woocommerce-cart #payment-method-message .__PrivateStripeElement,
body.aart-wc-branding.woocommerce-cart #payment-method-message iframe {
    margin-left: 0 !important;
    pointer-events: auto !important;
}
body.aart-wc-branding.woocommerce-cart .wc-proceed-to-checkout > a.checkout-button { margin-top: 6px !important; }
/* Kasse: Select2 (Land/Region) — Text ragte unten raus (46px line-height + 8px padding in 48px-Box) */
body.aart-wc-branding .select2-container--default .select2-selection--single { height: 48px !important; padding: 0 14px !important; display: flex !important; align-items: center !important; }
body.aart-wc-branding .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 1.3 !important; padding: 0 24px 0 0 !important; }
body.aart-wc-branding .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px !important; top: 1px !important; }

/* Kasse: "Abweichende Lieferadresse"-Checkbox — Label war unsichtbar
   (leere DE-Uebersetzung + fast-weisse text-fill-color, 24px vom h3-Wrapper).
   Text kommt per gettext-Filter; hier lesbar + konsistent zur Konto-Checkbox. */
body.aart-wc-branding.woocommerce-checkout #ship-to-different-address label.checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 8px;
}
body.aart-wc-branding.woocommerce-checkout #ship-to-different-address label.checkbox input.input-checkbox {
    flex: 0 0 auto;
    margin: 0 !important;
    vertical-align: middle;
}
body.aart-wc-branding.woocommerce-checkout #ship-to-different-address label span {
    color: var(--aart-wc-text) !important;
    -webkit-text-fill-color: var(--aart-wc-text) !important;
    font-family: "Work Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    position: relative;
    top: -1px; /* optischer Ausgleich: Glyphe sitzt in ihrer Box leicht tief */
}
body.aart-wc-branding.woocommerce-checkout #ship-to-different-address {
    margin: 0 0 6px !important;
}

/* ============================================================================
   Echte Produktseiten (/product/...): Innenabstand oben/unten, "Aehnliche
   Produkte" mit Luft + Site-Ueberschrift, Button-Hover im CD. 18.07.2026
   ========================================================================== */
body.aart-wc-branding.single-product .site-main,
body.aart-wc-branding.single-product .page-content {
    padding-top: 40px !important;
    padding-bottom: 70px !important;
}
body.aart-wc-branding.single-product section.related {
    margin-top: 56px !important;
    padding-top: 0 !important;
}
body.aart-wc-branding.single-product section.related > h2 {
    font-family: "Quicksand", sans-serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    color: var(--aart-wc-primary) !important;
    margin: 0 0 24px !important;
}
body.aart-wc-branding.single-product button.single_add_to_cart_button:hover,
body.aart-wc-branding.single-product .woocommerce a.button:hover,
body.aart-wc-branding.single-product .woocommerce button.button:hover {
    background: #720008 !important;
    border-color: #720008 !important;
    color: #fff !important;
}
/* Anzahl-Feld neben "In den Warenkorb": gleiche Hoehe, Spinner mittig */
body.aart-wc-branding.single-product form.cart input.qty {
    height: 48px !important;
    padding: 0 8px !important;
    box-sizing: border-box;
}

/* ============================================================================
   Produkt-Einzelansicht via [product_page]-Shortcode (z. B. Gutschein-Seite):
   Abstaende im Summary-Stack, begrenzte Bildbreite, dezente Meta-Zeile,
   kompaktes "Aehnliche Produkte"-Grid. 16.07.2026
   ========================================================================== */
.woocommerce div.product { display: flow-root; }
.woocommerce div.product div.images { max-width: 480px; margin-bottom: 28px !important; }
.woocommerce div.product div.images img { border: 1px solid var(--aart-wc-border); }
.woocommerce div.product .summary > * { margin-bottom: 16px !important; }
.woocommerce div.product .summary .product_title { margin-bottom: 10px !important; }
.woocommerce div.product .summary .price { font-family: "Quicksand", sans-serif; font-size: 24px; color: var(--aart-wc-primary); }
.woocommerce div.product form.cart { margin: 4px 0 18px !important; display: flex; gap: 12px; align-items: stretch; flex-wrap: wrap; }
.woocommerce div.product form.cart div.quantity { margin: 0 !important; }
.woocommerce div.product form.cart .qty { min-height: 46px; border: 1px solid var(--aart-wc-border-strong) !important; border-radius: 0 !important; text-align: center; }
.woocommerce div.product .product_meta { color: var(--aart-wc-muted); font-size: 13px; padding-top: 10px; border-top: 1px solid var(--aart-wc-border); }
.woocommerce div.product .product_meta a { color: var(--aart-wc-muted); }
/* Aehnliche Produkte: kompaktes 4er-Grid statt Riesen-Kacheln */
.woocommerce section.related { clear: both; padding-top: 34px; margin-top: 10px; border-top: 1px solid var(--aart-wc-border); }
.woocommerce section.related > h2 { font-size: 22px; margin-bottom: 18px; }
.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; margin: 0 !important; padding: 0 !important; list-style: none; }
.woocommerce ul.products li.product { width: auto !important; float: none !important; margin: 0 !important; }
.woocommerce ul.products li.product img { width: 100%; height: auto; border: 1px solid var(--aart-wc-border); margin-bottom: 10px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: "Quicksand", sans-serif; font-size: 15px; font-weight: 600; color: var(--aart-wc-primary); }
.woocommerce ul.products li.product .price { color: var(--aart-wc-text); font-size: 14px; }
.woocommerce ul.products li.product .button { margin-top: 8px; }
@media (max-width: 900px) { .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .woocommerce ul.products { grid-template-columns: 1fr; } .woocommerce div.product div.images { max-width: 100%; } }

/* ============================================================================
   Gutschein-Seite (page-id-30839) — Feinschliff 16.07.2026:
   Lupe/Zoom aus, Bild ohne Rahmen, Meta-Zeile + "Aehnliche Produkte" weg,
   Hover dunkelrot (wie Konfigurator-CTAs), Betragsfeld im CD.
   ========================================================================== */
body.page-id-30839 .woocommerce-product-gallery__trigger { display: none !important; }
body.page-id-30839 img.zoomImg { display: none !important; }
body.page-id-30839 .woocommerce div.product div.images img { border: 0 !important; }
body.page-id-30839 .woocommerce div.product .product_meta { display: none !important; }
body.page-id-30839 .woocommerce section.related { display: none !important; }
body.page-id-30839 .woocommerce button.button:hover,
body.page-id-30839 .woocommerce button.single_add_to_cart_button:hover {
    background: #720008 !important;
    border-color: #720008 !important;
    color: #fff !important;
}
/* Betragsfeld: Label klein drueber, Input im CD, buendig neben der Menge */
body.page-id-30839 .woocommerce div.product form.cart { align-items: flex-end; }
.aart-gift-amount { display: flex; flex-direction: column; gap: 6px; }
.aart-gift-amount label { font-family: "Work Sans", sans-serif; font-size: 13px; font-weight: 600; color: var(--aart-wc-text); }
.aart-gift-amount input {
    min-height: 46px; width: 170px;
    border: 1px solid var(--aart-wc-border-strong) !important;
    border-radius: 0 !important; padding: 10px 14px !important;
    font-family: "Work Sans", sans-serif !important; font-size: 16px !important;
    background: var(--aart-wc-surface) !important;
}
.aart-gift-amount input:focus-visible { outline: 3px solid var(--aart-wc-focus) !important; outline-offset: 2px; }

/* Mengen-Spinner IMMER sichtbar (Webkit blendet sie sonst bis Hover aus) — global fuer WooCommerce.
   height:auto + align-self:stretch sind noetig, damit der Spinner die volle Innenhoehe des
   Feldes einnimmt. Ohne das behaelt WebKit seine eigene Hoehe bei und setzt den Block nicht
   mittig, wodurch der obere und der untere Pfeil unterschiedlich weit vom Feldrand stehen. */
.woocommerce .quantity .qty::-webkit-inner-spin-button,
.woocommerce .quantity .qty::-webkit-outer-spin-button {
    opacity: 1 !important;
    -webkit-appearance: inner-spin-button;
    appearance: auto;
    height: auto !important;
    margin: 0 !important;
    align-self: stretch;
}
.woocommerce .quantity .qty { -moz-appearance: number-input; }

/* ============================================================================
   Kasse: Express-Zahlungsblock (Google Pay etc.) — begrenzt & zentriert statt
   voller Formularbreite; ODER-Trenner als dezente Linie. 16.07.2026
   ========================================================================== */
body.woocommerce-checkout .wcpay-express-checkout-wrapper {
    max-width: 420px;
    margin: 6px auto 30px !important;
}
body.woocommerce-checkout #wcpay-express-checkout-element,
body.woocommerce-checkout #wcpay-express-checkout-element .__PrivateStripeElement,
body.woocommerce-checkout #wcpay-express-checkout-element iframe {
    border-radius: 0 !important;
}
#wcpay-express-checkout-button-separator {
    display: flex !important;
    align-items: center;
    gap: 14px;
    margin: 16px 0 0 !important;
    color: var(--aart-wc-muted);
    font-family: "Work Sans", sans-serif;
    font-size: 12px;
    letter-spacing: 0.1em;
}
#wcpay-express-checkout-button-separator::before,
#wcpay-express-checkout-button-separator::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: var(--aart-wc-border);
}

/* Gutschein-Seite: einheitliche 48px-Hoehen (Betrag, Anzahl, Button), Euro-Suffix
   im Betragsfeld, keine Spinner am Betragsfeld, Status-Zeile wie im Konfigurator. */
body.page-id-30839 .woocommerce div.product form.cart { align-items: flex-end; row-gap: 14px; }
body.page-id-30839 .woocommerce div.product form.cart .qty,
body.page-id-30839 .aart-gift-amount input,
body.page-id-30839 .woocommerce button.single_add_to_cart_button {
    height: 48px !important;
    min-height: 48px !important;
    box-sizing: border-box;
}
.aart-gift-amount__wrap { position: relative; display: inline-block; }
.aart-gift-amount__wrap input { padding-right: 38px !important; }
.aart-gift-amount__euro {
    position: absolute; right: 14px; top: 50%; transform: translateY(-50%);
    color: var(--aart-wc-muted); font-family: "Work Sans", sans-serif; font-size: 16px;
    pointer-events: none;
}
/* Keine Pfeile am Betragsfeld (Betrag tippt man) — Mengenfeld behaelt seine Pfeile */
#aart-gift-amount::-webkit-inner-spin-button,
#aart-gift-amount::-webkit-outer-spin-button { -webkit-appearance: none; appearance: none; margin: 0; }
#aart-gift-amount { -moz-appearance: textfield; appearance: textfield; }
/* Status-Zeile nach dem Hinzufuegen (Optik wie .aart-konf__status im Konfigurator) */
.aart-gift-status {
    flex: 0 0 100%;
    margin: 2px 0 0 !important;
    color: var(--aart-wc-muted);
    font-family: "Work Sans", sans-serif;
    font-size: 13px;
}
.aart-gift-status a { color: var(--aart-wc-accent); text-decoration: underline; text-underline-offset: 3px; }
.aart-gift-status a:hover { color: #720008; }

/* (Warenkorb-Tabellen-Layout: konsolidiert im @media-Block "min-width: 769px"
   weiter oben — hier standen drei redundante Flick-Bloecke, entfernt 16.07.2026) */

/* ============================================================================
   Mein Konto: Abstaende zu Header/Footer, Adress-Titelzeile, schlichte
   Leer-Hinweise, Button-Hover im CD. 16.07.2026
   ========================================================================== */
body.aart-wc-branding.woocommerce-account .e-my-account-tab {
    padding-top: 50px !important;
    padding-bottom: 70px !important;
}

/* Adress-Karten: Titel + Bearbeiten/Hinzufügen-Link untereinander (Spalte) —
   so liegt der Link IMMER unter dem Titel (bei Rechnungs- UND Lieferadresse
   gleich; vorher wrappte der laengere "Rechnungsadresse …"-Link unter den Titel,
   der kuerzere "Lieferadresse …" blieb daneben → inkonsistent). 19.07.2026 */
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    margin-bottom: 10px;
}
/* Clearfix-Pseudos wuerden im Flex-Container zu unsichtbaren Items
   und schieben den Titel nach rechts */
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title::before,
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title::after {
    display: none !important;
    content: none !important;
}
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title .edit {
    margin: 0 !important;
}
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title h2,
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title h3 {
    margin: 0 !important;
    float: none !important;
}
body.aart-wc-branding.woocommerce-account .woocommerce-Address-title .edit {
    position: static !important;
    float: none !important;
    white-space: nowrap;
    color: var(--aart-wc-accent);
    font-weight: 600;
}
body.aart-wc-branding.woocommerce-account .woocommerce-Address address {
    clear: both;
    height: auto !important; /* Equal-Height-Script setzt inline height */
}

/* "Keine Bestellungen/Downloads/Zahlungsarten"-Hinweise: einheitliche
   Hintergrund-Box (Bestellungen + Downloads identisch), Button UNTER dem Text.
   (19.07.2026 — vorher transparent; Kunde wuenscht sichtbare Box + Button darunter.) */
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
    display: block;
    background: var(--aart-wc-secondary) !important;
    border: 1px solid var(--aart-wc-border) !important;
    border-left: 3px solid var(--aart-wc-primary) !important;
    padding: 18px 20px !important;
    margin: 0 0 8px !important;
    color: var(--aart-wc-text) !important;
}
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before {
    display: none !important;
    content: none !important;
}
/* Der Button wird per aart-account-tweaks.php AUS der Box heraus davor/danach gesetzt
   (wie bei „Zahlungsarten"): eigener Button unter der Box, nur so breit wie sein Inhalt.
   Beide Fälle abdecken — Button noch in der Box (vor dem JS) UND als Sibling danach. */
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .wc-forward,
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info + .button,
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info + .wc-forward {
    display: inline-flex !important;
    width: fit-content;
    margin: 14px 0 0 !important;
    float: none !important;
}

/* ============================================================================
   Shop-/Produktlisten (ul.products): Clearfix-Pseudos raus (belegten im
   CSS-Grid die erste Zelle = Luecke), Karten als Flex-Spalte mit buendigen
   Buttons, Sortierungs-Select im CD. 16.07.2026
   ========================================================================== */
body.aart-wc-branding ul.products::before,
body.aart-wc-branding ul.products::after {
    content: none !important;
    display: none !important;
}

body.aart-wc-branding ul.products li.product {
    display: flex !important;
    flex-direction: column;
    float: none !important;
    margin: 0 !important;
}

body.aart-wc-branding ul.products li.product .button {
    margin-top: auto !important;
    align-self: flex-start;
}

body.aart-wc-branding ul.products li.product .woocommerce-loop-product__title {
    font-family: "Quicksand", sans-serif !important;
    color: var(--aart-wc-primary);
}

body.aart-wc-branding ul.products li.product .button:hover {
    background: #720008 !important;
    border-color: #720008 !important;
    color: #fff !important;
}

/* Sortierung: eigener Chevron mit Abstand zum Rahmen statt Browser-Pfeil am Rand */
body.aart-wc-branding .woocommerce-ordering select {
    appearance: none !important;
    -webkit-appearance: none !important;
    height: 48px;
    padding: 10px 44px 10px 14px !important;
    border: 1px solid var(--aart-wc-border-strong) !important;
    border-radius: 0 !important;
    background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23252525' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 16px center !important;
    font-family: "Work Sans", sans-serif !important;
    font-size: 15px;
    color: var(--aart-wc-text);
    cursor: pointer;
}

/* Buttons im Konto: Hover dunkelrot statt Theme-Gruen */
body.aart-wc-branding.woocommerce-account .woocommerce a.button:hover,
body.aart-wc-branding.woocommerce-account .woocommerce button.button:hover,
body.aart-wc-branding.woocommerce-account .woocommerce input.button:hover,
body.aart-wc-branding.woocommerce-account .woocommerce-MyAccount-content a.wc-forward:hover {
    background: #720008 !important;
    border-color: #720008 !important;
    color: #fff !important;
}

/* ============================================================================
   19.07.2026 — Warenkorb-Leer-Hinweis, Konto-Währung, Kassen-Bestellübersicht
   ========================================================================== */

/* Leerer Warenkorb: das Info-Icon (::before) vor „Dein Warenkorb ist derzeit
   leer" rendert als leeres Kästchen — entfernen, linken Einzug zurücknehmen. */
body.aart-wc-branding .cart-empty.woocommerce-info::before,
body.aart-wc-branding .wc-empty-cart-message .cart-empty::before {
    content: none !important;
    display: none !important;
}
body.aart-wc-branding .cart-empty.woocommerce-info,
body.aart-wc-branding .wc-empty-cart-message .cart-empty {
    padding-left: 20px !important;
}

/* Kontodetails: Standardwährung-Select mit eigenem Chevron (wie Sortier-Select) */
body.aart-wc-branding.woocommerce-account #wcpay_selected_currency {
    -webkit-appearance: none !important;
    appearance: none !important;
    height: 48px;
    padding: 10px 44px 10px 14px !important;
    border: 1px solid var(--aart-wc-border-strong) !important;
    border-radius: 0 !important;
    background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23252525' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 16px center !important;
    font-family: "Work Sans", sans-serif !important;
    font-size: 15px;
    color: var(--aart-wc-text);
    cursor: pointer;
}

/* Kassen-Bestellübersicht: Produktbezeichnung, dann Umbruch, Maße in EINER
   Zeile darunter (nicht am Leerzeichen trennen). */
body.aart-wc-branding.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name .aart-cart-size,
body.aart-wc-branding.woocommerce-checkout .woocommerce-checkout-review-order-table th.product-name .aart-cart-size {
    display: block !important;
    white-space: nowrap;
    margin-top: 2px;
    font-weight: 400;
}

/* Zahlung, Versand & Retouren (Seite 34062): Content-Links in CD-Rot statt Pink,
   Hover in Gold — beides globale CD-Farben. 19.07.2026 */
body.page-id-34062 .elementor-widget-text-editor a {
    color: var(--aart-wc-accent) !important;
}
body.page-id-34062 .elementor-widget-text-editor a:hover,
body.page-id-34062 .elementor-widget-text-editor a:focus {
    color: var(--aart-wc-gold) !important;
}

/* ============================================================================
   Shop-Archiv (/shop/)
   Die Seite laeuft als WooCommerce-Archiv, also OHNE Elementor-Container. Der
   sonst uebliche Seitenabstand fehlt dort, deshalb kommt er hier her. Der Abstand
   zum Footer steckt bereits in .aart-zb (padding-bottom 70px), wird also nicht
   noch einmal gesetzt.
   ========================================================================= */
body.aart-wc-branding.woocommerce-shop .aart-shop-archiv { padding: 34px 20px 0; }
@media (max-width: 768px) {
    body.aart-wc-branding.woocommerce-shop .aart-shop-archiv { padding: 22px 16px 0; }
}
