/* ==========================================================================
   Baladi Polish — refinements on top of boutique.css / rtl.css.
   Respects Laliv's standing decisions documented in those files: one font
   (Assistant) on Hebrew pages, logo on the start side, larger Hebrew product
   title, the English hero line, the small (not full-screen) search panel.
   ========================================================================== */

:root {
	--bp-ink: #2E201A;
	--bp-ink-soft: rgba(46, 32, 26, 0.72);
	--bp-muted: rgba(46, 32, 26, 0.55);
	--bp-gold: #C29B61;
	--bp-gold-deep: #A67C45;
	--bp-cream: #F8F5F2;
	--bp-paper: #FFFDFB;
	--bp-line: rgba(46, 32, 26, 0.12);
	--bp-line-strong: rgba(46, 32, 26, 0.28);
	--bp-wrap: 1280px;
	--bp-gutter: clamp(20px, 3.4vw, 40px);
	--bp-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* Fonts handed to the accessibility + cookie widgets (shadow DOM). */
:root {
	--bp-font: "Inter";
	--bp-title-font: "Cormorant Garamond";
	--bp-btn-case: uppercase;
	--bp-btn-track: 0.14em;
	--bp-btn-size: 11.5px;
	--bp-title-size: 22px;
	--bp-body-size: 13.5px;
	--bp-float-base: 20px;
}
html[dir="rtl"] {
	--bp-font: "Assistant";
	--bp-title-font: "Assistant";
	--bp-btn-case: none;
	--bp-btn-track: 0;
	--bp-btn-size: 15px;
	--bp-title-size: 21px;
	--bp-body-size: 15px;
}
@media (max-width: 767px) { :root { --bp-float-base: 14px; } }

/* Nothing may push the page sideways (the French header was 3px too wide). */
html, body { overflow-x: clip; }

::selection { background: rgba(194, 155, 97, 0.28); color: var(--bp-ink); }

/* Visible keyboard focus everywhere (WCAG 2.4.7), quiet for mouse users. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--bp-gold) !important;
	outline-offset: 2px !important;
	border-radius: 2px;
}

/* --------------------------------------------------------------------------
   One content width, aligned edge to edge: header, breadcrumbs, shop grid,
   product page and footer all start and end on the same lines.
   -------------------------------------------------------------------------- */
.elementor-location-header .elementor-element-hdr_sec > .elementor-container,
.elementor-location-header .elementor-element-hdr_sec .elementor-widget-wrap {
	max-width: none !important;
	padding: 0 !important;
}
.baladi-header-wrap { width: 100% !important; }
.baladi-header {
	max-width: calc(var(--bp-wrap) + 2 * var(--bp-gutter)) !important;
	padding-inline: var(--bp-gutter) !important;
	margin-inline: auto !important;
	gap: clamp(18px, 2.4vw, 34px) !important;
}

body.woocommerce-page .site-main,
body.woocommerce .site-main,
body.woocommerce-page main#content,
body.woocommerce main#content {
	max-width: calc(var(--bp-wrap) + 2 * var(--bp-gutter)) !important;
	width: 100% !important;
	padding-inline: var(--bp-gutter) !important;
	margin-inline: auto !important;
	box-sizing: border-box;
}

/* --------------------------------------------------------------------------
   Header navigation
   -------------------------------------------------------------------------- */
.baladi-nav { gap: 0 !important; }
.baladi-nav li a {
	padding-inline: clamp(9px, 1vw, 14px) !important;
	transition: color 0.25s var(--bp-ease);
	position: relative;
}
.baladi-nav li a::after {
	content: "";
	position: absolute;
	inset-inline: clamp(9px, 1vw, 14px);
	bottom: 24px;
	height: 1px;
	background: var(--bp-gold);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.35s var(--bp-ease);
}
.baladi-nav li a:hover::after,
.baladi-nav li a[aria-current="page"]::after { transform: scaleX(1); }

/* Hebrew: the Latin 10–13px uppercase sizing reads tiny in Assistant. */
html[dir="rtl"] .baladi-nav li a {
	font-size: 16px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
}
/* French labels are long ("Boucles d'oreilles") — tighter tracking keeps the
   row inside the header instead of pushing the cart off-screen. */
html[lang="fr"] .baladi-nav li a {
	letter-spacing: 0.12em !important;
	padding-inline: clamp(7px, 0.8vw, 12px) !important;
}
@media (max-width: 1280px) {
	html[lang="fr"] .baladi-nav li a { font-size: 11.5px !important; letter-spacing: 0.08em !important; }
}

/* --------------------------------------------------------------------------
   Language + currency — one quiet, jewellery-box control:
   [ $ USD ⌄ ]  |  EN  עב  FR
   -------------------------------------------------------------------------- */
.baladi-right { gap: clamp(12px, 1.4vw, 20px) !important; }

.baladi-header-currency {
	position: relative;
	margin: 0 !important;
	padding-inline-end: clamp(12px, 1.4vw, 18px);
}
.baladi-header-currency::after {
	content: "";
	position: absolute;
	inset-inline-end: 0;
	top: 50%;
	height: 16px;
	width: 1px;
	transform: translateY(-50%);
	background: var(--bp-line-strong);
}
.baladi-header-currency .yay-currency-custom-select__trigger {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 6px 2px !important;
	min-height: 0 !important;
	height: auto !important;
	gap: 6px !important;
	cursor: pointer;
}
.baladi-header-currency .yay-currency-custom-select__trigger:hover { border: 0 !important; }
.baladi-header-currency .yay-currency-custom-selected-option { gap: 5px !important; align-items: center; width: auto !important; }
.baladi-header-currency .yay-currency-custom-select__trigger { justify-content: flex-start !important; }
.baladi-header-currency .yay-currency-selected-option {
	font-family: "Inter", sans-serif !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em !important;
	color: var(--bp-ink) !important;
}
/* The flag becomes the currency sign, in gold. */
.baladi-header .baladi-header-currency .yay-currency-custom-selected-option .yay-currency-flag.selected,
.baladi-header-currency .yay-currency-flag.selected {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 0 !important;
	max-width: none !important;
	flex: none !important;
	margin: 0 !important;
	background-image: none !important;
	width: auto !important;
	height: auto !important;
	border-radius: 0 !important;
	font-family: "Inter", sans-serif !important;
	font-size: 12px !important;
	line-height: 1 !important;
	color: var(--bp-gold-deep);
}
.baladi-header-currency .yay-currency-flag.selected[data-country_code="us"]::before { content: "$"; }
.baladi-header-currency .yay-currency-flag.selected[data-country_code="il"]::before { content: "\20AA"; }
.baladi-header-currency .yay-currency-flag.selected[data-country_code="eu"]::before,
.baladi-header-currency .yay-currency-flag.selected[data-country_code="europeanunion"]::before { content: "\20AC"; }
.baladi-header-currency .yay-currency-custom-arrow svg {
	width: 11px !important;
	height: 11px !important;
	opacity: 0.55;
	transition: transform 0.3s var(--bp-ease);
}
.baladi-header-currency .yay-currency-custom-select.open .yay-currency-custom-arrow svg { transform: rotate(180deg); }

/* The open list: a small card, not a system menu. */
.baladi-header-currency .yay-currency-custom-options {
	min-width: 220px !important;
	padding: 6px !important;
	margin-top: 10px !important;
	background: var(--bp-paper) !important;
	border: 1px solid var(--bp-line) !important;
	border-radius: 4px !important;
	box-shadow: 0 18px 40px rgba(46, 32, 26, 0.12) !important;
	inset-inline-end: 0;
	inset-inline-start: auto !important;
}
.baladi-header-currency .yay-currency-custom-option-row {
	padding: 9px 10px !important;
	border-radius: 3px;
	border: 0 !important;
	transition: background 0.2s;
}
.baladi-header-currency .yay-currency-custom-option-row:hover { background: var(--bp-cream) !important; }
.baladi-header-currency .yay-currency-custom-option-row .yay-currency-flag { display: none !important; }
.baladi-header-currency .yay-currency-custom-option-row.selected { background: rgba(194, 155, 97, 0.1) !important; }
.bp-cur { display: inline-flex; align-items: baseline; gap: 10px; white-space: nowrap; }
.bp-cur__sym { width: 14px; text-align: center; color: var(--bp-gold-deep); font-size: 13px; }
.bp-cur__code { font-family: "Inter", sans-serif; font-size: 11px; font-weight: 600; letter-spacing: 0.14em; color: var(--bp-ink); }
.bp-cur__name { font-size: 12.5px; color: var(--bp-muted); }

/* Languages: three letters, the current one underlined in gold. */
.baladi-langs { gap: 4px !important; }
.baladi-langs .baladi-lang-sep { display: none !important; }
.baladi-langs .baladi-lang-link {
	font-family: "Inter", sans-serif !important;
	font-size: 11px !important;
	font-weight: 500;
	letter-spacing: 0.14em !important;
	padding: 6px 5px !important;
	opacity: 0.5;
	border-bottom: 0 !important;
	position: relative;
	transition: opacity 0.25s var(--bp-ease);
}
.baladi-langs .baladi-lang-link[aria-label="he"] { font-family: "Assistant", sans-serif !important; font-size: 13px !important; letter-spacing: 0 !important; }
.baladi-langs .baladi-lang-link:hover { opacity: 0.85; }
.baladi-langs .baladi-lang-link.is-current { opacity: 1; }
.baladi-langs .baladi-lang-link.is-current::after {
	content: "";
	position: absolute;
	left: 5px;
	right: 5px;
	bottom: 1px;
	height: 1px;
	background: var(--bp-gold);
}

