/* ==========================================================================
   EDORÉ — WooCommerce
   1. Notices & shared form controls
   2. Shop / archive
   3. Single product
   4. Gallery
   5. Cart drawer
   6. Cart page
   7. Checkout
   8. My account
   9. Reviews
   ========================================================================== */

/* --------------------------------------- 1. Notices & form controls */
.woocommerce-notices-wrapper:empty {
	display: none;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-3);
	align-items: center;
	margin: 0 0 var(--e-5);
	padding: var(--e-4) var(--e-5);
	background: var(--e-warm);
	border: 0;
	border-inline-start: 2px solid var(--e-gold);
	border-radius: var(--e-radius);
	font-size: var(--e-fs-sm);
	list-style: none;
	color: var(--e-ink);
}

.woocommerce-error {
	background: #f6e9e6;
	border-inline-start-color: #b4553f;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
	margin-inline-start: auto;
}

.woocommerce form .form-row {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0 0 var(--e-4);
	padding: 0;
}

.woocommerce form .form-row label,
.woocommerce-page label {
	font-size: var(--e-fs-xs);
	letter-spacing: 0.04em;
	color: var(--e-ink-soft);
}

.woocommerce form .form-row .required {
	color: var(--e-gold);
	text-decoration: none;
}

.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select,
.select2-container .select2-selection--single {
	width: 100%;
	min-height: 50px;
	padding: 0 var(--e-4);
	background: transparent;
	color: var(--e-ink);
	border: 1px solid var(--e-line);
	border-radius: var(--e-radius);
	font-size: var(--e-fs-base);
	font-weight: 300;
	transition: border-color var(--e-t-fast);
}

.woocommerce textarea {
	min-height: 110px;
	padding: var(--e-3) var(--e-4);
	line-height: 1.6;
	resize: vertical;
}

.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
	outline: none;
	border-color: var(--e-ink);
}

.select2-container--default .select2-selection--single {
	display: flex;
	align-items: center;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	padding: 0;
	line-height: inherit;
	color: var(--e-ink);
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 48px;
	inset-inline-end: var(--e-3);
	inset-inline-start: auto;
}

/* All WooCommerce buttons inherit the EDORÉ button */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.wc-block-components-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--e-2);
	min-height: 50px;
	padding: 0 var(--e-6);
	background: var(--e-black);
	color: var(--e-ivory);
	border: 1px solid var(--e-black);
	border-radius: var(--e-radius);
	font-size: var(--e-fs-sm);
	font-weight: 400;
	letter-spacing: var(--e-track-mid);
	line-height: 1;
	text-transform: none;
	transition: background var(--e-t-fast), color var(--e-t-fast), border-color var(--e-t-fast);
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit:hover {
	background: var(--e-soft);
	color: var(--e-ivory);
	border-color: var(--e-soft);
}

.woocommerce a.button.wc-backward,
.woocommerce .button.wc-forward:not(.checkout) {
	background: transparent;
	color: var(--e-ink);
	border-color: var(--e-line);
}

.woocommerce a.button.wc-backward:hover {
	background: transparent;
	color: var(--e-ink);
	border-color: var(--e-ink);
}

.woocommerce .button:disabled,
.woocommerce .button.disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

/* Quantity control */
.edore-qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--e-line);
	border-radius: var(--e-radius);
	overflow: hidden;
}

.edore-qty__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 48px;
	color: var(--e-ink-soft);
	transition: color var(--e-t-fast), background var(--e-t-fast);
}

.edore-qty__btn:hover {
	color: var(--e-ink);
	background: var(--e-warm);
}

.woocommerce .edore-qty__input,
.edore-qty .qty {
	width: 52px !important;
	min-height: 48px;
	padding: 0 !important;
	border: 0;
	border-inline: 1px solid var(--e-line);
	text-align: center;
	font-size: var(--e-fs-sm);
	-moz-appearance: textfield;
	appearance: textfield;
}

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

.edore-qty--sm {
	border-color: var(--e-line-dark);
}

.edore-qty--sm .edore-qty__btn {
	width: 32px;
	height: 32px;
	color: var(--e-on-dark-soft);
}

.edore-qty--sm .edore-qty__btn:hover {
	background: rgba(246, 241, 233, 0.06);
	color: var(--e-ivory);
}

.edore-qty__val {
	min-width: 30px;
	text-align: center;
	font-size: var(--e-fs-sm);
	color: var(--e-ivory);
}

/* ------------------------------------------------- 2. Shop / archive */
.edore-shophero {
	padding-block: clamp(70px, 8vw, 120px) clamp(50px, 6vw, 90px);
}

.edore-shopfilter {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-2);
	justify-content: center;
	margin-bottom: var(--e-7);
}

.edore-shopfilter__item {
	padding: 9px 18px;
	border: 1px solid var(--e-line);
	border-radius: 40px;
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
	color: var(--e-ink-soft);
	transition: all var(--e-t-fast);
}

.edore-shopfilter__item:hover {
	border-color: var(--e-ink);
	color: var(--e-ink);
}

.edore-shopfilter__item.is-active {
	background: var(--e-black);
	border-color: var(--e-black);
	color: var(--e-ivory);
}

.edore-shop__bar {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-3);
	align-items: center;
	justify-content: space-between;
	margin-bottom: var(--e-6);
	padding-bottom: var(--e-4);
	border-bottom: 1px solid var(--e-line-soft);
}

.edore-shop__count {
	margin: 0;
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
	color: var(--e-ink-soft);
}

.woocommerce-ordering select {
	min-height: 42px;
	padding-inline: var(--e-3);
	font-size: var(--e-fs-sm);
	border-color: var(--e-line);
}

.woocommerce-ordering {
	margin: 0;
}

.edore-shop__bar .woocommerce-notices-wrapper {
	flex: 1 1 100%;
	order: -1;
}

/* WooCommerce shortcode / block product lists reuse the card grid */
.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(20px, 2.6vw, 40px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce ul.products li.product {
	width: auto !important;
	margin: 0 !important;
	float: none !important;
	text-align: start;
}

.woocommerce ul.products li.product::before,
.woocommerce ul.products li.product::after {
	display: none;
}

@media (max-width: 1024px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 560px) {
	.woocommerce ul.products {
		grid-template-columns: 1fr;
	}
}

/* ------------------------------------------------- 3. Single product */
.edore-product__top {
	padding-block: clamp(32px, 4vw, 64px) clamp(48px, 6vw, 90px);
}

.edore-product__grid {
	display: grid;
	grid-template-columns: 1fr 0.85fr;
	gap: clamp(28px, 5vw, 80px);
	align-items: start;
}

.edore-product__summary {
	position: sticky;
	top: calc(var(--e-header-h) + var(--e-4));
}

.edore-eyebrow--product {
	color: var(--e-gold);
}

.edore-product .product_title {
	margin: 0 0 var(--e-3);
	font-family: var(--e-serif);
	font-size: var(--e-fs-2xl);
	font-weight: 300;
	line-height: 1.1;
}

body.edore-lang-he .edore-product .product_title,
body.edore-lang-ar .edore-product .product_title {
	font-family: var(--e-sans);
	font-weight: 300;
	font-size: clamp(1.5rem, 3vw, 2.25rem);
}

.edore-product .woocommerce-product-details__short-description {
	margin: var(--e-4) 0 var(--e-5);
	color: var(--e-ink-soft);
	font-size: var(--e-fs-md);
}

.edore-product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--e-2);
	margin: 0 0 var(--e-5);
	font-family: var(--e-serif);
	font-size: var(--e-fs-xl);
	color: var(--e-ink);
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	color: var(--e-gray);
	font-size: var(--e-fs-md);
	opacity: 1;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	text-decoration: none;
	color: var(--e-ink);
}

.edore-product .woocommerce-product-rating {
	display: flex;
	align-items: center;
	gap: var(--e-3);
	margin: 0 0 var(--e-4);
	font-size: var(--e-fs-sm);
}

.woocommerce .star-rating {
	font-size: 0.8em;
	color: var(--e-gold);
	letter-spacing: 2px;
	overflow: hidden;
	position: relative;
	height: 1.2em;
	width: 5.6em;
	font-family: star;
}

.edore-product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-3);
	align-items: center;
	margin: 0 0 var(--e-4);
}

.edore-product form.cart .button {
	flex: 1 1 200px;
	min-height: 52px;
}

.edore-product form.cart.variations_form {
	display: block;
}