/* --------------------------------------------------------------------------
   Mobile header: logo centred, menu on the start side, search + cart on the
   end side. Language and currency move into the menu (polish.js).
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.baladi-header { height: 64px !important; position: relative; }
	.baladi-header .baladi-logo {
		position: absolute !important;
		left: 50% !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		margin: 0 !important;
		z-index: 2;
	}
	.baladi-header-currency,
	.baladi-header .baladi-langs { display: none !important; }
	.baladi-right { margin-inline-start: auto !important; gap: 14px !important; }
	.baladi-mobile-panel { top: 64px !important; max-height: calc(100vh - 64px); overflow-y: auto; }
}

/* Language + currency inside the mobile menu. */
.bp-prefs {
	margin-top: 14px;
	padding: 18px 4px 6px;
	border-top: 1px solid var(--bp-line);
	display: grid;
	gap: 16px;
}
.bp-prefs__row { display: grid; gap: 8px; }
.bp-prefs__label {
	font-family: "Inter", sans-serif;
	font-size: 10.5px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bp-muted);
}
html[dir="rtl"] .bp-prefs__label { font-size: 13px; text-transform: none; }
.bp-seg { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.bp-seg__btn {
	display: flex !important;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 8px !important;
	border: 1px solid var(--bp-line-strong) !important;
	border-radius: 3px;
	background: transparent;
	color: var(--bp-ink) !important;
	font-family: "Inter", sans-serif;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-transform: none !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: border-color 0.2s, background 0.2s;
}
.bp-seg__btn[lang="he"] { font-family: "Assistant", sans-serif; font-size: 15px !important; }
.bp-seg__btn:hover { border-color: var(--bp-ink) !important; }
.bp-seg__btn.is-on { background: var(--bp-ink); border-color: var(--bp-ink) !important; color: #fff !important; }

/* Mobile menu: Hebrew items at a readable size. */
html[dir="rtl"] .baladi-mobile-nav a,
html[dir="rtl"] .baladi-m-toggle { font-size: 17px !important; letter-spacing: 0 !important; text-align: right !important; }
html[dir="rtl"] .baladi-m-toggle span { float: left !important; }
html[dir="rtl"] .baladi-m-sub { padding: 0 16px 8px 0 !important; }
html[dir="rtl"] .baladi-m-sub a { font-size: 15px !important; }

/* --------------------------------------------------------------------------
   Breadcrumbs
   -------------------------------------------------------------------------- */
.woocommerce .woocommerce-breadcrumb {
	margin: 22px 0 18px !important;
	font-size: 12px !important;
	letter-spacing: 0.04em;
	color: var(--bp-muted) !important;
}
.woocommerce .woocommerce-breadcrumb a { color: var(--bp-ink-soft) !important; text-decoration: none; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--bp-gold-deep) !important; }
html[dir="rtl"] .woocommerce .woocommerce-breadcrumb { font-size: 14px !important; letter-spacing: 0; }

/* --------------------------------------------------------------------------
   Shop & category pages
   -------------------------------------------------------------------------- */
.woocommerce .woocommerce-result-count {
	font-size: 12px !important;
	letter-spacing: 0.04em;
	color: var(--bp-muted);
	margin: 0 0 18px !important;
	line-height: 42px;
}
html[dir="rtl"] .woocommerce .woocommerce-result-count { font-size: 14px !important; letter-spacing: 0; }
.woocommerce .woocommerce-ordering { margin: 0 0 18px !important; }
.woocommerce .woocommerce-ordering select.orderby {
	appearance: none !important;
	-webkit-appearance: none !important;
	height: 42px;
	min-width: 210px;
	padding: 0 34px 0 14px !important;
	border: 1px solid var(--bp-line-strong) !important;
	border-radius: 3px;
	background: var(--bp-paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%232E201A' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 14px center !important;
	font-size: 13px !important;
	color: var(--bp-ink);
	cursor: pointer;
}
html[dir="rtl"] .woocommerce .woocommerce-ordering select.orderby {
	padding: 0 14px 0 34px !important;
	background-position: left 14px center !important;
	font-size: 14px !important;
}

.woocommerce ul.products { margin-top: 6px !important; }
.woocommerce ul.products li.product { text-align: center; }
.woocommerce ul.products li.product a img { margin-bottom: 14px !important; background: var(--bp-cream); }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 14px !important;
	font-weight: 400 !important;
	color: var(--bp-ink) !important;
	padding: 0 4px !important;
	min-height: 2.9em;
}
html[dir="rtl"] .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 16px !important; font-weight: 500 !important; }
.woocommerce ul.products li.product .price {
	display: block !important;
	margin-top: 6px !important;
	font-size: 13.5px !important;
	color: var(--bp-ink-soft) !important;
	opacity: 1 !important;
	letter-spacing: 0.06em;
}
html[dir="rtl"] .woocommerce ul.products li.product .price { font-size: 15px !important; }
/* A variable product with no price yet must not leave a blank gap. */
.woocommerce ul.products li.product .price:empty { display: none !important; }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul { border: 0 !important; display: inline-flex; gap: 6px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	min-width: 40px;
	height: 40px;
	line-height: 40px !important;
	padding: 0 !important;
	border-radius: 50%;
	color: var(--bp-ink) !important;
	font-size: 13px !important;
	background: transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--bp-ink) !important; color: #fff !important; }
.woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--bp-cream) !important; }

/* AI filter bar on the shop: on one line with the result count on desktop. */
.baladi-ai-filter__toggle { min-height: 42px; }
html[dir="rtl"] .baladi-ai-filter__toggle,
html[dir="rtl"] .baladi-chip,
html[dir="rtl"] .baladi-ai-filter__label { letter-spacing: 0 !important; text-transform: none !important; }
html[dir="rtl"] .baladi-ai-filter__label { font-size: 13px !important; }
.baladi-shop-currency { display: none !important; } /* the header carries the currency switcher */

/* --------------------------------------------------------------------------
   Product page
   -------------------------------------------------------------------------- */
.single-product div.product { margin-top: 6px; }
.single-product div.product p.price,
.single-product div.product span.price {
	font-size: 17px !important;
	letter-spacing: 0.05em !important;
	color: var(--bp-ink) !important;
	margin: 0 0 26px !important;
}
.single-product div.product .woocommerce-variation-price .price { margin: 4px 0 14px !important; font-size: 17px !important; }

/* Variation + quantity pickers: one consistent framed select. */
.single-product div.product table.variations { width: 100%; border: 0; margin: 0 0 6px !important; }
.single-product div.product table.variations th.label,
.single-product div.product table.variations td.label { display: block; padding: 0 0 8px !important; text-align: start !important; }
.single-product div.product table.variations th.label label,
.single-product div.product table.variations td.label label {
	font-size: 11px !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase;
	color: var(--bp-ink-soft);
}
html[dir="rtl"] .single-product div.product table.variations th.label label,
html[dir="rtl"] .single-product div.product table.variations td.label label { font-size: 15px !important; letter-spacing: 0 !important; text-transform: none; font-weight: 600 !important; }
.single-product div.product table.variations td.value { display: block; padding: 0 0 18px !important; }
.single-product div.product table.variations tr { display: block; }

.single-product div.product table.variations select,
.single-product div.product select.baladi-qty-select {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	width: 100%;
	height: 48px;
	padding: 0 40px 0 16px !important;
	border: 1px solid var(--bp-line-strong) !important;
	border-radius: 3px !important;
	background: var(--bp-paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232E201A' stroke-width='1.2'/%3E%3C/svg%3E") no-repeat right 16px center !important;
	font-size: 14px !important;
	color: var(--bp-ink) !important;
	cursor: pointer;
	transition: border-color 0.2s;
}
.single-product div.product table.variations select:hover,
.single-product div.product select.baladi-qty-select:hover { border-color: var(--bp-ink) !important; }
html[dir="rtl"] .single-product div.product table.variations select,
html[dir="rtl"] .single-product div.product select.baladi-qty-select {
	padding: 0 16px 0 40px !important;
	background-position: left 16px center !important;
	font-size: 15px !important;
}
.single-product div.product select.baladi-qty-select { width: 110px; min-width: 110px; }
.baladi-qty-label {
	font-size: 11px !important;
	font-weight: 500;
	letter-spacing: 0.14em !important;
	color: var(--bp-ink-soft);
	opacity: 1 !important;
	margin-bottom: 4px;
}
html[dir="rtl"] .baladi-qty-label { font-size: 15px !important; font-weight: 600; letter-spacing: 0 !important; }

/* Add to cart: ink, gold on hover. */
.single-product div.product form.cart .single_add_to_cart_button,
.baladi-buybar__btn {
	background: var(--bp-ink) !important;
	color: #fff !important;
	border-radius: 3px !important;
	min-height: 54px;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.22em !important;
	transition: background 0.3s var(--bp-ease), transform 0.25s var(--bp-ease) !important;
}
.single-product div.product form.cart .single_add_to_cart_button:hover,
.baladi-buybar__btn:hover { background: var(--bp-gold-deep) !important; opacity: 1 !important; }
.single-product div.product form.cart .single_add_to_cart_button.disabled,
.single-product div.product form.cart .single_add_to_cart_button:disabled { background: rgba(46, 32, 26, 0.55) !important; }
html[dir="rtl"] .single-product div.product form.cart .single_add_to_cart_button,
html[dir="rtl"] .baladi-buybar__btn { font-size: 16px !important; letter-spacing: 0 !important; font-weight: 600 !important; }

/* Trust row, ask-the-maker, shipping details. */
.baladi-trust { font-size: 12px !important; letter-spacing: 0.04em !important; color: var(--bp-ink-soft); opacity: 1 !important; gap: 10px 22px !important; }
html[dir="rtl"] .baladi-trust { font-size: 14px !important; letter-spacing: 0 !important; }
html[dir="rtl"] .baladi-ask summary { font-size: 15px !important; letter-spacing: 0 !important; }
.single-product div.product details:not(.baladi-ask) > summary { cursor: pointer; padding: 6px 0; }

/* Tabs */
html[dir="rtl"] .single-product .woocommerce-tabs ul.tabs li a { font-size: 15px !important; letter-spacing: 0 !important; text-transform: none !important; }
.single-product .woocommerce-Tabs-panel { color: var(--bp-ink-soft) !important; }
html[dir="rtl"] .single-product .woocommerce-Tabs-panel { font-size: 16.5px !important; line-height: 1.85; }

/* Related products / complete the look */
.related.products > h2,
.upsells.products > h2 { letter-spacing: 0.02em; margin-top: clamp(40px, 6vw, 72px) !important; }
html[dir="rtl"] .baladi-set__caption,
html[dir="rtl"] .baladi-set__name { font-size: 15px !important; }

/* --------------------------------------------------------------------------
   Hebrew: no Latin-style tracking or forced capitals on buttons and labels.
   -------------------------------------------------------------------------- */
html[dir="rtl"] .button,
html[dir="rtl"] button,
html[dir="rtl"] .elementor-button,
html[dir="rtl"] input[type="submit"] { text-transform: none !important; letter-spacing: 0 !important; }
html[dir="rtl"] .elementor-button { font-size: 16px !important; }

/* --------------------------------------------------------------------------
   Footer: links that sat glued together get a hairline separator.
   -------------------------------------------------------------------------- */
.elementor-location-footer .elementor-element-footer-legal a + a { margin-inline-start: 22px; }
.elementor-location-footer a { transition: color 0.2s; }
.elementor-location-footer a:hover { color: var(--bp-gold) !important; }

/* --------------------------------------------------------------------------
   Search panel in Hebrew
   -------------------------------------------------------------------------- */
html[dir="rtl"] .baladi-search-group__label { font-size: 12.5px !important; text-transform: none !important; letter-spacing: 0 !important; }
html[dir="rtl"] .baladi-search-chip,
html[dir="rtl"] .baladi-search-ask,
html[dir="rtl"] .baladi-search-surprise,
html[dir="rtl"] .baladi-search-all,
html[dir="rtl"] .baladi-search-clear { font-size: 13.5px !important; }
html[dir="rtl"] .baladi-sr__name,
html[dir="rtl"] .baladi-sr__price { font-size: 13px !important; }

/* --------------------------------------------------------------------------
   Scroll reveals: never leave a blank band. If the observer misses an
   element (fast scroll, anchor jump, print) it still shows within a beat.
   -------------------------------------------------------------------------- */
@keyframes bpRevealSafety { to { opacity: 1; transform: none; } }
body.baladi-animate [data-baladi-reveal]:not(.baladi-in),
body.baladi-animate .baladi-reveal:not(.baladi-in) {
	transform: translateY(12px);
	animation: bpRevealSafety 0.6s var(--bp-ease) 1.6s forwards;
}
@media print {
	body.baladi-animate [data-baladi-reveal],
	body.baladi-animate .baladi-reveal { opacity: 1 !important; transform: none !important; }
}


/* --------------------------------------------------------------------------
   Prices: "From $178" on variable products; the chosen metal's price
   replaces it at the top of the product page (polish.js).
   -------------------------------------------------------------------------- */
.bp-from {
	font-size: 0.82em;
	letter-spacing: 0.06em;
	color: var(--bp-muted);
	margin-inline-end: 3px;
}
html[dir="rtl"] .bp-from { letter-spacing: 0; }
html[dir="rtl"] .price:has(.bp-from) { direction: rtl !important; }
.single-product div.product .woocommerce-variation-price { display: none !important; }
.single-product div.product .summary p.price { transition: opacity 0.25s var(--bp-ease); }
.single-product div.product .summary p.price.bp-swap { opacity: 0.25; }

/* --------------------------------------------------------------------------
   Cart & checkout (WooCommerce blocks) — the site's paper, ink and gold.
   -------------------------------------------------------------------------- */
:root {
	--bp-trust: "Secure\000020payment\000020\000020\0000B7\000020\000020Handmade\000020in\000020our\000020studio\000020\000020\0000B7\000020\000020Nickel-free\000020materials";
}
html[lang="he"] { --bp-trust: "\0005EA\0005E9\0005DC\0005D5\0005DD\000020\0005DE\0005D0\0005D5\0005D1\0005D8\0005D7\000020\000020\0000B7\000020\000020\0005D1\0005E2\0005D1\0005D5\0005D3\0005EA\000020\0005D9\0005D3\000020\0005D1\0005E1\0005D8\0005D5\0005D3\0005D9\0005D5\000020\000020\0000B7\000020\000020\0005D7\0005D5\0005DE\0005E8\0005D9\0005DD\000020\0005DC\0005DC\0005D0\000020\0005E0\0005D9\0005E7\0005DC"; }
html[lang="fr"] { --bp-trust: "Paiement\000020s\0000E9curis\0000E9\000020\000020\0000B7\000020\000020Fait\000020main\000020dans\000020notre\000020atelier\000020\000020\0000B7\000020\000020Mat\0000E9riaux\000020sans\000020nickel"; }

body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.woocommerce-cart main#content,
body.woocommerce-checkout main#content {
	max-width: calc(1180px + 2 * var(--bp-gutter)) !important;
	padding-top: clamp(28px, 4vw, 56px) !important;
	padding-bottom: clamp(48px, 6vw, 96px) !important;
}
.bp-co-head { text-align: center; margin: 0 auto clamp(26px, 3.4vw, 44px); }
.bp-co-eyebrow {
	display: block;
	font-family: "Inter", sans-serif;
	font-size: 10.5px;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--bp-gold-deep);
	margin-bottom: 10px;
}
.bp-co-title {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	font-size: clamp(30px, 3.4vw, 44px) !important;
	letter-spacing: 0.01em;
	color: var(--bp-ink) !important;
	margin: 0 !important;
}
.bp-co-title::after {
	content: "";
	display: block;
	width: 44px;
	height: 1px;
	margin: 16px auto 0;
	background: var(--bp-gold);
}
html[dir="rtl"] .bp-co-eyebrow { font-family: "Assistant", sans-serif; font-size: 13px; letter-spacing: 0.04em; }
html[dir="rtl"] .bp-co-title { font-family: "Assistant", sans-serif !important; font-weight: 600 !important; }

html body .wp-block-woocommerce-checkout,
html body .wp-block-woocommerce-cart,
html body .wp-block-woocommerce-checkout.alignwide,
html body .wp-block-woocommerce-cart.alignwide,
.bp-co-head {
	max-width: calc(var(--bp-wrap) + 2 * var(--bp-gutter)) !important;
	margin-inline: auto !important;
	padding-inline: var(--bp-gutter) !important;
	box-sizing: border-box;
}
.wp-block-woocommerce-checkout,
.wp-block-woocommerce-cart { padding-bottom: clamp(48px, 6vw, 96px) !important; }
.bp-co-head { padding-top: clamp(28px, 4vw, 56px); }