.woocommerce div.product form.cart .variations {
	width: 100%;
	margin-bottom: var(--e-4);
	border-collapse: collapse;
}

.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th {
	display: block;
	width: 100%;
	padding: 0 0 var(--e-2);
	text-align: start;
	vertical-align: middle;
}

.woocommerce div.product form.cart .variations .label label {
	font-size: var(--e-fs-xs);
	letter-spacing: 0.04em;
	color: var(--e-ink-soft);
}

.woocommerce div.product form.cart .variations .reset_variations {
	display: inline-block;
	margin-top: var(--e-2);
	font-size: var(--e-fs-xs);
	color: var(--e-ink-soft);
	border-bottom: 1px solid var(--e-gold);
}

.woocommerce div.product .woocommerce-variation-add-to-cart {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-3);
	align-items: center;
}

.woocommerce div.product .woocommerce-variation-price {
	margin-bottom: var(--e-3);
}

.edore-stock {
	margin: 0 0 var(--e-4);
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
}

.edore-stock--in {
	color: #4d7c53;
}

.edore-stock--out {
	color: #a4563f;
}

.edore-trust {
	display: grid;
	gap: var(--e-3);
	margin: var(--e-5) 0 0;
	padding-top: var(--e-5);
	border-top: 1px solid var(--e-line-soft);
}

.edore-trust li {
	display: flex;
	align-items: center;
	gap: var(--e-3);
	font-size: var(--e-fs-sm);
	color: var(--e-ink-soft);
}

.edore-trust .edore-icon {
	color: var(--e-gold);
}

.edore-product-info {
	padding-block: clamp(40px, 5vw, 72px);
}

.edore-sku {
	margin-top: var(--e-4);
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
	color: var(--e-ink-soft);
}

.woocommerce-product-attributes {
	width: 100%;
	margin: 0 0 var(--e-4);
	border-collapse: collapse;
	font-size: var(--e-fs-sm);
}

.woocommerce-product-attributes th,
.woocommerce-product-attributes td {
	padding: var(--e-3) 0;
	border-bottom: 1px solid var(--e-line-soft);
	text-align: start;
	font-weight: 400;
}

.woocommerce-product-attributes th {
	width: 38%;
	color: var(--e-ink-soft);
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
}

.woocommerce-product-attributes td p {
	margin: 0;
}

/* Related / upsells */
.edore-related-head {
	padding-top: clamp(40px, 5vw, 80px);
	background: var(--e-warm);
}

.edore-related-head .edore-sec-head {
	max-width: var(--e-wrap);
	margin-inline: auto;
	margin-bottom: 0;
	padding-inline: var(--e-gutter);
}

.woocommerce .related,
.woocommerce .up-sells {
	padding-block: var(--e-6) clamp(50px, 6vw, 90px);
	background: var(--e-warm);
}

.woocommerce .related > h2,
.woocommerce .up-sells > h2 {
	display: none;
}

.woocommerce .related ul.products,
.woocommerce .up-sells ul.products {
	max-width: var(--e-wrap);
	margin-inline: auto;
	padding-inline: var(--e-gutter);
}

.woocommerce .related ul.products .edore-card__media,
.woocommerce .up-sells ul.products .edore-card__media {
	background: #e6ddce;
}

/* --------------------------------------------------------- 4. Gallery */
.woocommerce-product-gallery {
	position: relative;
	margin: 0;
	float: none !important;
	width: 100% !important;
	opacity: 1 !important;
}

.edore-gallery__stage {
	position: relative;
}

.edore-gallery__slide {
	display: none;
}

.edore-gallery__slide.is-active {
	display: block;
}

.edore-gallery__nav,
.edore-gallery__zoom {
	position: absolute;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	background: rgba(246, 241, 233, 0.9);
	color: var(--e-ink);
	border: 1px solid var(--e-line-soft);
	border-radius: 50%;
	transition: background var(--e-t-fast), color var(--e-t-fast);
}

.edore-gallery__nav:hover,
.edore-gallery__zoom:hover {
	background: var(--e-black);
	color: var(--e-ivory);
}

.edore-gallery__nav {
	top: 50%;
	transform: translateY(-50%);
}

.edore-gallery__nav--prev {
	inset-inline-start: var(--e-3);
}

.edore-gallery__nav--prev .edore-icon {
	transform: rotate(90deg);
}

.edore-gallery__nav--next {
	inset-inline-end: var(--e-3);
}

.edore-gallery__nav--next .edore-icon {
	transform: rotate(-90deg);
}

.edore-gallery__zoom {
	bottom: var(--e-3);
	inset-inline-end: var(--e-3);
	width: 38px;
	height: 38px;
}

.edore-gallery__thumbs {
	display: flex;
	gap: var(--e-2);
	margin-top: var(--e-3);
	overflow-x: auto;
	scrollbar-width: none;
}

.edore-gallery__thumbs::-webkit-scrollbar {
	display: none;
}

.edore-gallery__thumb {
	flex: 0 0 78px;
	width: 78px;
	aspect-ratio: 1;
	padding: 4px;
	background: var(--e-warm);
	border: 1px solid transparent;
	transition: border-color var(--e-t-fast), opacity var(--e-t-fast);
	opacity: 0.72;
}

.edore-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.edore-gallery__thumb.is-active,
.edore-gallery__thumb:hover {
	border-color: var(--e-gold);
	opacity: 1;
}

.edore-lightbox {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--e-5);
	background: rgba(9, 9, 9, 0.94);
	opacity: 0;
	transition: opacity var(--e-t);
}

.edore-lightbox.is-open {
	opacity: 1;
}

.edore-lightbox img {
	max-width: 100%;
	max-height: 86vh;
	object-fit: contain;
}

.edore-lightbox__close {
	position: absolute;
	top: var(--e-5);
	inset-inline-end: var(--e-5);
	color: var(--e-ivory);
}

.woocommerce span.onsale,
.edore-product .edore-badge--sale {
	position: absolute;
	z-index: 2;
	top: var(--e-3);
	inset-inline-start: var(--e-3);
	min-height: 0;
	margin: 0;
	padding: 5px 11px;
	background: var(--e-gold);
	color: var(--e-black);
	border-radius: 0;
	font-size: 0.625rem;
	letter-spacing: var(--e-track-mid);
	line-height: 1.4;
	text-transform: uppercase;
}

.edore-product__media {
	position: relative;
}

/* ----------------------------------------------------- 5. Cart drawer */
.edore-cartlist {
	display: grid;
	gap: var(--e-5);
}

.edore-cartlist__item {
	position: relative;
	display: grid;
	grid-template-columns: 76px 1fr;
	gap: var(--e-4);
	padding-bottom: var(--e-5);
	border-bottom: 1px solid var(--e-line-dark);
}

.edore-cartlist__media {
	background: #0f0f0e;
	border: 1px solid var(--e-line-dark);
}

.edore-cartlist__img,
.edore-cartlist__media img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: contain;
	padding: 6px;
}

.edore-cartlist__name {
	margin: 0 var(--e-6) var(--e-2) 0;
	font-size: var(--e-fs-sm);
	color: var(--e-ivory);
	line-height: 1.5;
}

body.edore-rtl .edore-cartlist__name {
	margin: 0 0 var(--e-2) var(--e-6);
}

.edore-cartlist__meta {
	margin: 0 0 var(--e-2);
	font-size: var(--e-fs-xs);
	color: var(--e-on-dark-soft);
}

.edore-cartlist__meta p {
	margin: 0;
}

.edore-cartlist__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--e-3);
	margin-top: var(--e-3);
}

.edore-cartlist__price {
	font-family: var(--e-serif);
	font-size: var(--e-fs-md);
	color: var(--e-champagne);
}

.edore-cartlist__remove {
	position: absolute;
	top: 0;
	inset-inline-end: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	color: var(--e-on-dark-soft);
}

.edore-cartlist__remove:hover {
	color: var(--e-champagne);
}

.edore-drawer__empty {
	padding: var(--e-8) 0;
	text-align: center;
	color: var(--e-on-dark-soft);
}

.edore-drawer__empty .edore-icon {
	margin: 0 auto var(--e-4);
	color: var(--e-gold);
}

.edore-drawer__emptytitle {
	margin: 0 0 var(--e-2);
	font-family: var(--e-serif);
	font-size: var(--e-fs-lg);
	color: var(--e-ivory);
}

.edore-drawer__emptytext {
	max-width: 30ch;
	margin: 0 auto var(--e-6);
	font-size: var(--e-fs-sm);
}

.edore-drawer__suggest {
	margin-top: var(--e-6);
	padding-top: var(--e-5);
	border-top: 1px solid var(--e-line-dark);
}

.edore-drawer__suggest .edore-eyebrow {
	color: var(--e-champagne);
}

.edore-suggest {
	display: grid;
	grid-template-columns: 56px 1fr auto;
	gap: var(--e-3);
	align-items: center;
}

.edore-suggest__media {
	background: #0f0f0e;
	border: 1px solid var(--e-line-dark);
}

.edore-suggest__media img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: contain;
	padding: 5px;
}

.edore-suggest__name {
	display: block;
	font-size: var(--e-fs-sm);
	color: var(--e-ivory);
}

.edore-suggest__price {
	display: block;
	margin-top: 2px;
	font-size: var(--e-fs-xs);
	color: var(--e-champagne);
}

.edore-suggest__add {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid var(--e-line-dark);
	color: var(--e-ivory);
	transition: all var(--e-t-fast);
}

.edore-suggest__add:hover {
	border-color: var(--e-champagne);
	color: var(--e-champagne);
}

.edore-drawer__foot {
	margin-top: var(--e-6);
	padding-top: var(--e-5);
	border-top: 1px solid var(--e-line-dark);
	display: grid;
	gap: var(--e-3);
}

.edore-drawer__totals {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	font-size: var(--e-fs-sm);
	color: var(--e-on-dark-soft);
}

.edore-drawer__totals strong {
	font-family: var(--e-serif);
	font-size: var(--e-fs-lg);
	font-weight: 400;
	color: var(--e-champagne);
}

.edore-drawer__note {
	margin: 0;
	font-size: var(--e-fs-xs);
	color: rgba(246, 241, 233, 0.42);
}

.edore-drawer__foot .edore-btn--primary {
	background: var(--e-ivory);
	color: var(--e-black);
	border-color: var(--e-ivory);
}

.edore-drawer__foot .edore-btn--primary:hover {
	background: var(--e-champagne);
	border-color: var(--e-champagne);
}

.edore-drawer__foot .edore-btn--ghost {
	color: var(--e-ivory);
	border-color: var(--e-line-dark);
}

.edore-drawer__foot .edore-linkbtn {
	justify-self: center;
	color: var(--e-on-dark-soft);
}

/* ------------------------------------------------------- 6. Cart page */
.woocommerce table.shop_table {
	width: 100%;
	margin: 0 0 var(--e-6);
	border: 0;
	border-collapse: collapse;
	border-radius: 0;
	font-size: var(--e-fs-sm);
}

.woocommerce table.shop_table th {
	padding: 0 0 var(--e-4);
	border-bottom: 1px solid var(--e-line);
	font-size: var(--e-fs-xs);
	font-weight: 400;
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
	color: var(--e-ink-soft);
	text-align: start;
}

.woocommerce table.shop_table td {
	padding: var(--e-5) var(--e-2) var(--e-5) 0;
	border-top: 0;
	border-bottom: 1px solid var(--e-line-soft);
	vertical-align: middle;
}

.woocommerce table.cart img {
	width: 78px;
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
}

.woocommerce table.cart .product-name a {
	font-size: var(--e-fs-md);
}

.woocommerce table.cart .product-name a:hover {
	color: var(--e-gold);
}

.woocommerce a.remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	color: var(--e-ink-soft) !important;
	font-size: 1.1rem;
	border-radius: 50%;
}

.woocommerce a.remove:hover {
	background: var(--e-warm);
	color: var(--e-ink) !important;
}

.woocommerce table.cart td.actions {
	padding-top: var(--e-5);
	border-bottom: 0;
}

.woocommerce .cart .coupon {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-2);
	align-items: center;
}

.woocommerce .cart .coupon #coupon_code {
	width: auto;
	min-width: 180px;
}

.woocommerce .cart-collaterals {
	display: grid;
	justify-content: end;
}

.woocommerce .cart-collaterals .cart_totals {
	width: min(460px, 100%);
	padding: var(--e-6);
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
	float: none;
}

.woocommerce .cart_totals h2 {
	margin: 0 0 var(--e-4);
	font-size: var(--e-fs-xs);
	font-weight: 400;
	letter-spacing: var(--e-track-wide);
	text-transform: uppercase;
	color: var(--e-gold);
}

.woocommerce .cart_totals table.shop_table td,
.woocommerce .cart_totals table.shop_table th {
	padding: var(--e-3) 0;
	border-bottom: 1px solid var(--e-line-soft);
	background: transparent;
}

.woocommerce .cart_totals .order-total td,
.woocommerce .cart_totals .order-total th {
	border-bottom: 0;
	font-family: var(--e-serif);
	font-size: var(--e-fs-lg);
	color: var(--e-ink);
}

.woocommerce .wc-proceed-to-checkout {
	padding: var(--e-4) 0 0;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
}

.woocommerce .cart-empty {
	font-family: var(--e-serif);
	font-size: var(--e-fs-xl);
	text-align: center;
}

.woocommerce .return-to-shop {
	text-align: center;
}

.woocommerce .cross-sells {
	margin-top: var(--e-9);
}

.woocommerce .cross-sells > h2 {
	margin-bottom: var(--e-5);
	font-size: var(--e-fs-xs);
	font-weight: 400;
	letter-spacing: var(--e-track-wide);
	text-transform: uppercase;
	color: var(--e-gold);
}

/* Mobile: turn the cart table into cards using WooCommerce data-title */
@media (max-width: 768px) {
	.woocommerce table.shop_table thead {
		display: none;
	}

	.woocommerce table.cart tr {
		display: grid;
		grid-template-columns: 88px 1fr;
		gap: var(--e-2) var(--e-4);
		padding: var(--e-4) 0;
		border-bottom: 1px solid var(--e-line-soft);
	}

	.woocommerce table.cart td {
		padding: 0;
		border: 0;
	}

	.woocommerce table.cart td.product-remove {
		grid-column: 2;
		justify-self: end;
		order: 1;
	}

	.woocommerce table.cart td.product-thumbnail {
		grid-row: 1 / span 4;
		display: block !important;
	}

	.woocommerce table.cart td.product-name {
		order: 2;
	}

	.woocommerce table.cart td.product-price::before,
	.woocommerce table.cart td.product-subtotal::before {
		content: attr(data-title) ": ";
		font-size: var(--e-fs-xs);
		color: var(--e-ink-soft);
	}

	.woocommerce table.cart td.actions {
		grid-column: 1 / -1;
	}

	.woocommerce .cart-collaterals .cart_totals {
		width: 100%;
	}
}

/* --------------------------------------------------------- 7. Checkout */
.woocommerce-checkout .edore-main--woo {
	padding-bottom: clamp(50px, 6vw, 90px);
}

.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: clamp(28px, 4vw, 64px);
	align-items: start;
	max-width: var(--e-wrap);
	margin-inline: auto;
	padding-inline: var(--e-gutter);
}

.woocommerce-checkout #customer_details {
	grid-column: 1;
}

.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading {
	margin: 0 0 var(--e-4);
	font-size: var(--e-fs-xs);
	font-weight: 400;
	letter-spacing: var(--e-track-wide);
	text-transform: uppercase;
	color: var(--e-gold);
}

.woocommerce-checkout #order_review_heading {
	grid-column: 2;
	margin-bottom: var(--e-3);
}

.woocommerce-checkout #order_review {
	grid-column: 2;
	padding: var(--e-6);
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
	margin-bottom: var(--e-7);
}

.woocommerce-checkout #order_review table.shop_table {
	margin-bottom: var(--e-4);
}

.woocommerce-checkout #order_review table.shop_table td,
.woocommerce-checkout #order_review table.shop_table th {
	padding: var(--e-3) 0;
	background: transparent;
}

.woocommerce-checkout #order_review .order-total td,
.woocommerce-checkout #order_review .order-total th {
	font-family: var(--e-serif);
	font-size: var(--e-fs-lg);
	border-bottom: 0;
}

.woocommerce-checkout #payment {
	background: transparent;
	border-radius: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: 0 0 var(--e-4);
	border-bottom: 1px solid var(--e-line-soft);
}

.woocommerce-checkout #payment ul.payment_methods li {
	margin-bottom: var(--e-3);
	font-size: var(--e-fs-sm);
	list-style: none;
}