/* One symmetric grid: content column + a fixed summary column. */
.wc-block-components-sidebar-layout.is-large,
.wc-block-components-sidebar-layout.is-medium {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 380px;
	column-gap: clamp(32px, 4vw, 64px);
	align-items: start;
	margin: 0 !important;
}
.wc-block-components-sidebar-layout > :not(.wc-block-components-main):not(.wc-block-components-sidebar) { grid-column: 1 / -1; }
.wc-block-components-sidebar-layout.is-large > .wc-block-components-main,
.wc-block-components-sidebar-layout.is-large > .wc-block-components-sidebar,
.wc-block-components-sidebar-layout.is-medium > .wc-block-components-main,
.wc-block-components-sidebar-layout.is-medium > .wc-block-components-sidebar {
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* The currency notice sits inside the same frame. */
.yay-currency-checkout-notice {
	max-width: calc(var(--bp-wrap) + 2 * var(--bp-gutter));
	margin: 18px auto 0 !important;
	padding: 14px 20px !important;
	box-sizing: border-box;
	background: var(--bp-paper) !important;
	border: 1px solid var(--bp-line) !important;
	border-inline-start: 3px solid var(--bp-gold) !important;
	border-radius: 6px;
	font-size: 13.5px;
	color: var(--bp-ink-soft);
	text-align: center;
}
@media (max-width: 767px) {
	.yay-currency-checkout-notice { width: auto !important; margin: 12px var(--bp-gutter) 0 !important; }
}

/* Notes, terms and the order button close the form as one card. */
html body .wc-block-checkout .wp-block-woocommerce-checkout-order-note-block,
html body .wc-block-checkout .wc-block-checkout__order-notes,
html body .wc-block-checkout .wc-block-checkout__terms,
html body .wc-block-checkout .wc-block-checkout__actions {
	background: #fff !important;
	border-inline: 1px solid var(--bp-line);
	margin: 0 !important;
	padding-inline: clamp(18px, 2.6vw, 34px) !important;
}
html body .wc-block-checkout .wp-block-woocommerce-checkout-order-note-block,
html body .wc-block-checkout .wc-block-checkout__order-notes {
	border-top: 1px solid var(--bp-line);
	border-radius: 6px 6px 0 0;
	padding-top: clamp(16px, 2vw, 24px) !important;
	padding-bottom: 4px !important;
}
.wc-block-checkout__terms { padding-top: 12px !important; padding-bottom: 6px !important; }
.wc-block-checkout__terms--with-separator { border-top: 0 !important; }
.wc-block-checkout__terms--with-separator::before { display: none !important; }
.wc-block-checkout__actions {
	border-bottom: 1px solid var(--bp-line);
	border-radius: 0 0 6px 6px;
	padding-top: 6px !important;
	padding-bottom: clamp(18px, 2.4vw, 28px) !important;
}

body.woocommerce-cart,
body.woocommerce-checkout { background: #FBF9F6; }
.wc-block-checkout,
.wc-block-cart { color: var(--bp-ink); }
.wc-block-components-sidebar-layout { gap: clamp(24px, 3vw, 48px); }

/* Steps as calm paper cards */
html body .wc-block-checkout .wc-block-components-checkout-step,
html body .wc-block-checkout fieldset.wc-block-components-checkout-step {
	background: #fff !important;
	border: 1px solid var(--bp-line) !important;
	border-radius: 6px;
	padding: clamp(18px, 2.4vw, 30px) clamp(18px, 2.6vw, 34px) clamp(8px, 1.4vw, 18px) !important;
	margin-bottom: 18px !important;
}
.wc-block-checkout .wc-block-components-checkout-step__heading { margin-bottom: 14px !important; }
.wc-block-components-checkout-step__title,
.wc-block-components-title,
.wc-block-cart__totals-title {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	font-size: 23px !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	color: var(--bp-ink) !important;
}
html[dir="rtl"] .wc-block-components-checkout-step__title,
html[dir="rtl"] .wc-block-components-title,
html[dir="rtl"] .wc-block-cart__totals-title { font-family: "Assistant", sans-serif !important; font-weight: 600 !important; font-size: 21px !important; }
.wc-block-checkout .wc-block-components-checkout-step::after,
.wc-block-checkout .wc-block-components-checkout-step__container::after { display: none !important; }

/* Fields */
.wc-block-components-text-input input,
.wc-block-components-combobox .components-combobox-control__input,
.wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-textarea,
.wc-block-checkout__order-notes textarea {
	background: #fff !important;
	border: 1px solid rgba(46, 32, 26, 0.2) !important;
	border-radius: 4px !important;
	color: var(--bp-ink) !important;
	box-shadow: none !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
}
.wc-block-components-text-input input:focus,
.wc-blocks-components-select .wc-blocks-components-select__select:focus,
.wc-block-components-textarea:focus {
	border-color: var(--bp-gold-deep) !important;
	box-shadow: 0 0 0 3px rgba(194, 155, 97, 0.18) !important;
	outline: none !important;
}
.wc-block-components-text-input label,
.wc-blocks-components-select__label { color: var(--bp-muted) !important; }
.wc-block-components-text-input.is-active label { color: var(--bp-gold-deep) !important; }
.wc-block-checkout__guest-checkout-notice,
.wc-block-components-address-form__address_2-toggle { font-size: 13px !important; color: var(--bp-muted) !important; }
.wc-block-components-address-form__address_2-toggle { color: var(--bp-gold-deep) !important; }

/* Payment methods */
.wc-block-components-radio-control--highlight-checked { border: 0 !important; }
.wc-block-components-radio-control-accordion-option,
.wc-block-components-radio-control__option {
	border: 1px solid var(--bp-line) !important;
	border-radius: 5px !important;
	margin-bottom: 10px !important;
	background: #fff;
	box-shadow: none !important;
	transition: border-color 0.2s;
}
.wc-block-components-radio-control--highlight-checked::after,
.wc-block-components-radio-control-accordion-option::after { display: none !important; }
.wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control__option-checked { border-color: var(--bp-ink) !important; }
.wc-block-components-radio-control__input:checked { border-color: var(--bp-ink) !important; }
.wc-block-components-radio-control__input:checked::before { background: var(--bp-ink) !important; }
.wc-block-components-checkbox__input:checked { background: var(--bp-ink) !important; border-color: var(--bp-ink) !important; }

/* The one button that matters */
.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button {
	background: var(--bp-ink) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 4px !important;
	min-height: 58px !important;
	font-family: "Inter", sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.24em !important;
	text-transform: uppercase !important;
	box-shadow: 0 10px 28px rgba(46, 32, 26, 0.16) !important;
	transition: background 0.3s var(--bp-ease), transform 0.25s var(--bp-ease) !important;
}
.wc-block-components-checkout-place-order-button:hover,
.wc-block-cart__submit-button:hover { background: var(--bp-gold-deep) !important; transform: translateY(-1px); }
html[dir="rtl"] .wc-block-components-checkout-place-order-button,
html[dir="rtl"] .wc-block-cart__submit-button { font-family: "Assistant", sans-serif !important; font-size: 17px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 600 !important; }
.wc-block-checkout__actions::after,
.wc-block-cart__submit::after {
	content: var(--bp-trust);
	display: block;
	text-align: center;
	margin-top: 14px;
	font-size: 12px;
	letter-spacing: 0.04em;
	color: var(--bp-muted);
}
html[dir="rtl"] .wc-block-checkout__actions::after,
html[dir="rtl"] .wc-block-cart__submit::after { font-size: 14px; letter-spacing: 0; }
.wc-block-checkout__terms { font-size: 13px !important; color: var(--bp-muted) !important; }
.wc-block-checkout__terms a,
.wc-block-components-panel__button { color: var(--bp-gold-deep) !important; }

/* Order summary: a jeweller's receipt */
.wc-block-checkout__sidebar,
.wc-block-cart__sidebar { position: sticky; top: 100px; align-self: flex-start; }
.wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-cart-order-summary-block {
	background: var(--bp-cream) !important;
	border: 1px solid var(--bp-line) !important;
	border-radius: 6px !important;
	padding: 8px clamp(16px, 2vw, 24px) !important;
}
.wc-block-components-order-summary-item__image img,
.wc-block-cart-item__image img { border-radius: 4px; background: #fff; }
.wc-block-components-order-summary-item__quantity {
	background: var(--bp-ink) !important;
	color: #fff !important;
	border: 2px solid var(--bp-cream) !important;
	box-shadow: none !important;
	font-size: 11px !important;
}
.wc-block-components-product-name { color: var(--bp-ink) !important; font-weight: 500 !important; text-decoration: none !important; }
.wc-block-components-product-metadata,
.wc-block-components-product-details { color: var(--bp-muted) !important; font-size: 12.5px !important; }
.wc-block-components-totals-item { color: var(--bp-ink-soft); }
.wc-block-components-totals-wrapper { border-color: var(--bp-line) !important; }
.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: "Cormorant Garamond", serif !important;
	font-size: 24px !important;
	font-weight: 500 !important;
	color: var(--bp-ink) !important;
}
html[dir="rtl"] .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
html[dir="rtl"] .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: "Assistant", sans-serif !important; font-weight: 600 !important; font-size: 21px !important; }

/* Cart lines */
.wc-block-cart-items { border-color: var(--bp-line) !important; }
.wc-block-cart-items__header { font-size: 10.5px !important; letter-spacing: 0.2em !important; color: var(--bp-muted) !important; }
html[dir="rtl"] .wc-block-cart-items__header { font-size: 13px !important; letter-spacing: 0 !important; }
.wc-block-cart-items__row { border-color: var(--bp-line) !important; }
.wc-block-components-quantity-selector { border: 1px solid rgba(46, 32, 26, 0.22) !important; border-radius: 999px !important; overflow: hidden; }
.wc-block-components-quantity-selector::after { display: none !important; }
.wc-block-components-quantity-selector__button { color: var(--bp-ink) !important; }
.wc-block-cart-item__remove-link { color: var(--bp-muted) !important; font-size: 12px !important; }

/* Notices */
.wc-block-components-notice-banner,
.woocommerce-info,
.woocommerce-message {
	border-radius: 5px !important;
	border: 1px solid var(--bp-line) !important;
	background: var(--bp-paper) !important;
	color: var(--bp-ink) !important;
}
.yay-currency-checkout-notice,
.woocommerce-notices-wrapper .yay-currency-notice { border-radius: 5px; }

@media (max-width: 767px) {
	.wc-block-checkout__sidebar,
	.wc-block-cart__sidebar { position: static; }
}

/* --------------------------------------------------------------------------
   Legal & information pages — an editorial reading column.
   -------------------------------------------------------------------------- */
body.page-id-3 .page-header,
body.page-id-10 .page-header,
body.page-id-6655 .page-header,
body.page-id-6963 .page-header {
	display: block !important;
	max-width: 760px;
	margin: clamp(40px, 6vw, 84px) auto clamp(24px, 3vw, 40px) !important;
	padding: 0 var(--bp-gutter);
	text-align: center;
}
body.page-id-3 .page-header .entry-title,
body.page-id-10 .page-header .entry-title,
body.page-id-6655 .page-header .entry-title,
body.page-id-6963 .page-header .entry-title {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	font-size: clamp(34px, 4.4vw, 52px) !important;
	letter-spacing: 0.01em;
	color: var(--bp-ink) !important;
	margin: 0 !important;
}
body.page-id-3 .page-header .entry-title::after,
body.page-id-10 .page-header .entry-title::after,
body.page-id-6655 .page-header .entry-title::after,
body.page-id-6963 .page-header .entry-title::after {
	content: "";
	display: block;
	width: 44px;
	height: 1px;
	margin: 20px auto 0;
	background: var(--bp-gold);
}
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content {
	max-width: 760px;
	margin: 0 auto clamp(56px, 7vw, 110px);
	padding: clamp(26px, 4vw, 54px) clamp(22px, 4.4vw, 60px);
	background: var(--bp-paper);
	border: 1px solid var(--bp-line);
	border-radius: 6px;
	color: var(--bp-ink-soft);
	font-size: 16px;
	line-height: 1.85;
}
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content h2 {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	font-size: 27px !important;
	color: var(--bp-ink) !important;
	margin: 2.1em 0 0.6em !important;
	padding-top: 1.4em;
	border-top: 1px solid var(--bp-line);
}
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content h2:first-child { margin-top: 0 !important; padding-top: 0; border-top: 0; }
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content h3 {
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--bp-ink) !important;
	margin: 1.6em 0 0.4em !important;
}
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content ul { padding-inline-start: 0; list-style: none; }
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content li { position: relative; padding-inline-start: 22px; margin: 0.45em 0; }
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content li::before {
	content: "";
	position: absolute;
	inset-inline-start: 2px;
	top: 0.82em;
	width: 7px;
	height: 1px;
	background: var(--bp-gold-deep);
}
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content a { color: var(--bp-gold-deep) !important; text-underline-offset: 3px; }
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content strong { color: var(--bp-ink); font-weight: 600; }
body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content .bp-updated { font-size: 13px; color: var(--bp-muted); margin-top: 2.4em; }
html[dir="rtl"] body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-header .entry-title,
html[dir="rtl"] body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content h2 { font-family: "Assistant", sans-serif !important; font-weight: 600 !important; }
html[dir="rtl"] body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content { font-size: 17px; }
html[dir="rtl"] body:is(.page-id-3, .page-id-10, .page-id-6655, .page-id-6963) .page-content h3 { letter-spacing: 0; text-transform: none; font-size: 17px !important; }


/* Homepage: the page title stays the H1 for search engines and screen readers
   without showing (the hero carries the visual headline). */