.woocommerce-checkout #payment div.payment_box {
	margin-top: var(--e-3);
	padding: var(--e-4);
	background: rgba(9, 9, 9, 0.04);
	border-radius: var(--e-radius);
	font-size: var(--e-fs-sm);
	color: var(--e-ink-soft);
}

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

.woocommerce-checkout #payment .form-row.place-order {
	padding: var(--e-4) 0 0;
	margin: 0;
}

.woocommerce-checkout #place_order {
	width: 100%;
	min-height: 56px;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin-bottom: var(--e-3);
	font-size: var(--e-fs-xs);
}

.woocommerce-checkout-review-order-table .product-name {
	font-size: var(--e-fs-sm);
}

.woocommerce-form-coupon-toggle,
.woocommerce-form-login-toggle {
	grid-column: 1 / -1;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	grid-column: 1 / -1;
	margin: 0 0 var(--e-6);
	padding: var(--e-5);
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
	border-radius: var(--e-radius);
}

.woocommerce-order,
.woocommerce-thankyou-order-received {
	max-width: var(--e-wrap-narrow);
	margin-inline: auto;
	padding-inline: var(--e-gutter);
}

.woocommerce-thankyou-order-received {
	padding-block: var(--e-6);
	font-family: var(--e-serif);
	font-size: var(--e-fs-xl);
	text-align: center;
}

.woocommerce ul.order_details {
	display: flex;
	flex-wrap: wrap;
	gap: var(--e-5);
	margin: 0 0 var(--e-7);
	padding: var(--e-5);
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
	list-style: none;
}

.woocommerce ul.order_details li {
	border: 0;
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-mid);
	text-transform: uppercase;
	color: var(--e-ink-soft);
}

.woocommerce ul.order_details li strong {
	display: block;
	margin-top: 4px;
	font-family: var(--e-serif);
	font-size: var(--e-fs-md);
	letter-spacing: 0;
	text-transform: none;
	color: var(--e-ink);
}

@media (max-width: 900px) {
	.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
	}

	.woocommerce-checkout #customer_details,
	.woocommerce-checkout #order_review,
	.woocommerce-checkout #order_review_heading {
		grid-column: 1;
	}
}

/* ------------------------------------------------------ 8. My account */
.woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: clamp(24px, 4vw, 60px);
	max-width: var(--e-wrap);
	margin-inline: auto;
	padding: 0 var(--e-gutter) clamp(50px, 6vw, 90px);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	display: grid;
	gap: var(--e-1);
	border-top: 1px solid var(--e-line);
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: var(--e-3) 0;
	border-bottom: 1px solid var(--e-line-soft);
	font-size: var(--e-fs-sm);
	color: var(--e-ink-soft);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	color: var(--e-ink);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	border-bottom-color: var(--e-gold);
}

.woocommerce-account .woocommerce-MyAccount-content {
	min-width: 0;
}

.woocommerce-account:not(.logged-in) .woocommerce {
	grid-template-columns: 1fr;
	max-width: var(--e-wrap-narrow);
}

.woocommerce-account .col2-set {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: clamp(20px, 3vw, 48px);
	width: 100%;
}

.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2 {
	width: 100%;
	float: none;
}

.woocommerce-account .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: center;
	gap: var(--e-2);
}

.woocommerce-account .woocommerce-form-login__rememberme input,
.woocommerce-account input[type="checkbox"] {
	width: auto;
	min-height: 0;
}

.woocommerce-account .lost_password {
	margin-top: var(--e-3);
	font-size: var(--e-fs-sm);
}

.woocommerce-EditAccountForm fieldset {
	margin: var(--e-6) 0 0;
	padding: var(--e-5) 0 0;
	border: 0;
	border-top: 1px solid var(--e-line-soft);
}

.woocommerce-EditAccountForm legend {
	padding: 0;
	font-size: var(--e-fs-xs);
	letter-spacing: var(--e-track-wide);
	text-transform: uppercase;
	color: var(--e-gold);
}

.woocommerce-orders-table__cell-order-actions .button,
.woocommerce-orders-table .button {
	min-height: 40px;
	padding-inline: var(--e-4);
	font-size: var(--e-fs-xs);
}

@media (max-width: 860px) {
	.woocommerce-account .woocommerce {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------- 9. Reviews */
.edore-reviews-sec {
	padding-block: clamp(40px, 5vw, 72px);
	background: var(--e-warm);
}

#reviews #comments ol.commentlist {
	margin: 0 0 var(--e-6);
	padding: 0;
	list-style: none;
}

#reviews #comments ol.commentlist li {
	margin-bottom: var(--e-5);
	padding-bottom: var(--e-5);
	border-bottom: 1px solid var(--e-line-soft);
}

#reviews #comments ol.commentlist li .comment_container {
	display: flex;
	gap: var(--e-4);
	padding: 0;
	background: transparent;
	border: 0;
}

#reviews #comments ol.commentlist li img.avatar {
	position: static;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 50%;
}

#reviews #comments ol.commentlist li .comment-text {
	margin: 0;
	padding: 0;
	border: 0;
}

#reviews .comment-reply-title {
	display: block;
	margin-bottom: var(--e-3);
	font-size: var(--e-fs-md);
}

#reviews #respond {
	margin-top: var(--e-5);
}

#reviews .comment-form-rating label {
	display: block;
	margin-bottom: var(--e-2);
}

#reviews p.stars a {
	color: var(--e-gold);
}

#reviews textarea,
#reviews input[type="text"],
#reviews input[type="email"] {
	width: 100%;
	padding: var(--e-3) var(--e-4);
	background: transparent;
	border: 1px solid var(--e-line);
	border-radius: var(--e-radius);
}

.woocommerce-noreviews {
	color: var(--e-ink-soft);
	font-size: var(--e-fs-sm);
}

/* Product page sticky summary off on small screens */
@media (max-width: 1024px) {
	.edore-product__grid {
		grid-template-columns: 1fr;
	}

	.edore-product__summary {
		position: static;
	}
}

/* Reserve room for the sticky purchase bar */
@media (max-width: 700px) {
	body.edore-has-stickybar .edore-footer {
		padding-bottom: 90px;
	}
}

/* ==========================================================================
   10. WooCommerce Blocks — cart & checkout
   WooCommerce ships block-based cart and checkout pages by default. Their own
   stylesheet stays loaded on those pages; this section layers the EDORÉ
   design language on top instead of fighting it.
   ========================================================================== */

.edore-woohead {
	padding: clamp(40px, 5vw, 72px) 0 var(--e-5);
	background: var(--e-ivory);
	text-align: center;
}

.edore-woohead .edore-eyebrow {
	justify-content: center;
}

.edore-woohead__title {
	font-family: var(--e-serif);
	font-size: var(--e-fs-2xl);
	font-weight: 300;
}

body.edore-lang-he .edore-woohead__title,
body.edore-lang-ar .edore-woohead__title {
	font-family: var(--e-sans);
	font-weight: 200;
}

/* Block content has no theme wrapper — give it the EDORÉ measure. */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	max-width: var(--e-wrap);
	margin-inline: auto;
	padding: var(--e-6) var(--e-gutter) clamp(50px, 6vw, 90px);
}

.wc-block-components-main,
.wc-block-components-sidebar {
	min-width: 0;
}

/* Typography */
.wc-block-components-title,
.wc-block-cart__submit-container + .wc-block-components-title,
.wp-block-woocommerce-checkout h2,
.wc-block-components-checkout-step__title {
	font-family: var(--e-sans);
	font-weight: 400;
	letter-spacing: 0;
	color: var(--e-ink);
	text-transform: none;
}

.wc-block-components-checkout-step__heading {
	margin-block: 0 var(--e-2);
}

.wc-block-components-checkout-step__description {
	color: var(--e-ink-soft);
	font-size: var(--e-fs-sm);
}

.wc-block-cart__empty-cart__title {
	font-family: var(--e-serif);
	font-weight: 300;
}

/* Fields */
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="number"],
.wc-block-components-textarea,
.wc-blocks-components-select__select,
.wc-block-components-combobox-control input.components-combobox-control__input {
	min-height: 50px;
	background: transparent;
	color: var(--e-ink);
	border: 1px solid var(--e-line);
	border-radius: var(--e-radius);
	font-family: var(--e-sans);
	font-size: var(--e-fs-base);
	font-weight: 300;
}

.wc-block-components-text-input input:focus,
.wc-block-components-textarea:focus,
.wc-blocks-components-select__select:focus {
	outline: none;
	border-color: var(--e-ink);
	box-shadow: none;
}