body.home .page-header {
	display: block !important;
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* --------------------------------------------------------------------------
   Homepage reviews — three quiet paper cards (swipe row on phones).
   The Elementor widgets carry inline styles, hence the !important.
   -------------------------------------------------------------------------- */
.elementor-element-hp-rh { padding-bottom: clamp(28px, 3vw, 40px) !important; }
.elementor-element-hp-rhs p { font-size: 20px !important; letter-spacing: 0.3em !important; margin-bottom: 6px !important; }
.elementor-element-hp-rhh .elementor-heading-title { font-weight: 400 !important; letter-spacing: 0.02em; }

.elementor-element-hp-rr { padding: clamp(40px, 5vw, 72px) 0 clamp(48px, 6vw, 88px) !important; }
.elementor-element-hp-rr > .elementor-container {
	max-width: calc(var(--bp-wrap) + 2 * var(--bp-gutter)) !important;
	padding-inline: var(--bp-gutter);
	gap: clamp(16px, 2vw, 28px);
	align-items: stretch;
}
.elementor-element-hp-rr .elementor-column { min-height: 0 !important; }
.elementor-element-hp-rr .elementor-column > .elementor-widget-wrap,
.elementor-element-hp-rr .elementor-column > .elementor-element-populated {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	height: 100%;
}
.elementor-element-hp-rr .elementor-widget-text-editor { height: 100%; margin: 0 !important; }
.elementor-element-hp-rr .elementor-widget-text-editor > .elementor-widget-container { height: 100%; }
.elementor-element-hp-rr .elementor-widget-text-editor div[style] {
	position: relative;
	height: 100%;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	background: #fff !important;
	border: 1px solid var(--bp-line) !important;
	border-radius: 6px;
	padding: clamp(52px, 5vw, 64px) clamp(24px, 2.6vw, 36px) clamp(28px, 3vw, 36px) !important;
	box-shadow: 0 18px 40px rgba(46, 32, 26, 0.06);
	transition: transform 0.4s var(--bp-ease), box-shadow 0.4s var(--bp-ease);
}
.elementor-element-hp-rr .elementor-widget-text-editor div[style]:hover {
	transform: translateY(-3px);
	box-shadow: 0 24px 50px rgba(46, 32, 26, 0.09);
}
/* Large gold opening quote. */
.elementor-element-hp-rr .elementor-widget-text-editor div[style]::before {
	content: "\201C";
	position: absolute;
	top: 14px;
	left: 50%;
	transform: translateX(-50%);
	font-family: "Cormorant Garamond", serif;
	font-size: 64px;
	line-height: 1;
	color: var(--bp-gold);
	opacity: 0.55;
}
.elementor-element-hp-rr .elementor-widget-text-editor div[style] p { margin: 0 !important; text-align: center !important; }
.elementor-element-hp-rr .elementor-widget-text-editor div[style] p:nth-of-type(1) {
	order: 3;
	margin-top: 18px !important;
	font-size: 12px !important;
	letter-spacing: 0.28em !important;
	color: var(--bp-gold-deep) !important;
}
.elementor-element-hp-rr .elementor-widget-text-editor div[style] p:nth-of-type(2) {
	order: 1;
	flex: 1;
	font-family: "Cormorant Garamond", serif !important;
	font-size: clamp(19px, 1.5vw, 22px) !important;
	font-style: italic !important;
	line-height: 1.6 !important;
	color: var(--bp-ink) !important;
}
.elementor-element-hp-rr .elementor-widget-text-editor div[style] p:nth-of-type(3) {
	order: 2;
	margin-top: 22px !important;
	padding-top: 16px;
	position: relative;
	font-family: "Inter", sans-serif !important;
	font-size: 10.5px !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	color: var(--bp-gold-deep) !important;
}
.elementor-element-hp-rr .elementor-widget-text-editor div[style] p:nth-of-type(3)::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 28px;
	height: 1px;
	transform: translateX(-50%);
	background: var(--bp-gold);
}
html[dir="rtl"] .elementor-element-hp-rr .elementor-widget-text-editor div[style] p:nth-of-type(2) {
	font-family: "Assistant", sans-serif !important;
	font-style: normal !important;
	font-weight: 400 !important;
	font-size: clamp(18px, 1.4vw, 20px) !important;
	line-height: 1.75 !important;
}
html[dir="rtl"] .elementor-element-hp-rr .elementor-widget-text-editor div[style] p:nth-of-type(3) {
	font-family: "Assistant", sans-serif !important;
	font-size: 14px !important;
	letter-spacing: 0.02em !important;
	text-transform: none !important;
}

/* Phones: a swipeable row instead of a tall stack. */
@media (max-width: 767px) {
	.elementor-element-hp-rr > .elementor-container {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		gap: 14px;
		padding: 0 var(--bp-gutter) 8px;
	}
	.elementor-element-hp-rr > .elementor-container::-webkit-scrollbar { display: none; }
	.elementor-element-hp-rr .elementor-column {
		flex: 0 0 82% !important;
		width: 82% !important;
		max-width: 82% !important;
		scroll-snap-align: center;
	}
	.elementor-element-hp-rr .elementor-widget-text-editor div[style] { padding: 54px 24px 28px !important; }
	.elementor-element-hp-rhh .elementor-heading-title { font-size: 26px !important; line-height: 1.35 !important; }
}

/* --------------------------------------------------------------------------
   Cart count — a small ink circle on the bag icon (boutique.js fills it).
   -------------------------------------------------------------------------- */
.baladi-cart a,
a.baladi-has-count { position: relative; }
.baladi-cart-count {
	display: none;
	position: absolute;
	top: -7px;
	inset-inline-end: -10px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	box-sizing: border-box;
	border-radius: 999px;
	background: var(--bp-ink);
	color: #fff;
	border: 2px solid var(--bp-cream);
	font-family: "Inter", sans-serif !important;
	font-size: 10px !important;
	font-weight: 600;
	line-height: 14px;
	letter-spacing: 0 !important;
	text-align: center;
	font-variant-numeric: tabular-nums;
	pointer-events: none;
	box-shadow: 0 2px 6px rgba(46, 32, 26, 0.18);
}
.baladi-cart-count.is-show { display: inline-block; }
.baladi-cart a:hover .baladi-cart-count { background: var(--bp-gold-deep); }
@keyframes bpCartBump {
	0% { transform: scale(1); }
	40% { transform: scale(1.35); }
	100% { transform: scale(1); }
}
.baladi-cart-count.baladi-bump { animation: bpCartBump 0.45s var(--bp-ease); }
@media (max-width: 1024px) {
	.baladi-cart-count { top: -6px; inset-inline-end: -9px; }
}

/* --------------------------------------------------------------------------
   Hebrew product title: one calm step above the body text. Earlier rules
   (extras.css + the site's Additional CSS) pushed it to ~47px with Latin
   letter-spacing, so it broke into two shouting lines.
   -------------------------------------------------------------------------- */
html[dir="rtl"] body.single-product.woocommerce div.product .product_title.entry-title,
html[dir="rtl"] body.single-product div.product .summary .product_title.entry-title {
	font-size: 24px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	margin: 0 0 12px !important;
}
@media (max-width: 767px) {
	html[dir="rtl"] body.single-product.woocommerce div.product .product_title.entry-title,
	html[dir="rtl"] body.single-product div.product .summary .product_title.entry-title {
		font-size: 21px !important;
	}
}

/* Quantity: label on the same start edge as the Metal label above it. */
body.single-product.woocommerce div.product form.cart .quantity,
body.single-product div.product form.cart div.quantity {
	align-items: flex-start !important;
	text-align: start !important;
}


/* ==========================================================================
   Design QA pass — every page × he/en/fr × desktop/tablet/phone.
   ========================================================================== */

/* One text face per language. English and French WooCommerce screens
   (breadcrumbs, product summary, cart, checkout, legal pages, filters)
   inherited the system font from the theme reset instead of Inter. */
html:not([dir="rtl"]) body { font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
:where(html:not([dir="rtl"])) :where(button, input, select, textarea, optgroup) { font-family: inherit; }

/* "You may also like" — a quiet section title in the site's display face
   (it was Playfair, and tracked-out Hebrew). */
html body.single-product .related.products > h2,
html body.single-product .upsells.products > h2 {
	font-family: "Cormorant Garamond", serif !important;
	font-size: clamp(26px, 2.4vw, 32px) !important;
	font-weight: 400 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	text-align: center !important;
	color: var(--bp-ink) !important;
	margin-bottom: clamp(20px, 2.4vw, 32px) !important;
}
html[dir="rtl"] body.single-product .related.products > h2,
html[dir="rtl"] body.single-product .upsells.products > h2 {
	font-family: "Assistant", sans-serif !important;
	font-size: clamp(22px, 2vw, 26px) !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
}

/* Product page: a little air between the header and the gallery. */
@media (min-width: 1025px) {
	html body.single-product div.product.type-product { padding-top: clamp(20px, 2.4vw, 36px) !important; }
}

/* Product gallery: the stage's own padding let the neighbouring slide peek
   in at the edge and clipped the bottom margin. The breathing room now sits
   inside each photo, so the frame is even on all four sides. */
@media (min-width: 1025px) {
	body.single-product div.product .woocommerce-product-gallery .flex-viewport { padding: 0 !important; }
	body.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
		padding: 16px !important;
		box-sizing: border-box !important;
		max-height: calc(100vh - 200px) !important;
	}
}

/* --------------------------------------------------------------------------
   Homepage
   -------------------------------------------------------------------------- */
/* "Baladi, From the Ground Up" was ink on the ink story panel — invisible. */
.elementor-element-hp-sth .elementor-heading-title { color: var(--bp-cream) !important; }
/* Promise strip: ink on gold reads; white on gold did not (2.4:1). */
.elementor-element-hp-shw .elementor-heading-title { color: var(--bp-ink) !important; }
/* "Click or come by" over the studio photo. */
.baladi-visit__overlay { text-shadow: 0 1px 14px rgba(20, 12, 8, 0.45); }
html[dir="rtl"] .baladi-visit__overlay {
	font-family: "Assistant", sans-serif !important;
	font-size: clamp(20px, 2vw, 26px) !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}
/* Hebrew display headings: Assistant sets larger than Cormorant at the
   same size, so the Hebrew homepage headlines get one step down. */
html[dir="rtl"] .elementor-element-hp-ch-w .elementor-heading-title { font-size: 40px !important; }
html[dir="rtl"] .elementor-element-hp-sth .elementor-heading-title { font-size: 36px !important; }
html[dir="rtl"] .elementor-element-hp-igh .elementor-heading-title { font-size: 30px !important; }