.wc-block-components-text-input label,
.wc-block-components-checkout-step__container label {
	color: var(--e-ink-soft);
}

/* Panels, radios and step containers */
.wc-block-components-radio-control-accordion-option,
.wc-block-components-radio-control__option,
.wc-block-components-shipping-rates-control__package,
.wc-block-checkout__payment-method .wc-block-components-radio-control {
	border-color: var(--e-line) !important;
	border-radius: var(--e-radius);
}

.wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	border-color: var(--e-gold) !important;
	box-shadow: inset 0 0 0 1px var(--e-gold);
}

.wc-block-components-checkout-step {
	border-color: var(--e-line-soft);
}

/* Order summary / sidebar as an EDORÉ card */
.wc-block-components-sidebar .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-cart__totals-title + .wc-block-components-totals-wrapper {
	border-color: var(--e-line-soft);
}

.wc-block-components-sidebar-layout .wc-block-components-sidebar {
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
	border-radius: var(--e-radius);
	padding: var(--e-5);
}

.wc-block-components-totals-item__label {
	color: var(--e-ink-soft);
	font-size: var(--e-fs-sm);
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: var(--e-serif);
	font-size: var(--e-fs-lg);
	color: var(--e-ink);
}

.wc-block-components-product-price__value,
.wc-block-components-formatted-money-amount {
	font-family: var(--e-serif);
}

/* Cart lines */
.wc-block-cart-items__row,
.wc-block-cart-item__wrap {
	border-color: var(--e-line-soft);
}

.wc-block-cart-item__image img,
.wc-block-components-order-summary-item__image img {
	background: var(--e-warm);
	border: 1px solid var(--e-line-soft);
}

.wc-block-components-product-name {
	font-size: var(--e-fs-md);
	color: var(--e-ink);
}

.wc-block-components-product-name:hover {
	color: var(--e-gold);
}

.wc-block-components-quantity-selector {
	border-color: var(--e-line);
	border-radius: var(--e-radius);
}

.wc-block-components-quantity-selector__button {
	color: var(--e-ink-soft);
}

/* Buttons */
.wc-block-components-button:not(.is-link) {
	background: var(--e-black);
	color: var(--e-ivory);
	border: 1px solid var(--e-black);
	border-radius: var(--e-radius);
	font-family: var(--e-sans);
	font-size: var(--e-fs-sm);
	font-weight: 400;
	letter-spacing: var(--e-track-mid);
	min-height: 52px;
}

.wc-block-components-button:not(.is-link):hover {
	background: var(--e-soft);
	border-color: var(--e-soft);
	color: var(--e-ivory);
	opacity: 1;
}

.wc-block-components-button.is-link {
	color: var(--e-ink-soft);
}

.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	width: 100%;
}

/* Notices inside blocks */
.wc-block-components-notice-banner {
	border-radius: var(--e-radius);
}

/* The block cart/checkout own their layout below 900px; keep our rhythm. */
@media (max-width: 900px) {
	.wp-block-woocommerce-cart,
	.wp-block-woocommerce-checkout {
		padding-top: var(--e-5);
	}

	.wc-block-components-sidebar-layout .wc-block-components-sidebar {
		padding: var(--e-4);
	}
}

/* Block cart / checkout pages arrive through page.php: no editorial measure,
   no extra top padding — the blocks bring their own container. */
.edore-page--woo {
	padding-block: 0 0;
}

.edore-page__woo {
	width: 100%;
}

/* Drawer notices (quantity limits, stock messages) and fixed-quantity lines. */
.edore-drawer__notice {
	margin: 0;
	max-height: 0;
	overflow: hidden;
	padding-inline: var(--e-5);
	background: rgba(185, 154, 98, 0.14);
	border-bottom: 1px solid transparent;
	color: var(--e-champagne);
	font-size: var(--e-fs-sm);
	transition: max-height var(--e-t), padding-block var(--e-t), border-color var(--e-t);
}

.edore-drawer__notice.is-visible {
	max-height: 8em;
	padding-block: var(--e-3);
	border-bottom-color: var(--e-line-dark);
}

.edore-qty--fixed {
	justify-content: center;
	min-width: 44px;
	padding: 6px 0;
}

.edore-qty__btn[disabled] {
	opacity: 0.35;
	cursor: not-allowed;
}

.edore-add.is-loading,
.edore-product form.cart.is-adding .single_add_to_cart_button {
	opacity: 0.6;
	pointer-events: none;
}

/* Inline add-to-cart error (WooCommerce validation message, shown in place). */
.edore-product__aterror {
	display: none;
	margin: 0 0 var(--e-4);
	padding: var(--e-3) var(--e-4);
	background: #f6e9e6;
	border-inline-start: 2px solid #b4553f;
	border-radius: var(--e-radius);
	color: var(--e-ink);
	font-size: var(--e-fs-sm);
}

.edore-product__aterror.is-visible {
	display: block;
}

/* WooCommerce now supplies the inner gallery markup (wrapper div + anchor).
   Make those layers fill the EDORÉ frame so the visual result is unchanged. */
.edore-gallery__slide .woocommerce-product-gallery__image,
.edore-gallery__slide .woocommerce-product-gallery__image > a {
	display: block;
	width: 100%;
	height: 100%;
}

.edore-gallery__slide .woocommerce-product-gallery__image > a {
	cursor: zoom-in;
}

.edore-gallery__slide .woocommerce-product-gallery__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: clamp(10px, 3vw, 34px);
}


/* --------------------------------------------------------------------------
   Mobile product-image presentation
   Keep the original product files untouched. On small screens we crop the
   *display* slightly by scaling from the bottom edge, removing excessive
   empty space baked into the source photography while keeping the product
   itself fully visible. SKU-specific tuning is used for the short mask jar.
   -------------------------------------------------------------------------- */
@media (max-width: 700px) {
	.edore-product__top {
		padding-top: 18px;
	}

	.edore-product__grid {
		gap: 22px;
	}

	.edore-product__media {
		margin-inline: calc(var(--e-gutter) * -0.25);
	}

	.edore-gallery__slide {
		overflow: hidden;
	}

	.edore-gallery__slide .woocommerce-product-gallery__image img {
		padding: 0;
		transform: scale(1.10);
		transform-origin: 50% 100%;
		transition: transform 300ms ease;
	}

	/* Short jar: the original photo contains considerably more empty headroom. */
	.edore-gallery--sku-edore-mask-500 .edore-gallery__slide .woocommerce-product-gallery__image img {
		transform: scale(1.34);
		transform-origin: 50% 100%;
	}

	/* Smaller bottles can safely use a little more visual fill on mobile. */
	.edore-gallery--sku-edore-oil-50 .edore-gallery__slide .woocommerce-product-gallery__image img,
	.edore-gallery--sku-edore-perfume-100 .edore-gallery__slide .woocommerce-product-gallery__image img {
		transform: scale(1.16);
		transform-origin: 50% 100%;
	}

	.edore-gallery--sku-edore-protein-100 .edore-gallery__slide .woocommerce-product-gallery__image img {
		transform: scale(1.12);
		transform-origin: 50% 100%;
	}

	/* Keep thumbnails natural and unscaled. */
	.edore-gallery__thumb img {
		transform: none !important;
		padding: 4px;
	}

	/* Keep the gallery controls reachable over the tighter image crop. */
	.edore-gallery__nav {
		width: 38px;
		height: 38px;
	}

	.edore-gallery__zoom {
		width: 36px;
		height: 36px;
	}
}


/* ==========================================================================
   11. GOLD SYSTEM — WooCommerce surfaces (1.2.0)
   Surface treatment only. No layout, cart, checkout or gallery behaviour is
   altered here — in particular the mobile gallery block above is untouched.
   ========================================================================== */

/* ------------------------------------------- 11.1 Premium product cards */
.edore-card__media {
	border: var(--e-hairline-faint);
	background: var(--e-warm);
}

.edore-sec--black .edore-card__media,
.edore-sec--news .edore-card__media {
	background: #100f0e;
	border-color: rgba(198, 161, 91, 0.22);
}

/* Decorative editorial index (01, 02, 03) behind the card image.
   Purely presentational — set via inline custom property from PHP. */
.edore-card__media::before {
	content: attr(data-edore-index);
	position: absolute;
	top: clamp(6px, 1.4vw, 14px);
	inset-inline-end: clamp(8px, 1.6vw, 18px);
	z-index: 1;
	font-family: var(--e-serif);
	font-size: clamp(2.1rem, 4.4vw, 3.4rem);
	line-height: 1;
	letter-spacing: 0.02em;
	color: var(--edore-gold);
	opacity: 0.16;
	pointer-events: none;
	transition: opacity var(--e-t);
}