@media (max-width: 1024px) {
	.elementor-element-hp-h1 .elementor-heading-title { font-size: 72px !important; }
	.elementor-element-hp-ch-w .elementor-heading-title { font-size: 40px !important; }
}
@media (max-width: 767px) {
	/* The hero line fits on one line instead of breaking after "&". */
	.elementor-element-hp-h1 .elementor-heading-title { font-size: 46px !important; letter-spacing: 0.08em !important; line-height: 1.1 !important; }
	html[dir="rtl"] .elementor-element-hp-h1 .elementor-heading-title { font-size: 50px !important; letter-spacing: 0 !important; }
	.elementor-element-hp-ch-w .elementor-heading-title { font-size: 32px !important; letter-spacing: 0.02em !important; line-height: 1.2 !important; }
	html[dir="rtl"] .elementor-element-hp-ch-w .elementor-heading-title { font-size: 30px !important; letter-spacing: 0 !important; }
	.elementor-element-hp-sth .elementor-heading-title { font-size: 30px !important; line-height: 1.25 !important; }
	html[dir="rtl"] .elementor-element-hp-sth .elementor-heading-title { font-size: 28px !important; }
	.elementor-element-hp-igh .elementor-heading-title { font-size: 26px !important; line-height: 1.25 !important; }
	html[dir="rtl"] .elementor-element-hp-igh .elementor-heading-title { font-size: 24px !important; }
	:is(.elementor-element-hp-cn-t, .elementor-element-hp-cr-t, .elementor-element-hp-ce-t, .elementor-element-hp-cb-t) .elementor-heading-title { font-size: 24px !important; }
}

/* --------------------------------------------------------------------------
   Footer: the legal links sit on the end edge in Hebrew too, and never
   break inside a link on phones.
   -------------------------------------------------------------------------- */
html[dir="rtl"] .elementor-location-footer .elementor-element-footer-legal,
html[dir="rtl"] .elementor-location-footer .elementor-element-footer-legal > div { text-align: left !important; }
html[dir="rtl"] .elementor-location-footer .elementor-element-footer-legal a { margin: 0 !important; }
html[dir="rtl"] .elementor-location-footer .elementor-element-footer-legal a + a { margin-inline-start: 22px !important; }
.elementor-location-footer .elementor-element-footer-legal a { white-space: nowrap; display: inline-block; }
@media (max-width: 1024px) {
	/* The footer kept its 80px desktop side padding on tablets and phones. */
	.elementor-location-footer :is(.elementor-element-footer-top-section, .elementor-element-footer-bottom-section) {
		padding-left: var(--bp-gutter) !important;
		padding-right: var(--bp-gutter) !important;
	}
}
@media (max-width: 767px) {
	html .elementor-location-footer .elementor-element-footer-legal,
	html .elementor-location-footer .elementor-element-footer-legal > div,
	html[dir="rtl"] .elementor-location-footer .elementor-element-footer-legal,
	html[dir="rtl"] .elementor-location-footer .elementor-element-footer-legal > div { text-align: start !important; }
	html .elementor-location-footer .elementor-element-footer-legal a { margin: 0 !important; }
	html .elementor-location-footer .elementor-element-footer-legal a + a { margin-inline-start: 20px !important; }
}

/* --------------------------------------------------------------------------
   Shop filters: readable labels and counts.
   -------------------------------------------------------------------------- */
.baladi-ai-filter__label { color: var(--bp-ink-soft) !important; }
html[dir="rtl"] .baladi-chip__count { font-size: 12px !important; }

/* --------------------------------------------------------------------------
   About (Hebrew): the eyebrow and the button text were 10px.
   -------------------------------------------------------------------------- */
html[dir="rtl"] .elementor-element-ab_label .elementor-heading-title { font-size: 14px !important; letter-spacing: 0.04em !important; }
html[dir="rtl"] .elementor-element-ab_ctah a { font-family: "Assistant", sans-serif !important; font-size: 16px !important; letter-spacing: 0 !important; font-weight: 600 !important; }

/* --------------------------------------------------------------------------
   Contact: the side column's inline Latin fonts had no Hebrew letters.
   -------------------------------------------------------------------------- */
html[dir="rtl"] .elementor-element-ct_etsy h3 { font-family: "Assistant", sans-serif !important; font-size: 24px !important; font-weight: 600 !important; }
html[dir="rtl"] .elementor-element-ct_etsy p { font-family: "Assistant", sans-serif !important; font-size: 16px !important; }
html[dir="rtl"] .elementor-element-ct_etsy a { font-family: "Assistant", sans-serif !important; font-size: 15px !important; letter-spacing: 0 !important; text-transform: none !important; }
@media (max-width: 767px) {
	.elementor-element-ct_form_h .elementor-heading-title { font-size: 28px !important; }
}

/* --------------------------------------------------------------------------
   Cart + checkout
   -------------------------------------------------------------------------- */
html[dir="rtl"] .bp-co-title { font-size: clamp(28px, 2.8vw, 36px) !important; }

/* One border per payment option (the label inside drew a second one). */
.wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option {
	border: 0 !important;
	border-radius: 0 !important;
	margin: 0 !important;
	background: transparent !important;
}
.wc-block-components-radio-control-accordion-option { overflow: hidden; }
.wc-block-components-radio-control-accordion-content { padding-top: 0 !important; color: var(--bp-muted); font-size: 13.5px; }

/* Empty bag: no cartoon face; the product grid below matches the shop. */
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before,
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before { display: none !important; }
.wc-block-cart__empty-cart__title {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 400 !important;
	font-size: clamp(24px, 2.4vw, 30px) !important;
	color: var(--bp-ink) !important;
	margin-top: 8px !important;
}
html[dir="rtl"] .wc-block-cart__empty-cart__title { font-family: "Assistant", sans-serif !important; font-weight: 500 !important; }
.wp-block-woocommerce-empty-cart-block .wp-block-separator { border: 0 !important; width: 44px !important; height: 1px !important; background: var(--bp-gold) !important; margin: 26px auto !important; }
.wp-block-woocommerce-empty-cart-block .wp-block-separator::before { display: none !important; }
.wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title) {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 400 !important;
	font-size: clamp(24px, 2.4vw, 30px) !important;
	color: var(--bp-ink) !important;
}
html[dir="rtl"] .wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title) { font-family: "Assistant", sans-serif !important; font-weight: 500 !important; }
.wc-block-grid__products { gap: clamp(16px, 2vw, 28px) 0; }
.wc-block-grid__product { text-align: center !important; border: 0 !important; }
.wc-block-grid__product-image img { border-radius: 4px; aspect-ratio: 1 / 1; object-fit: cover; }
.wc-block-grid__product-title {
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--bp-ink) !important;
	margin: 12px 0 6px !important;
	line-height: 1.5 !important;
}
html[dir="rtl"] .wc-block-grid__product-title { font-size: 15px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 600 !important; }
.wc-block-grid__product-price { display: block !important; color: var(--bp-muted) !important; font-size: 14px !important; margin-bottom: 10px !important; }
.wc-block-grid__product-add-to-cart .wp-block-button__link {
	border-radius: 3px !important;
	background: transparent !important;
	color: var(--bp-ink) !important;
	border: 1px solid var(--bp-line-strong) !important;
	font-size: 11px !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	padding: 10px 18px !important;
}
html[dir="rtl"] .wc-block-grid__product-add-to-cart .wp-block-button__link { font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important; }
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover { border-color: var(--bp-ink) !important; }
@media (max-width: 767px) {
	.wc-block-grid.has-4-columns .wc-block-grid__products,
	.wc-block-grid.has-3-columns .wc-block-grid__products,
	.wc-block-grid .wc-block-grid__products { display: grid !important; grid-template-columns: 1fr 1fr; gap: 22px 14px; margin: 0 !important; }
	.wc-block-grid .wc-block-grid__product { max-width: none !important; flex: none !important; padding: 0 !important; margin: 0 !important; }
}

/* --------------------------------------------------------------------------
   My account (signed out): a centred sign-in card under a real page title.
   -------------------------------------------------------------------------- */
.bp-acc-head { margin-top: clamp(40px, 6vw, 84px) !important; }
body.woocommerce-account:not(.logged-in) > .woocommerce,
body.woocommerce-account:not(.logged-in) main .woocommerce {
	max-width: 460px;
	margin: 28px auto clamp(56px, 7vw, 110px) !important;
	padding: clamp(26px, 4vw, 40px) clamp(22px, 4vw, 40px);
	background: var(--bp-paper);
	border: 1px solid var(--bp-line);
	border-radius: 6px;
	box-sizing: border-box;
}
@media (max-width: 520px) {
	body.woocommerce-account:not(.logged-in) > .woocommerce,
	body.woocommerce-account:not(.logged-in) main .woocommerce { margin-inline: var(--bp-gutter) !important; }
}
body.woocommerce-account .woocommerce > h2 {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	font-size: 26px !important;
	color: var(--bp-ink) !important;
	margin: 0 0 18px !important;
	padding: 0 !important;
	border: 0 !important;
}
html[dir="rtl"] body.woocommerce-account .woocommerce > h2 { font-family: "Assistant", sans-serif !important; font-weight: 600 !important; font-size: 22px !important; }
body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register,
body.woocommerce-account .woocommerce-ResetPassword { border: 0 !important; padding: 0 !important; margin: 0 !important; }
body.woocommerce-account .woocommerce form .form-row { padding: 0 !important; margin: 0 0 16px !important; }
body.woocommerce-account .woocommerce form label { display: block; font-size: 13px; color: var(--bp-ink-soft); margin-bottom: 6px; }
body.woocommerce-account .woocommerce form .required { color: var(--bp-gold-deep); text-decoration: none; }
body.woocommerce-account .woocommerce form .input-text {
	width: 100% !important;
	height: 48px;
	padding: 0 14px !important;
	border: 1px solid var(--bp-line-strong) !important;
	border-radius: 3px !important;
	background: #fff !important;
	font-size: 15px;
	color: var(--bp-ink);
	box-shadow: none !important;
	box-sizing: border-box;
}
body.woocommerce-account .woocommerce form .input-text:focus { border-color: var(--bp-ink) !important; outline: none; }
body.woocommerce-account .woocommerce .password-input { display: block; position: relative; }
body.woocommerce-account .woocommerce .show-password-input { inset-inline-end: 12px; inset-inline-start: auto; top: 50%; transform: translateY(-50%); }
body.woocommerce-account .woocommerce form.login .form-row:has(.woocommerce-form-login__submit) {
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	gap: 14px;
	margin-top: 22px !important;
}
body.woocommerce-account .woocommerce-form-login__rememberme { display: flex !important; align-items: center; gap: 8px; margin: 0 !important; font-size: 14px; color: var(--bp-ink-soft); }
body.woocommerce-account .woocommerce-form-login__rememberme input { accent-color: var(--bp-ink); width: 16px; height: 16px; margin: 0; }
body.woocommerce-account .woocommerce :is(.woocommerce-form-login__submit, .woocommerce-form-register__submit, .woocommerce-Button, button.button) {
	width: 100%;
	min-height: 50px;
	margin: 0 !important;
	border: 1px solid var(--bp-ink) !important;
	border-radius: 3px !important;
	background: var(--bp-ink) !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	transition: background 0.25s, border-color 0.25s;
}
html[dir="rtl"] body.woocommerce-account .woocommerce :is(.woocommerce-form-login__submit, .woocommerce-form-register__submit, .woocommerce-Button, button.button) { font-size: 16px !important; letter-spacing: 0 !important; text-transform: none !important; }
body.woocommerce-account .woocommerce :is(.woocommerce-form-login__submit, .woocommerce-form-register__submit, .woocommerce-Button, button.button):hover { background: var(--bp-gold-deep) !important; border-color: var(--bp-gold-deep) !important; }
body.woocommerce-account .woocommerce .lost_password { margin: 18px 0 0 !important; text-align: center; font-size: 14px; }
body.woocommerce-account .woocommerce .lost_password a { color: var(--bp-gold-deep) !important; text-underline-offset: 3px; }

/* --------------------------------------------------------------------------
   404: a real page instead of one stray line under the header.
   -------------------------------------------------------------------------- */
body.error404 main#content {
	min-height: 52vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: clamp(56px, 9vw, 120px) var(--bp-gutter);
	box-sizing: border-box;
}
body.error404 main#content .page-header { display: block !important; margin: 0 0 14px !important; }
body.error404 main#content .page-header .entry-title {
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	font-size: clamp(30px, 4vw, 46px) !important;
	color: var(--bp-ink) !important;
	margin: 0 !important;
}
body.error404 main#content .page-header .entry-title::after { content: ""; display: block; width: 44px; height: 1px; margin: 18px auto 0; background: var(--bp-gold); }
html[dir="rtl"] body.error404 main#content .page-header .entry-title { font-family: "Assistant", sans-serif !important; font-weight: 600 !important; font-size: clamp(26px, 3.2vw, 36px) !important; }
body.error404 main#content .page-content { color: var(--bp-ink-soft); font-size: 16px; }
body.error404 main#content .page-content p { margin: 0 0 28px; }
.bp-404-back {
	display: inline-block;
	padding: 15px 34px;
	border-radius: 3px;
	background: var(--bp-ink);
	color: #fff !important;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	text-decoration: none !important;
	transition: background 0.25s;
}
.bp-404-back:hover { background: var(--bp-gold-deep); }
html[dir="rtl"] .bp-404-back { font-size: 16px; letter-spacing: 0; text-transform: none; font-weight: 600; }

/* --------------------------------------------------------------------------
   Phones: header icons get a 44px touch area without moving visually.
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.baladi-header .baladi-cart a,
	.baladi-header a.baladi-search,
	.baladi-header .baladi-hamburger { position: relative; }
	.baladi-header .baladi-cart a::after,
	.baladi-header a.baladi-search::after,
	.baladi-header .baladi-hamburger::after {
		content: "";
		position: absolute;
		left: 50%;
		top: 50%;
		width: 44px;
		height: 44px;
		transform: translate(-50%, -50%);
	}
}

/* Hebrew product cards outside the shop grid (related, upsells, search)
   still used Inter, which has no Hebrew letters. */
html[dir="rtl"] body .woocommerce-loop-product__title,
html[dir="rtl"] body ul.products li.product.product .woocommerce-loop-product__title,
html[dir="rtl"] body ul.products li.product .price,
html[dir="rtl"] body .wc-block-grid__product-title { font-family: "Assistant", sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; }

/* Tablets: the four related pieces sat 3 + 1; keep them in one row. */
@media (min-width: 768px) and (max-width: 1024px) {
	html body.single-product :is(.related, .upsells).products ul.products {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 18px;
	}
	.single-product :is(.related, .upsells).products ul.products::before,
	.single-product :is(.related, .upsells).products ul.products::after { display: none !important; }
	.single-product :is(.related, .upsells).products ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; }
}

/* Tablets: the three review cards wrapped 2 + 1 against one edge. */
@media (min-width: 768px) and (max-width: 1024px) {
	.elementor-element-hp-rr > .elementor-container { flex-wrap: nowrap !important; }
	.elementor-element-hp-rr .elementor-column { flex: 1 1 0 !important; width: auto !important; max-width: none !important; }
	.elementor-element-hp-rr .elementor-widget-text-editor div[style] { padding: 52px 20px 26px !important; }
}

/* Tablets: sixteen pieces per page in rows of four (rows of three left one
   piece alone at the bottom of every page). */
@media (min-width: 768px) and (max-width: 1024px) {
	html body.woocommerce:not(.single-product) ul.products {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 30px 16px;
	}
	body.woocommerce:not(.single-product) ul.products::before,
	body.woocommerce:not(.single-product) ul.products::after { display: none !important; }
	body.woocommerce:not(.single-product) ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; }
}

/* --------------------------------------------------------------------------
   Design credit (Kaede Digital) under the copyright line.
   -------------------------------------------------------------------------- */
.bp-credit {
	padding: 12px var(--bp-gutter) 16px;
	background: #1E1612;
	color: rgba(248, 245, 242, 0.42);
	font-size: 11.5px;
	letter-spacing: 0.02em;
	text-align: center;
}
.bp-credit.is-placed { padding: 0; margin-top: 6px; background: transparent; text-align: inherit; }
.bp-credit a { color: rgba(248, 245, 242, 0.62) !important; text-decoration: none; border-bottom: 1px solid rgba(248, 245, 242, 0.18); transition: color 0.2s, border-color 0.2s; }
.bp-credit a:hover { color: var(--bp-gold) !important; border-color: var(--bp-gold); }
html[dir="rtl"] .bp-credit { font-family: "Assistant", sans-serif; font-size: 13px; letter-spacing: 0; }

/* --------------------------------------------------------------------------
   Mobile hero (Laliv, 1 Nov 2026): the pendant in the middle of the screen
   instead of on its edge, and the title and button above it. "html body"
   outranks the same rule (70%) in the Customizer's Additional CSS.
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
	html body .elementor-12 .elementor-element.elementor-element-hp-hero:not(.elementor-motion-effects-element-type-background),
	html body .elementor-12 .elementor-element.elementor-element-hp-hero > .elementor-motion-effects-container > .elementor-motion-effects-layer {
		background-position: 87% center !important;
	}
	html body .elementor-element-hp-hero > .elementor-container { align-items: flex-start !important; }
	html body .elementor-element-hp-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { padding-top: 13vh !important; }
}

/* --------------------------------------------------------------------------
   Checkout: a single way to pay (card, through iCount). With one payment
   method there is nothing to choose, so the step is hidden and the button
   takes the buyer straight to the secure card payment. If another method is
   ever enabled, the choice comes back on its own.
   -------------------------------------------------------------------------- */
.wc-block-checkout__payment-method:has(.wc-block-components-radio-control > .wc-block-components-radio-control-accordion-option:only-child) { display: none !important; }

/* --------------------------------------------------------------------------
   Phones: one globe beside the menu button, opening the language and the
   currency in one short list (polish.js mobileHeaderPrefs). The drawer keeps
   its own copy.
   -------------------------------------------------------------------------- */