.edore-card:hover .edore-card__media::before {
	opacity: 0.3;
}

/* Restrained hover: 1.02 scale, nothing more. */
.edore-card:hover .edore-card__img {
	transform: scale(1.02);
}

.edore-card__body {
	padding-top: var(--e-4);
	border-top: var(--e-hairline-faint);
	margin-top: var(--e-4);
}

.edore-card__eyebrow {
	color: var(--edore-gold-deep);
}

/* Gold price — the single strongest gold note on the card. */
.edore-card__price,
.edore-card__price ins {
	color: var(--edore-gold-deep);
	font-family: var(--e-serif);
}

.edore-card__price del {
	color: var(--e-gray);
}

.edore-sec--black .edore-card__price,
.edore-sec--black .edore-card__price ins {
	color: var(--edore-gold-light);
}

/* "לפרטים →" revealed on hover, always present for keyboard and touch. */
.edore-card__view {
	color: var(--e-ink-soft);
	border-bottom: 1px solid transparent;
}

.edore-card__view:hover,
.edore-card:hover .edore-card__view {
	color: var(--edore-gold-deep);
	border-bottom-color: var(--edore-gold);
}

@media (hover: hover) and (min-width: 1025px) {
	.edore-card__view {
		opacity: 0;
		transform: translateY(4px);
		transition: opacity var(--e-t), transform var(--e-t), color var(--e-t-fast);
	}

	.edore-card:hover .edore-card__view,
	.edore-card:focus-within .edore-card__view {
		opacity: 1;
		transform: none;
	}
}

.edore-badge--sale {
	background: var(--edore-gold);
	color: var(--e-black);
}

/* ------------------------------------------- 11.2 Single product gold */
.edore-product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	color: var(--edore-gold-deep);
}

.edore-trust {
	border-top: var(--e-hairline-faint);
}

.edore-trust .edore-icon {
	color: var(--edore-gold);
}

.edore-acc {
	border-top: var(--e-hairline);
}

.edore-acc__item {
	border-bottom: var(--e-hairline-faint);
}

.edore-acc__en {
	color: var(--edore-gold-deep);
}

.woocommerce .star-rating {
	color: var(--edore-gold);
}

.edore-stock--in {
	color: var(--edore-gold-deep);
}

/* ------------------------------------------- 11.3 Shop + cart accents */
.edore-shopfilter__item {
	border-color: rgba(198, 161, 91, 0.3);
}

.edore-shopfilter__item:hover {
	border-color: var(--edore-gold);
	color: var(--edore-gold-deep);
}

.edore-shopfilter__item.is-active {
	background: var(--e-black);
	border-color: var(--e-black);
	color: var(--edore-gold-light);
}

.edore-shop__bar {
	border-bottom: var(--e-hairline-faint);
}

.edore-cartlist__item {
	border-bottom: var(--e-hairline-faint);
}

.edore-cartlist__price {
	color: var(--edore-gold-light);
}

.edore-drawer__totals strong {
	color: var(--edore-gold-light);
}

.edore-drawer__foot {
	border-top: var(--e-hairline-faint);
}

.edore-drawer__foot .edore-btn--primary {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.edore-drawer__foot .edore-btn--primary:hover {
	background: var(--e-ivory);
	border-color: var(--e-ivory);
	color: var(--e-black);
}

.edore-suggest__add:hover {
	border-color: var(--edore-gold);
	color: var(--edore-gold-light);
}

/* Classic cart / checkout: gold totals and hairlines, no structural change. */
.woocommerce .cart_totals h2,
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading,
.woocommerce .cross-sells > h2 {
	color: var(--edore-gold-deep);
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce ul.order_details {
	border: var(--e-hairline-faint);
}

.woocommerce .cart_totals .order-total td,
.woocommerce .cart_totals .order-total th,
.woocommerce-checkout #order_review .order-total td,
.woocommerce-checkout #order_review .order-total th {
	color: var(--edore-gold-deep);
}

.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
	border-color: var(--edore-gold);
}

.woocommerce-message,
.woocommerce-info {
	border-inline-start-color: var(--edore-gold);
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit:hover {
	border-color: var(--edore-gold);
}

/* Place order + add to cart: the two moments that earn a gold field. */
.woocommerce-checkout #place_order,
.edore-product form.cart .single_add_to_cart_button {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.woocommerce-checkout #place_order:hover,
.edore-product form.cart .single_add_to_cart_button:hover {
	background: var(--e-black);
	color: var(--edore-gold);
	border-color: var(--e-black);
}

.edore-stickybar {
	border-top: var(--e-hairline-faint);
}

.edore-stickybar__cta {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.edore-stickybar__price {
	color: var(--edore-gold-light);
}

.edore-gallery__thumb.is-active,
.edore-gallery__thumb:hover {
	border-color: var(--edore-gold);
}

.edore-woohead__title {
	color: var(--e-ink);
}

.edore-account-nav .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	border-bottom-color: var(--edore-gold);
	color: var(--edore-gold-deep);
}

/* Block cart/checkout (only if the shop ever switches back to blocks). */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--edore-gold-deep);
}


/* ==========================================================================
   12. GOLD-FORWARD IDENTITY — WooCommerce (1.3.0)
   Colour and surface only. The mobile product-image block in section 10 above
   is deliberately untouched.
   ========================================================================== */

/* --------------------------------------------- 12.1 Product cards */
.edore-card__media {
	border: 1px solid rgba(198, 161, 91, 0.28);
	transition: border-color var(--e-t);
}

.edore-card:hover .edore-card__media {
	border-color: rgba(198, 161, 91, 0.55);
}

.edore-sec--air .edore-card__media {
	background: linear-gradient(180deg, #f6efe1 0%, #efe4cf 100%);
}

/* Decorative index: pale gold, deepening slightly on hover. */
.edore-card__media::before {
	color: var(--edore-gold-deep);
	opacity: 0.14;
}

.edore-card:hover .edore-card__media::before {
	opacity: 0.26;
}

/* Thin gold divider under the product name. */
.edore-card__title {
	padding-bottom: var(--e-3);
	border-bottom: 1px solid rgba(198, 161, 91, 0.32);
}

.edore-card__body {
	border-top: 1px solid rgba(198, 161, 91, 0.3);
}

.edore-card__eyebrow {
	color: var(--edore-gold-deep);
	letter-spacing: 0.24em;
}

/* Price: the strongest gold note on the card. */
.edore-card__price,
.edore-card__price ins,
.edore-card__price .amount,
.edore-card__price bdi {
	color: var(--edore-gold-deep);
	font-weight: 400;
}

.edore-card__price del,
.edore-card__price del bdi {
	color: var(--e-gray);
}

.edore-sec--black .edore-card__price,
.edore-sec--black .edore-card__price ins,
.edore-sec--black .edore-card__price bdi {
	color: var(--edore-gold-light);
}

.edore-card__view {
	color: var(--edore-gold-deep);
}

.edore-card__view .edore-icon {
	color: var(--edore-gold);
}

.edore-card__view:hover,
.edore-card:hover .edore-card__view {
	color: var(--edore-gold-deep);
	border-bottom-color: var(--edore-gold);
}

.edore-badge--sale {
	background: var(--edore-gold);
	color: var(--e-black);
}

/* Shop / archive surfaces pick up the champagne air too. */
.edore-shop,
.edore-related-head,
.woocommerce .related,
.woocommerce .up-sells {
	background: var(--e-champagne-air);
}

.edore-shopfilter__item {
	border-color: rgba(198, 161, 91, 0.4);
	color: var(--e-ink-soft);
}

.edore-shopfilter__item:hover {
	border-color: var(--edore-gold);
	color: var(--edore-gold-deep);
}

.edore-shopfilter__item.is-active {
	background: var(--e-black);
	border-color: var(--e-black);
	color: var(--edore-gold-light);
}

.edore-shop__bar {
	border-bottom: 1px solid rgba(198, 161, 91, 0.3);
}

.edore-shop__count {
	color: var(--edore-gold-deep);
}

/* ------------------------------------------- 12.2 Single product */
.edore-product__top {
	background: var(--e-champagne-air);
}

.edore-product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins,
.woocommerce div.product p.price bdi {
	color: var(--edore-gold-deep);
}

.edore-eyebrow--product {
	color: var(--edore-gold-deep);
}

.edore-trust {
	border-top: 1px solid rgba(198, 161, 91, 0.35);
}

.edore-trust .edore-icon {
	color: var(--edore-gold);
}

.edore-acc {
	border-top: 1px solid rgba(198, 161, 91, 0.4);
}

.edore-acc__item {
	border-bottom: 1px solid rgba(198, 161, 91, 0.28);
}

.edore-acc__en {
	color: var(--edore-gold-deep);
	letter-spacing: 0.24em;
}

.edore-acc__sign::before,
.edore-acc__sign::after {
	background: var(--edore-gold-deep);
}

.woocommerce .star-rating,
.woocommerce .star-rating::before,
#reviews p.stars a {
	color: var(--edore-gold);
}

.edore-stock--in {
	color: var(--edore-gold-deep);
}

.edore-gallery__thumb.is-active,
.edore-gallery__thumb:hover {
	border-color: var(--edore-gold);
}

.edore-gallery__nav,
.edore-gallery__zoom {
	border-color: rgba(198, 161, 91, 0.4);
	color: var(--edore-gold-deep);
}

.edore-gallery__nav:hover,
.edore-gallery__zoom:hover {
	background: var(--e-black);
	color: var(--edore-gold-light);
}

/* Add to cart stays gold — it is the primary action on the page. */
.edore-product form.cart .single_add_to_cart_button {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.edore-product form.cart .single_add_to_cart_button:hover {
	background: var(--edore-gold-light);
	border-color: var(--edore-gold-light);
	color: var(--e-black);
}

.edore-stickybar {
	border-top: 1px solid rgba(198, 161, 91, 0.35);
}

.edore-stickybar__cta {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.edore-stickybar__price {
	color: var(--edore-gold-light);
}

/* Reviews on the product page. */
.edore-reviews-sec {
	background: var(--e-champagne-air);
}

/* ------------------------------------------- 12.3 Cart drawer + cart */
.edore-drawer__head {
	border-bottom: 1px solid rgba(198, 161, 91, 0.32);
}

.edore-drawer__head .edore-eyebrow {
	color: var(--edore-gold);
}

.edore-cartlist__item {
	border-bottom: 1px solid rgba(198, 161, 91, 0.22);
}

.edore-cartlist__price,
.edore-drawer__totals strong,
.edore-suggest__price {
	color: var(--edore-gold-light);
}

.edore-drawer__foot {
	border-top: 1px solid rgba(198, 161, 91, 0.32);
}

.edore-drawer__foot .edore-btn--primary {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.edore-drawer__foot .edore-btn--primary:hover {
	background: var(--edore-gold-light);
	border-color: var(--edore-gold-light);
	color: var(--e-black);
}

.edore-suggest__add:hover {
	border-color: var(--edore-gold);
	color: var(--edore-gold);
}

/* Classic cart and checkout: gold headings, totals and the primary action. */
.woocommerce .cart_totals h2,
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading,
.woocommerce .cross-sells > h2,
.woocommerce-EditAccountForm legend {
	color: var(--edore-gold-deep);
	letter-spacing: 0.22em;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce ul.order_details {
	background: linear-gradient(180deg, rgba(232, 210, 167, 0.32), rgba(243, 232, 209, 0.2));
	border: 1px solid rgba(198, 161, 91, 0.35);
}

.woocommerce .cart_totals .order-total td,
.woocommerce .cart_totals .order-total th,
.woocommerce-checkout #order_review .order-total td,
.woocommerce-checkout #order_review .order-total th,
.woocommerce ul.order_details li strong {
	color: var(--edore-gold-deep);
}

.woocommerce table.shop_table th {
	color: var(--edore-gold-deep);
}

.woocommerce table.shop_table td {
	border-bottom-color: rgba(198, 161, 91, 0.22);
}

.woocommerce table.cart img {
	border: 1px solid rgba(198, 161, 91, 0.28);
}

.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
	border-color: var(--edore-gold);
}

.woocommerce-message,
.woocommerce-info {
	background: linear-gradient(90deg, rgba(232, 210, 167, 0.4), rgba(243, 232, 209, 0.22));
	border-inline-start: 2px solid var(--edore-gold);
}

/* Place order and proceed to checkout are gold: the two decisive moments. */
.woocommerce-checkout #place_order,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
	background: var(--edore-gold);
	color: var(--e-black);
	border-color: var(--edore-gold);
}

.woocommerce-checkout #place_order:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--edore-gold-light);
	border-color: var(--edore-gold-light);
	color: var(--e-black);
}

/* My account. */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	border-top: 1px solid rgba(198, 161, 91, 0.4);
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	border-bottom: 1px solid rgba(198, 161, 91, 0.22);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	border-bottom-color: var(--edore-gold);
	color: var(--edore-gold-deep);
}

/* Page heads. */
.edore-page-hero,
.edore-woohead {
	background: var(--e-champagne-air);
}

.edore-woohead__title {
	color: var(--e-ink);
}

.edore-crumbs {
	background: var(--e-champagne-air);
}

.edore-crumbs a:hover {
	color: var(--edore-gold-deep);
}

/* Mobile: gold is not reduced, only resized. */
@media (max-width: 700px) {
	.edore-card__price,
	.edore-card__price bdi {
		font-size: var(--e-fs-md);
	}

	.edore-card__view {
		color: var(--edore-gold-deep);
	}
}

/* =====================================================================
   Live-audit repair pass (Aug 2026) — WooCommerce surfaces
   ===================================================================== */

/* --- Checkout desktop grid.
   Auto-placement put #order_review in grid row 2, below the full height of
   #customer_details, leaving a ~600px hole under the orphaned heading.
   Explicit rows pin the summary beside the fields; it also gently sticks
   while the customer scrolls the form. */
@media (min-width: 861px) {
	.woocommerce-checkout form.checkout {
		grid-template-rows: auto 1fr;
	}

	.woocommerce-checkout #customer_details {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	.woocommerce-checkout #order_review_heading {
		grid-column: 2;
		grid-row: 1;
	}

	.woocommerce-checkout #order_review {
		grid-column: 2;
		grid-row: 2;
		align-self: start;
		position: sticky;
		top: 96px;
	}
}

/* --- Reviews: keep the default WooCommerce form from breaking the brand.
   Gold stars, quiet meta text, framed comment box. */
.woocommerce #reviews .stars a,
.woocommerce p.stars a {
	color: var(--edore-gold, #b99a62);
}

.woocommerce #reviews .comment-reply-title {
	display: block;
	margin-bottom: var(--e-4);
	font-size: var(--e-fs-xs);
	font-weight: 400;
	letter-spacing: var(--e-track-wide);
	text-transform: uppercase;
	color: var(--e-gold);
}

.woocommerce #reviews textarea,
.woocommerce #reviews input[type="text"],
.woocommerce #reviews input[type="email"] {
	background: #fff;
	border: 1px solid var(--e-line-soft);
	border-radius: 0;
}

.woocommerce #reviews .comment-form-cookies-consent label {
	font-size: var(--e-fs-xs);
	color: var(--e-muted, #aaa59d);
}

/* --- Cart block: soften the pre-hydration skeleton flash so the two to
   three seconds of placeholders read as an intentional loading state. */
.wp-block-woocommerce-cart.is-loading * {
	animation-duration: 1.4s;
}

.wp-block-woocommerce-cart .wc-block-components-skeleton-element,
.wp-block-woocommerce-cart.is-loading span {
	border-radius: 0;
}

/* Cart block quantity / remove controls in brand tones. */
.wc-block-cart .wc-block-components-quantity-selector {
	border: 1px solid var(--e-line-soft);
	border-radius: 0;
}