.bp-hprefs { display: none; }
@media (max-width: 767px) {
	.bp-hprefs {
		position: absolute;
		inset-block: 0;
		left: 58px;
		display: flex;
		align-items: center;
		gap: 2px;
		z-index: 2;
	}
	.bp-hp__btn {
		display: grid;
		place-items: center;
		width: 40px;
		height: 40px;
		padding: 0;
		border: 0;
		background: transparent;
		color: var(--bp-ink);
		cursor: pointer;
	}
	/* The theme paints buttons gold on hover/focus; this one stays quiet. */
	.bp-hp__btn:hover,
	.bp-hp__btn:focus,
	.bp-hp__btn:active { background: transparent !important; color: var(--bp-ink) !important; box-shadow: none !important; }
	.bp-hp__btn[aria-expanded="true"] { color: var(--bp-gold-deep, #A67C45) !important; }
	.bp-hp__btn:focus-visible { outline: 2px solid var(--bp-gold); outline-offset: -2px; }
	.bp-hp__btn > * { grid-area: 1 / 1; }
	.bp-hp__menu {
		position: absolute;
		top: 100%;
		left: -8px;
		min-width: 170px;
		padding: 6px;
		background: #fff;
		border: 1px solid rgba(46, 32, 26, 0.12);
		border-radius: 6px;
		box-shadow: 0 18px 40px rgba(46, 32, 26, 0.14);
	}
	.bp-hp__menu[hidden] { display: none; }
	.bp-hp__head {
		padding: 10px 12px 6px;
		font: 500 11px/1 "Inter", sans-serif;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		color: var(--bp-muted, rgba(46, 32, 26, 0.55));
	}
	.bp-hp__head ~ .bp-hp__head { margin-top: 6px; padding-top: 14px; border-top: 1px solid rgba(46, 32, 26, 0.08); }
	html[dir="rtl"] .bp-hp__head { font-family: "Assistant", sans-serif; font-size: 13px; letter-spacing: 0; text-transform: none; }
	.bp-hp__item {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		width: 100%;
		min-height: 44px;
		padding: 0 12px;
		border: 0;
		border-radius: 4px;
		background: transparent !important;
		color: var(--bp-ink) !important;
		font: 400 14px/1.2 "Inter", sans-serif;
		text-align: start;
		text-decoration: none !important;
		cursor: pointer;
	}
	.bp-hp__item[lang="he"] { font-family: "Assistant", sans-serif; font-size: 16px; }
	.bp-hp__item:hover,
	.bp-hp__item:focus-visible { background: var(--bp-cream) !important; }
	.bp-hp__item.is-on { font-weight: 600; }
	.bp-hp__check { color: var(--bp-gold-deep, #A67C45); }
	/* The header keeps a left-to-right box in Hebrew too (menu button on the
	   right), so the side is set by page direction rather than inline-start. */
	html[dir="rtl"] .bp-hprefs { left: auto; right: 58px; }
	html[dir="rtl"] .bp-hp__menu { left: auto; right: -8px; }
}

/* ==========================================================================
   Header search as a full-screen window, desktop and mobile: the keyword
   on top, filters and the AI stylist on the side, product cards in the main
   area. polish.js (fullSearch) adds .bp-full and the side/main wrappers;
   boutique.js still drives the chips, the AI and closing.
   ========================================================================== */
html.bp-search-lock,
html.bp-search-lock body { overflow: hidden !important; }

html body .baladi-search-overlay .baladi-search-panel.bp-full {
	position: fixed !important;
	inset: 0 !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	height: 100dvh !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: #F8F5F2;
	color: #2E201A;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column;
	animation: bpSearchIn 0.22s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@keyframes bpSearchIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
	html body .baladi-search-overlay .baladi-search-panel.bp-full { animation: none; }
}

/* Top bar: one large keyword field and the close button. */
.baladi-search-panel.bp-full .baladi-search-panel__head {
	flex: none;
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 30px 40px 22px;
	border: 0 !important;
}
.baladi-search-panel.bp-full .baladi-search-panel__icon { width: 26px; height: 26px; opacity: 0.55; }
html body .baladi-search-panel.bp-full input.baladi-search-input {
	flex: 1;
	min-width: 0;
	height: auto !important;
	font-family: inherit;
	font-size: 30px !important;
	font-weight: 300;
	line-height: 1.25;
	padding: 8px 0 10px !important;
	color: #2E201A !important;
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(46, 32, 26, 0.3) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	transition: border-color 0.2s ease;
}
html body .baladi-search-panel.bp-full input.baladi-search-input:focus { border-bottom-color: #2E201A !important; }
.baladi-search-panel.bp-full .baladi-search-input::placeholder { color: rgba(46, 32, 26, 0.42); opacity: 1; }
html body .baladi-search-panel.bp-full button.baladi-search-close {
	flex: none;
	width: 46px;
	height: 46px;
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 32px !important;
	font-weight: 300;
	line-height: 1;
	color: #2E201A !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	opacity: 0.75;
}
html body .baladi-search-panel.bp-full button.baladi-search-close:hover,
html body .baladi-search-panel.bp-full button.baladi-search-close:focus-visible {
	opacity: 1;
	background: rgba(46, 32, 26, 0.07) !important;
}

/* Body: filters on the side, results in the main column; each scrolls. */
.bp-search-body {
	flex: 1 1 auto;
	min-height: 0;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 0 40px;
	display: grid;
	grid-template-columns: 290px minmax(0, 1fr);
	gap: 48px;
}
.bp-search-side,
.bp-search-main {
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: rgba(46, 32, 26, 0.25) transparent;
}
.bp-search-side { padding: 2px 0 40px; padding-inline-end: 10px; }
.bp-search-main { padding: 2px 0 56px; }

.bp-search-side .baladi-search-panel__mood { flex-wrap: wrap; gap: 8px; margin-top: 0; }
.bp-search-side .baladi-search-mood { flex: 1 1 100%; font-size: 14px; padding: 10px 12px; background: #fff; }
html body .bp-search-side button.baladi-search-ask { flex: 1 1 auto; padding: 9px 12px !important; background: #2E201A !important; border-color: #2E201A !important; color: #fff !important; }
html body .bp-search-side button.baladi-search-ask:hover { background: #4A3A31 !important; }
html body .bp-search-side button.baladi-search-surprise { padding: 9px 13px !important; background: #fff !important; color: #2E201A !important; }
.bp-search-side .baladi-search-line { margin-top: 10px; }
.bp-search-side .baladi-search-panel__facets { margin-top: 22px; }
.bp-search-side .baladi-search-group + .baladi-search-group { margin-top: 16px; }
.bp-search-side .baladi-search-group__label { margin-bottom: 7px; opacity: 0.6; }
.bp-search-side .baladi-search-group__chips { gap: 6px; }
html body .bp-search-side button.baladi-search-chip { background: #fff !important; color: #2E201A !important; border-color: rgba(46, 32, 26, 0.16) !important; }
html body .bp-search-side button.baladi-search-chip:hover { border-color: rgba(46, 32, 26, 0.5) !important; }
html body .bp-search-side button.baladi-search-chip.is-on { background: #2E201A !important; border-color: #2E201A !important; color: #fff !important; }
.bp-search-side .baladi-search-panel__foot { border: 0; margin-top: 18px; padding-top: 0; }
html body .bp-search-side button.baladi-search-clear { background: transparent !important; color: #2E201A !important; }
.baladi-search-panel.bp-full .baladi-search-results { display: none !important; }
.bp-search-ftoggle { display: none; }

/* Results */
.bp-search-bar {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	min-height: 22px;
	margin: 0 0 18px;
}
.bp-search-count { font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: #8C7B70; }
html[dir="rtl"] .bp-search-count { font-size: 14px; letter-spacing: 0; }
.bp-search-bar .baladi-search-all { margin: 0; font-size: 13px; color: #2E201A; text-decoration: underline; text-underline-offset: 3px; }
.bp-search-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 34px 22px;
	transition: opacity 0.2s ease;
}
.bp-search-main.is-loading .bp-search-grid { opacity: 0.45; }
a.bp-sr-card { display: block; color: #2E201A !important; text-decoration: none !important; }
.bp-sr-card__img {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 2px;
	background: #EFE8E1;
}
.bp-sr-card__img img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	transition: transform 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.bp-sr-card:hover .bp-sr-card__img img { transform: scale(1.04); }
.bp-sr-card:focus-visible { outline: 2px solid #2E201A; outline-offset: 4px; }
.bp-sr-card__name { display: block; margin-top: 11px; font-size: 14.5px; line-height: 1.35; }
.bp-sr-card__price { display: block; margin-top: 4px; font-size: 13.5px; color: #8C7B70; }
.bp-sr-card__price del { display: none; }
.bp-sr-card__price ins { text-decoration: none; }
.bp-sr-card.is-skel .bp-sr-card__img { background: linear-gradient(100deg, #EFE8E1 40%, #F6F1EC 50%, #EFE8E1 60%) 0 0 / 200% 100%; animation: bpSkel 1.2s linear infinite; }
.bp-sr-card.is-skel .bp-sr-card__name { height: 12px; width: 70%; background: #EFE8E1; border-radius: 2px; }
@keyframes bpSkel { to { background-position: -200% 0; } }
.bp-search-msg { padding: 56px 0; text-align: center; font-size: 16px; color: #8C7B70; }

/* Mobile: one scrolling column; filters fold behind a button. */
@media (max-width: 767px) {
	.baladi-search-panel.bp-full .baladi-search-panel__head { padding: 12px 12px 10px 16px; gap: 10px; }
	html[dir="rtl"] .baladi-search-panel.bp-full .baladi-search-panel__head { padding: 12px 16px 10px 12px; }
	.baladi-search-panel.bp-full .baladi-search-panel__icon { width: 20px; height: 20px; }
	html body .baladi-search-panel.bp-full input.baladi-search-input { font-size: 20px !important; padding: 8px 0 !important; }
	html body .baladi-search-panel.bp-full button.baladi-search-close { width: 42px; height: 42px; font-size: 28px !important; }
	.bp-search-body {
		display: block;
		padding: 4px 16px 0;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
	}
	.bp-search-side,
	.bp-search-main { overflow: visible; padding: 0; }
	.bp-search-main { padding-bottom: calc(40px + env(safe-area-inset-bottom, 0px)); }
	.bp-search-side .baladi-search-panel__mood { flex-wrap: nowrap; gap: 6px; }
	.bp-search-side .baladi-search-mood { flex: 1 1 auto; font-size: 16px; padding: 9px 11px; }
	html body .bp-search-side button.baladi-search-ask { flex: none; }
	.bp-search-ftoggle {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		margin: 14px 0 0;
		padding: 9px 14px !important;
		font: inherit;
		font-size: 14px !important;
		line-height: 1;
		color: #2E201A !important;
		background: #fff !important;
		border: 1px solid rgba(46, 32, 26, 0.2) !important;
		border-radius: 999px !important;
		box-shadow: none !important;
	}
	.bp-search-ftoggle::after { content: ""; width: 6px; height: 6px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: translateY(-2px) rotate(45deg); transition: transform 0.2s ease; }
	.bp-search-side.is-filters .bp-search-ftoggle::after { transform: translateY(1px) rotate(-135deg); }
	.bp-search-side .baladi-search-panel__facets,
	.bp-search-side .baladi-search-panel__foot { display: none; }
	.bp-search-side.is-filters .baladi-search-panel__facets { display: block; margin-top: 14px; }
	.bp-search-side.is-filters .baladi-search-panel__foot { display: flex; }
	.bp-search-bar { margin: 20px 0 14px; }
	.bp-search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 12px; }
	.bp-sr-card__name { font-size: 14px; margin-top: 8px; }
	.bp-sr-card__price { font-size: 13px; }
}

/* Cart: bigger tap targets for the product name and the remove button
   (QA measured 18px and 24px). */
.wc-block-cart-item__wrap a.wc-block-components-product-name { display: inline-block; padding-block: 5px; }
html body button.wc-block-cart-item__remove-link { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; min-height: 32px; }