.wc-block-cart .wc-block-cart-item__remove-link {
	color: var(--e-muted, #aaa59d);
}

/* =====================================================================
   Short checkout v2.1 (Aug 2026)
   Four required fields, each on its own full-width row. Inputs are 16px
   so iOS never zooms on focus, and every control clears 46px.
   ===================================================================== */

.woocommerce-checkout .form-row-wide {
	width: 100%;
	float: none;
	clear: both;
}

.woocommerce-checkout .woocommerce-billing-fields .form-row {
	margin-bottom: var(--e-4);
}

.woocommerce-checkout .woocommerce-billing-fields input.input-text,
.woocommerce-checkout .woocommerce-billing-fields select,
.woocommerce-checkout .woocommerce-billing-fields textarea {
	min-height: 46px;
	font-size: 16px;
}

/* The delivery-area select gets the same hairline treatment as the text
   inputs, plus a gold chevron instead of the browser default. */
.woocommerce-checkout select#billing_city,
.woocommerce-checkout select.edore-select {
	width: 100%;
	padding: 11px 14px;
	border: 1px solid var(--e-line-soft);
	border-radius: 0;
	background-color: #fff;
	background-image: linear-gradient(45deg, transparent 50%, var(--edore-gold, #b99a62) 50%),
		linear-gradient(135deg, var(--edore-gold, #b99a62) 50%, transparent 50%);
	background-size: 6px 6px, 6px 6px;
	background-repeat: no-repeat;
	color: inherit;
	font-family: inherit;
	-webkit-appearance: none;
	appearance: none;
}

body:not(.rtl) .woocommerce-checkout select#billing_city,
body:not(.rtl) .woocommerce-checkout select.edore-select {
	background-position: calc(100% - 20px) calc(50% + 2px), calc(100% - 14px) calc(50% + 2px);
	padding-inline-end: 40px;
}

body.rtl .woocommerce-checkout select#billing_city,
body.rtl .woocommerce-checkout select.edore-select {
	background-position: 14px calc(50% + 2px), 20px calc(50% + 2px);
	padding-inline-end: 14px;
	padding-inline-start: 40px;
}

.woocommerce-checkout select#billing_city:focus,
.woocommerce-checkout select.edore-select:focus {
	outline: none;
	border-color: var(--edore-gold, #b99a62);
}

/* Phone reads left-to-right even on the Hebrew and Arabic checkout. */
.woocommerce-checkout #billing_phone {
	direction: ltr;
	text-align: start;
}

body.rtl .woocommerce-checkout #billing_phone {
	text-align: right;
}

/* ---------------------------------------------------------------------
   Inline delivery-region chooser
   The real shipping radios, moved into the billing form so the customer
   picks their region once. The sidebar copy is hidden rather than
   unhooked, so WooCommerce's own totals markup stays untouched.
   ------------------------------------------------------------------ */

body.edore-ship-inline .woocommerce-checkout-review-order-table .woocommerce-shipping-totals,
body.edore-ship-inline .woocommerce-checkout-review-order-table tr.shipping {
	display: none;
}

.edore-shipopts {
	display: grid;
	gap: 8px;
	width: 100%;
}

.edore-shipopt {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 52px;
	padding: 12px 16px;
	border: 1px solid var(--e-line-soft);
	background: #fff;
	cursor: pointer;
	transition: border-color 200ms var(--e-e), background 200ms var(--e-e);
}

.edore-shipopt:hover {
	border-color: var(--edore-gold, #b99a62);
}

.edore-shipopt.is-selected {
	border-color: var(--edore-gold, #b99a62);
	background: rgba(185, 154, 98, 0.07);
}

/* The native input stays focusable for keyboard and screen readers; the
   gold ring beside it is what the customer actually sees. */
.edore-shipopt input.shipping_method {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

.edore-shipopt__mark {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	border: 1px solid var(--edore-gold, #b99a62);
	border-radius: 999px;
	position: relative;
}

.edore-shipopt.is-selected .edore-shipopt__mark::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 999px;
	background: var(--edore-gold, #b99a62);
}

.edore-shipopt__name {
	flex: 1 1 auto;
	font-size: 0.98rem;
	line-height: 1.3;
}

.edore-shipopt__cost {
	flex: 0 0 auto;
	font-family: var(--e-serif);
	font-size: 1rem;
	color: var(--edore-gold-deep, #9a7f4f);
	white-space: nowrap;
}

.edore-shipopt:focus-within {
	border-color: var(--edore-gold, #b99a62);
	outline: 2px solid rgba(185, 154, 98, 0.35);
	outline-offset: 2px;
}

@media (max-width: 600px) {
	.edore-shipopt {
		min-height: 56px;
		padding: 13px 14px;
	}

	.edore-shipopt__name {
		font-size: 0.94rem;
	}
}

/* =====================================================================
   Bundles v2.2 — curated badge, benefit line, add-on offer
   No SALE flashes anywhere: the struck original price carries the value
   message on its own, in the brand's register.
   ===================================================================== */

.edore-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	background: rgba(9, 9, 9, 0.86);
	border: 1px solid var(--edore-gold, #c6a15b);
	color: var(--edore-gold, #c6a15b);
	font-size: 0.7rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	white-space: nowrap;
}

.woocommerce div.product .edore-badge {
	margin-bottom: var(--e-3);
}

/* Benefit / gift line under the price — the thing that should catch the
   eye on the full set, rather than any discount wording. */
.edore-pnote {
	margin: 6px 0 0;
	font-size: 0.88rem;
	line-height: 1.5;
	color: var(--edore-gold-deep, #9a7f4f);
}

.woocommerce div.product .edore-pnote {
	margin: 10px 0 0;
	font-size: 0.98rem;
}

/* Struck original price stays quiet; the current price leads. */
.edore-card__price del,
.woocommerce div.product p.price del {
	opacity: 0.55;
	font-size: 0.85em;
	margin-inline-end: 8px;
	text-decoration-thickness: 1px;
}

.edore-card__price ins,
.woocommerce div.product p.price ins {
	text-decoration: none;
	background: none;
	font-weight: 500;
}

/* --- Add-on offer on the product page. */
.edore-addon {
	margin: var(--e-4) 0;
}

.edore-addon__box {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 16px;
	border: 1px solid var(--e-line-soft);
	background: rgba(198, 161, 91, 0.05);
	cursor: pointer;
	transition: border-color 200ms var(--e-e), background 200ms var(--e-e);
}

.edore-addon__box:hover {
	border-color: var(--edore-gold, #c6a15b);
}

.edore-addon input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

.edore-addon__mark {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	border: 1px solid var(--edore-gold, #c6a15b);
	position: relative;
}

.edore-addon input:checked ~ .edore-addon__mark::after {
	content: "";
	position: absolute;
	inset: 4px;
	background: var(--edore-gold, #c6a15b);
}

.edore-addon input:checked ~ .edore-addon__body .edore-addon__title {
	color: var(--edore-gold-deep, #9a7f4f);
}

.edore-addon input:focus-visible ~ .edore-addon__mark {
	outline: 2px solid var(--edore-gold, #c6a15b);
	outline-offset: 2px;
}

.edore-addon__body {
	flex: 1 1 auto;
	display: grid;
	gap: 2px;
}

.edore-addon__title {
	font-size: 0.98rem;
	line-height: 1.3;
}

.edore-addon__sub {
	font-size: 0.8rem;
	color: var(--e-muted, #aaa59d);
}

.edore-addon__price {
	flex: 0 0 auto;
	display: grid;
	justify-items: end;
	font-family: var(--e-serif);
}

.edore-addon__price del {
	font-size: 0.8rem;
	opacity: 0.5;
}

.edore-addon__price ins {
	text-decoration: none;
	background: none;
	color: var(--edore-gold-deep, #9a7f4f);
}

/* --- The same offer, once, in the cart drawer. */
.edore-cartoffer {
	margin: 0 var(--e-gutter) var(--e-4);
	padding: 14px 16px;
	border: 1px solid rgba(198, 161, 91, 0.4);
	background: rgba(198, 161, 91, 0.07);
}

.edore-cartoffer__title {
	margin: 0 0 8px;
	font-size: 0.75rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--edore-gold-deep, #9a7f4f);
}

.edore-cartoffer__row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	align-items: baseline;
	margin-bottom: 10px;
}

.edore-cartoffer__name {
	font-size: 0.94rem;
	line-height: 1.35;
}

.edore-cartoffer__price {
	font-family: var(--e-serif);
	white-space: nowrap;
	color: var(--edore-gold-deep, #9a7f4f);
}

.edore-cartoffer__btn {
	width: 100%;
	min-height: 44px;
	border: 1px solid var(--edore-gold, #c6a15b);
	background: transparent;
	color: var(--edore-gold-deep, #9a7f4f);
	font-family: inherit;
	font-size: 0.88rem;
	letter-spacing: 0.06em;
	cursor: pointer;
	transition: background 200ms var(--e-e), color 200ms var(--e-e);
}

.edore-cartoffer__btn:hover:not(:disabled) {
	background: var(--edore-gold, #c6a15b);
	color: #090909;
}

.edore-cartoffer__btn:disabled {
	opacity: 0.55;
	cursor: default;
}
